Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

linux 2.6Ô´´úÂëÇé¾°·ÖÎö±Ê¼ÇÖ®ÖжÏÓëÒì³£2

¸ß¼¶¿É±à³Ì¿ØÖÆÆ÷
Èç¹ûϵͳֻÓÐÒ»¸öcpu£¬Ö÷picÊä³öÏßÒÔÖ±½ØÁ˵±µÄ·½Ê½Á¬½Óµ½cpuµÄintrÒý½Å¡£Èç¹ûϵͳÖаüº¬Á½¸ö»ò¶à¸öcpu,¾ÍÐèÒª¸ü¼Ó¸´ÔÓµÄpic.
intel´Óp3¿ªÊ¼ÒýÈëi/o¸ß¼¶¿É±ä³É¿ØÖÆÆ÷£¨APIC£©×é¼þ¡£80x86΢´¦ÀíÆ÷µ±Ç°ËùÓеÄcpu¶¼º¬ÓÐÒ»¸ö±¾µØapic¡£Ã¿¸ö±¾µØapic¶¼ÓÐ32λ¼Ä´æÆ÷£¬Ò»¸öÄÚ²¿Ê±ÖÓ£¬Ò»¸ö±¾µØ¶¨ÊÇÉ豸ÒÔ¼°Îª±¾µØapicÖжϱ£ÁôµÄÁ½Ìõ¶îÍâµÄirqÏßlint0ºÍlint1¡£ËùÓб¾µØapic¶¼Á¬½Óµ½Ò»¸öÍⲿi/o apic£¬ÐγÉÒ»¸ö¶àapicϵͳ¡£
i/o apicµÄ×é³É£ºÒ»×é24ÌõirqÏߣ¬Ò»ÕÅ24ÏîµÄÖж϶¨Ïò±í£¨interrupt redirection table£©£¬¿É±à³Ì¼Ä´æÆ÷£¬ÒÔ¼°Í¨¹ýapic×ÜÏß·¢ËͺͽÓÊÕapicÐÅÏ¢µÄÒ»¸öÐÅÏ¢µ¥Ôª£¬ÖжÏÓÅÏȼ¶²¢²»ÓëÒý½ÅºÅÏà¹ØÁª£ºÖжÏÖØ¶¨Ïò±íÖеÄÿһÏî¶¼¿ÉÒÔ±»µ¥¶À±ä³ÉÒÔÖ¸Ã÷ÖжÏÏòÁ¿ºÍÓÅÏȼ¶£¬Ä¿±ê´¦ÀíÆ÷ÒÔ¼°Ñ¡Ôñ´¦ÀíÆ÷µÄ·½Ê½¡£Öض¨Ïò±íÖеÄÐÅÏ¢ÓÃÓÚ°Ñÿ¸öÍⲿirq ÐźÅת»»ÎªÒ»ÌõÏûÏ¢£¬Í¨¹ýapic×ÜÏß°ÑÏûÏ¢·¢Ë͸øÒ»¸ö»òÕß¶à¸ö±¾µØapicµ¥Ôª¡£
À´×ÔÍⲿӲ¼þÉ豸µÄÖжÏÇëÇóÒÔÁ½ÖÖ·½Ê½ÔÚ¿ÉÓÃcpuÖ®¼ä·Ö·¢£º
1¾²Ì¬·Ö·¢£ºirqÐźŴ«µÝ¸øÖض¨Ïò±íÏàÓ¦ÏîÖÐËùÁгöµÄ±¾µØapic¡£ÖжÏÁ¢¼´´«µÝ¸øÒ»¸öÌØ¶¨µÄcpu£¬»òÕßÒ»×écpu,»òÕßËùÓÐcpu.
2¶¯Ì¬·Ö·¢£ºÈç¹û´¦ÀíÆ÷ÕýÔÚÖ´ÐÐ×îµÍÓÅÏȼ¶µÄ½ø³Ì£¬irqÐźžʹ«µÝ¸øÕâÖÖ´¦ÀíÆ÷µÄ±¾µØapic.
ÿ¸ö±¾µØapic¶¼ÓÐÒ»¸ö¿É±à³ÌÈÎÎñÓÅÏȼ¶¼Ä´æÆ÷£¨task priority register£©trrÓÃÀ´¼ÆË㵱ǰÔËÐнø³ÌµÄÓÅÏȼ¶¡£intelÏ£ÍûÔÚ²Ù×÷ϵͳÄÚºËÖÐͨ¹ýÿ´Î½ø³ÌÇл»¶ÔÕâ¸ö¼Ä´æÆ÷½øÐÐÐ޸ġ£
Èç¹ûÁ½¸ö»òÕß¶à¸öcpu¹²Ïí×îµÍÓÅÏȼ¶£¬¾ÍÀûÓÃÖٲü¼ÊõÔÚÕâЩcpuÖ®¼ä·ÖÅ为ºÉ¡£ÔÚ±¾µØapicµÄÖÙ²ÃÓÅÏȼ¶¼Ä´æÆ÷ÖУ¬¸øÃ¿¸öcpu¶¼·ÖÅäÒ»¸ö0£­15·¶Î§ÄÚµÄÊýÖµ¡£
ÿµ±Öжϴ«µÝ¸øÒ»¸öcpuʱ£¬ÆäÏàÓ¦µÄÖÙ²ÃÓÅÏȼ¶¾Í×Ô¶¯ÉèÖÃΪ0£¬¶øÆäËûÿ¸öcpuµÄÖÙ²ÃÓÅÏȼ¶¶¼Ôö¼Ó1.µ±ÖÙ²ÃÓÅÏȼ¶¼Ä´æÆ÷´óÓÚ15ʱ£¬¾Í°ÑËüÉèÖÃΪ»ñʤcpuµÄǰһ¸öÖÙ²ÃÓÅÏȼ¶¼Ó1.Òò´Ë£¬ÖжÏÒÔÂÖת·½Ê½ÔÚcpuÖ®¼ä·Ö·¢£¬ÇÒ¾ßÓÐÏàͬµÄÈÎÎñÓÅÏȼ¶¡£
³ýÁËÔÚ´¦ÀíÆ÷Ö®¼ä·Ö·¢ÖжÏÍ⣬¶àapicϵͳ»¹ÔÊÐícpu²úÉú´¦ÀíÆ÷¼äÖжϡ£µ±Ò»¸öcpuÏ£Íû°ÑÖжϷ¢¸øÁíÒ»¸öcpuʱ£¬¾ÍÔÚ×Ô¼º±¾µØapicµÄÖжÏÖ¸Áî¼Ä´æÆ÷£¨interrupt command register,ICR£©Öдæ·ÅÕâ¸öÖжÏÏòÁ¿ºÍÄ¿±ê±¾µØ APIC±êʶ·û¡£È»ºóͨ¹ýapic×ÜÏßÏòÄ¿±ê±¾µØapic·¢ËÍÒ»ÌõÏûÏ¢£¬´Ó¶øÏò×Ô¼ºµÄcpu·¢³öÒ»¸öÏàÓ¦µÄÖжϡ£
Òì³££º80x86΢´¦ÀíÆ÷·¢²¼ÁË´óÔ¼20ÖÖ²»Í¬µÄÒì³£¡£Äں˱ØÐëΪÿÖÖÒì³£Ìṩһ¸öרÃŵÄÒì³£´¦Àí³ÌÐò¡£
ÖжÏÏòÁ¿±í£¨interrupt descriptor table IDT£©ÊÇÒ»¸ö


