linux Äں˹¹³É
ºÍÆäËû²Ù×÷ϵͳһÑù£¬Linux°üº¬½ø³Ìµ÷¶ÈÓë½ø³Ì¼äͨÐÅ(IPC)¡¢ÄÚ´æ¹ÜÀí(MMU)¡¢ÐéÄâÎļþϵͳ(VFS)¡¢ÍøÂç½Ó¿ÚµÈ£¬ÏÂͼ¸ø³öÁËLinuxµÄ×é³É¼°Æä¹ØÏµ£º
LinuxÄÚºËÔ´´úÂë°üÀ¨¶à¸öĿ¼£º
¡¡¡¡£¨1£©arch£º°üÀ¨Ó²¼þÌØ¶¨µÄÄں˴úÂ룬Èçarm¡¢mips¡¢i386µÈ£»
¡¡¡¡£¨2£©drivers£º°üº¬Ó²¼þÇý¶¯´úÂ룬Èçchar¡¢cdrom¡¢scsi¡¢mtdµÈ£»
¡¡¡¡£¨3£©include£ºÍ¨ÓÃÍ·Îļþ¼°Õë¶Ô²»Í¬Æ½Ì¨Ìض¨µÄÍ·Îļþ£¬Èçasm-i386¡¢asm-armµÈ£»
¡¡¡¡£¨4£©init£ºÄں˳õʼ»¯´úÂ룻
¡¡¡¡£¨5£©ipc£º½ø³Ì¼äͨÐÅ´úÂ룻
¡¡¡¡£¨6£©kernel£ºÄں˺ËÐÄ´úÂ룻
¡¡¡¡£¨7£©mm£ºÄÚ´æ¹ÜÀí´úÂ룻
¡¡¡¡£¨8£©net£ºÓëÍøÂçÐÒéÕ»Ïà¹ØµÄ´úÂ룬Èçipv4¡¢ipv6¡¢ethernetµÈ£»
¡¡¡¡£¨9£©fs£ºÎļþϵͳÏà¹Ø´úÂ룬Èçnfs¡¢vfatµÈ£»
¡¡¡¡£¨10£©lib£º¿âÎļþ£¬ÓëÆ½Ì¨Î޹صÄstrlen¡¢strcpyµÈ£¬ÈçÔÚstring.cÖаüº¬£º
char * strcpy(char * dest,const char *src)
{
¡¡¡¡¡¡ char *tmp = dest;
¡¡¡¡
¡¡¡¡¡¡ while ((*dest++ = *src++) != '')
¡¡¡¡¡¡¡¡¡¡¡¡¡¡/* nothing */;
¡¡¡¡¡¡ return tmp;
}
£¨11£©Documentation£ºÎĵµ¡£
¡¡¡¡ ÔÚLinuxÄں˵ÄʵÏÖÖУ¬ÓÐһЩÊý¾Ý½á¹¹Ê¹Ó÷dz£Æµ·±£¬¶ÔÑжÁÄں˵ÄÈËÀ´ËµÖÁΪ¹Ø¼ü£¬ËüÃÇÊÇ£º
¡¡¡¡ 1.task_struct
¡¡¡¡ LinuxÄÚºËÀûÓÃtask_structÊý¾Ý½á¹¹´ú±íÒ»¸ö½ø³Ì£¬ÓÃtask_structÖ¸ÕëÐγÉÒ»¸ötaskÊý×é¡£µ±½¨Á¢Ð½ø³ÌµÄʱºò£¬LinuxΪеĽø³Ì·ÖÅäÒ»¸ötask_struct½á¹¹£¬È»ºó½«Ö¸Õë±£´æÔÚtaskÊý×éÖС£µ÷¶È³ÌÐòά»¤currentÖ¸Õ룬ËüÖ¸Ïòµ±Ç°ÕýÔÚÔËÐеĽø³Ì¡£
¡¡¡¡ 2.mm_struct
¡¡¡¡ ÿ¸ö½ø³ÌµÄÐéÄâÄÚ´æÓÉmm_struct½á¹¹´ú±í¡£¸Ã½á¹¹Öаüº¬ÁËÒ»×éÖ¸Ïòvm-area_struct½á¹¹µÄÖ¸Õ룬vm-area_struct½á¹¹ÃèÊöÁËÐéÄâÄÚ´æµÄÒ»¸öÇøÓò¡£
Ïà¹ØÎĵµ£º
Ò» ÈýÖÖÀàÐ͵ÄÌ×½Ó×Ö£º
1.Á÷ʽÌ×½Ó×Ö£¨SOCKET_STREAM)
Ìá¹©ÃæÏòÁ¬½ÓµÄ¿É¿¿µÄÊý¾Ý´«Êä·þÎñ¡£Êý¾Ý±»¿´×÷ÊÇ×Ö½ÚÁ÷£¬ÎÞ³¤¶ÈÏÞÖÆ¡£ÀýÈçFTPÐÒé¾Í²ÉÓÃÕâÖÖ¡£
2.Êý¾Ý±¨Ê½Ì×½Ó×Ö£¨SOCKET_DGRAM£©
ÌṩÎÞÁ¬½ÓµÄÊý¾Ý´«Êä·þÎñ£¬²»±£Ö¤¿É¿¿ÐÔ¡£
3.ÔʼʽÌ×½Ó×Ö£¨SOCKET_RAW£©
......
Ò»¡¢LinuxÄÚºËÄ£¿éµÄ¹ÜÀí
1¡¢lsmod ÁмÓÒÔ¹ÒÔØµÄÄÚºËÄ£¿é£»
lsmod ÊÇÁгöĿǰϵͳÖÐÒѼÓÔØµÄÄ£¿éµÄÃû³Æ¼°´óСµÈ£»ÁíÍâÎÒÃÇ»¹¿ÉÒԲ鿴 /proc/modules £¬ÎÒÃÇÒ»Ñù¿ÉÒÔÖªµÀϵͳÒѾ¼ÓÔØµÄÄ£¿é£»
´úÂë:
[root@localhost beinan]# lsmod
2¡¢modinfo ²é¿´Ä£¿éÐÅÏ¢£»
modinfo ¿ÉÒԲ鿴ģ¿éµ ......
¡¾×ª¡¿LinuxÐéÄâ»úÏÂÈçºÎ¹²ÏíADSL²¦ºÅÉÏÍø
2010-01-20 11:55
½ñÌìÔÚvmwareÉÏ×°ÁËÒ»¸öRed Hat Enterprise Linux 5£¬×°ºÃÖ®ºó£¬ÎÒÏëÔÚÐéÄâ»úÉϹ²ÏíÎÒµÄadsl²¦ºÅÉÏÍø£¬ÉèÖùý³ÌÈçÏÂ:
¡¡¡¡1. ÏÈÔÚadslÁ¬½ÓÊôÐÔÉÏÔÊÐí¹²ÏíInternetÁ¬½Ó:
¡¡¡¡2.ÕâÑù×öºó»áµ¯³öÒ»¸ö¶Ô»°¿ò£¬¸æËßÄã»á°Ñ±¾µØÁ¬½ÓµÄipµØ ......
¹þÏ£±í£¨Hashtable£©ÓÖ³ÆÎª“É¢ÖÔ£¬HashtableÊÇ»á¸ù¾ÝË÷Òý¼üµÄ¹þÏ£³ÌÐò´úÂë×éÖ¯³ÉµÄË÷Òý¼ü£¨Key£©ºÍÖµ£¨Value£©Åä¶ÔµÄ¼¯ºÏ¡£Hashtable ¶ÔÏóÊÇÓɰüº¬¼¯ºÏÖÐÔªËØµÄ¹þϣͰ£¨Bucket£©Ëù×é³ÉµÄ¡£¶øBucketÊÇHashtableÄÚÔªËØµÄÐéÄâ×ÓȺ×飬¿ÉÒÔÈô󲿷ּ¯ºÏÖеÄËÑѰºÍ»ñÈ¡¹¤×÷¸üÈÝÒס¢¸ü¿ìËÙ¡£
¹þÏ£º¯ ......
ÔÚLinux 2.6ÄÚºËÖУ¬devfs±»ÈÏΪÊǹýʱµÄ·½·¨£¬²¢×îÖÕ±»Åׯú£¬udevÈ¡´úÁËËü¡£DevfsµÄÒ»¸öºÜÖØÒªµÄÌØµã¾ÍÊÇ¿ÉÒÔ¶¯Ì¬´´½¨É豸½áµã¡£ÄÇÎÒÃÇÏÖÔÚÈçºÎͨ¹ýudevºÍsysÎļþϵͳ¶¯Ì¬´´½¨É豸½áµãÄØ£¿
ÓÃudevÔÚ/dev/϶¯Ì¬Éú³ÉÉ豸Îļþ£¬ÕâÑùÓû§¾Í²»ÓÃÊÖ¹¤µ÷ÓÃmknodÁË¡£
ÀûÓõÄkernel API£º
&nb ......