Ïà¹ØÎĵµ£º

²é¿´ºÍÆô¶¯linuxµÄ·þÎñ£¬È磺nfs

Æô¶¯94,95µÄnfs·þÎñ
·½·¨Ò»:µ½/etc/init.d/ÖÐÔËÐÐ ./nfs start
       µ½/etc/rc.d/rc3.d²ì¿´¿ØÖÆÌ¨·þÎñ(K×Öĸ¿ªÍ·µÄ»°ÎªÎ´Æô¶¯,SΪÆô¶¯,Ö±½Ó¸ÄÃû×ÖÒ²¿ÉÒÔ½«·þÎñÆô¶¯)
·½·¨¶þ:´òÃüÁîsetup,½«System serviceÖеÄnfs´ò¹´,È»ºóÍ˳ö ......

linuxÄں˺¯Êý±Ê¼Ç(¶þ)

ÐźÅÖ¸¶¨´¦Àíº¯Êý
void (*signal (int signum,void (*handle)(int)))(int);ÉèÖÃij¸öÐźŵĴ¦Àí·½·¨
int sigaction(int signum,const struct sigaction *act,struct sigaction *oldact);ÓÃÓÚ¼ì²é»ò¸Ä±ä½ø³ÌÔÚ½Óµ½ÐźÅʱµÄ¶¯×÷
Ðźż¯²Ù×÷º¯Êý
static inline void sigaddset(sigset_t *set,int _sig);
static inline voi ......

Linuxϵͳ¸÷°æ±¾±¾µØrootÃÜÂëÆÆ½â·½·¨ÕûÀí


¡¡¡¡Õâ¶Îʱ¼äÀÏÅöµ½ÓÐÈËÎʼ°¸÷¸öLinux°æ±¾µÄ±¾µØrootÃÜÂëÆÆ½â·½·¨£¬ÎÒÕâÀï×Ô¼ºÒÔ¼°ÔÚÍøÂçÉÏËѼ¯ÁËЩ×ÊÁÏ£¬Ï£Íû¶Ô¿´µ½ÁËÕâÎÄÕ¶øÓÖÇ¡ºÃÓõõ½µÄ¼¼ÊõÈËÔ±Óеã°ïÖú£º
(Ò»)RedHat/CentOS/Fedora ϵͳÃÜÂëÆÆ½â
¡¡¡¡1.ÔÚgrubÑ¡Ïî²Ëµ¥°´E½øÈë±à¼­Ä£Ê½
¡¡¡¡2.±à¼­kernel ÄÇÐÐ×îºó¼ÓÉϿոñS (»òÕ߿ոñSingle)
¡¡¡¡3.°´B£¬Æô¶¯µ ......

Linux²Ù×÷ϵͳÄÚºËARPµÄÉè¼ÆÊµÏÖ¸ÅÊö

ARP (Address Resolution Protocol) ÊÇÓÃÀ´°ÑIPµØÖ·×ª»¯³É»úÆ÷µÄÍø¿¨ÎïÀíµØÖ·£¨Ó²¼þµØÖ·£©¡£µ±Ò»Ì¨»úÆ÷ÒªÏòÁíÍâһ̨ÎïÀíÉÏÏàÁ¬µÄ»úÆ÷·¢ËÍIP°üµÄʱºò£¬ËüÒªÏȼì²éÒ»ÏÂ×Ô¼ºµÄARP»º´æ£¬ÊÔͼÕÒµ½¶Ô·½µÄÓ²¼þµØÖ·£¬Èç¹ûÕÒ²»µ½µÄ»°£¬°ÑÒª·¢Ë͵ÄIP°ü·ÅÈëµÈ´ý¶ÓÁÐÖУ¬½Ó×Å·¢³öÒ»¸öARPÇëÇ󡣵ȵ½ÊÕµ½ARPÓ¦´ðµÄʱºò£¬¹¹ÔìºÃÔ­À´ÕýÔڵȴ ......

WinCE EbootÖмÓÈëLinux bootµÄÖ§³Ö

Index: flash.c
===================================================================
--- flash.c    (revision 1804)
+++ flash.c    (working copy)
@@ -26,6 +26,8 @@
#include "ebootnand.h"
#include "ll_nand.h"
#includ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