linuxÆô¶¯¹ý³Ì
±¾Ô´´ÎÄÕÂÊôÓÚ¡¶Linux´óÅï¡·²©¿Í£¬²©¿ÍµØÖ·Îªhttp://roclinux.cn¡£ÎÄÕÂ×÷ÕßΪrocrocket¡£
ΪÁË·ÀÖ¹Ä³Ð©ÍøÕ¾µÄ¶ñÐÔ×ªÔØ£¬ÌØÔÚÿƪÎÄÕÂǰ¼ÓÈë´ËÐÅÏ¢£¬»¹Íû¶ÁÕßÌåÁ¡£
===
[ÕýÎÄ¿ªÊ¼]
Æô¶¯µÚÒ»²½££¼ÓÔØBIOS
µ±
Äã´ò¿ª¼ÆËã»úµçÔ´£¬¼ÆËã»ú»áÊ×ÏȼÓÔØBIOSÐÅÏ¢£¬BIOSÐÅÏ¢ÊÇÈç´ËµÄÖØÒª£¬ÒÔÖÁÓÚ¼ÆËã»ú±ØÐëÔÚ×ʼ¾ÍÕÒµ½Ëü¡£ÕâÊÇÒòΪBIOSÖаüº¬ÁËCPUµÄÏà¹Ø
ÐÅÏ¢¡¢É豸Æô¶¯Ë³ÐòÐÅÏ¢¡¢Ó²ÅÌÐÅÏ¢¡¢ÄÚ´æÐÅÏ¢¡¢Ê±ÖÓÐÅÏ¢¡¢PnPÌØÐԵȵȡ£ÔÚ´ËÖ®ºó£¬¼ÆËã»úÐÄÀï¾ÍÓÐÆ×ÁË£¬ÖªµÀÓ¦¸ÃÈ¥¶ÁÈ¡ÄĸöÓ²¼þÉ豸ÁË¡£
Æô¶¯µÚ¶þ²½££¶ÁÈ¡MBR
ÖÚËùÖÜÖª£¬Ó²ÅÌÉϵÚ0´ÅµÀµÚÒ»¸öÉÈÇø±»³ÆÎªMBR£¬Ò²¾ÍÊÇMaster Boot Record£¬¼´Ö÷Òýµ¼¼Ç¼£¬ËüµÄ´óСÊÇ512×Ö½Ú£¬±ð¿´µØ·½²»´ó£¬¿ÉÀïÃæÈ´´æ·ÅÁËÔ¤Æô¶¯ÐÅÏ¢¡¢·ÖÇø±íÐÅÏ¢¡£
ϵͳÕÒµ½BIOSËùÖ¸¶¨µÄÓ²Å̵ÄMBRºó£¬¾Í»á½«Æä¸´ÖƵ½0×7c00µØÖ·ËùÔÚµÄÎïÀíÄÚ´æÖС£Æäʵ±»¸´ÖƵ½ÎïÀíÄÚ´æµÄÄÚÈݾÍÊÇBoot Loader£¬¶ø¾ßÌåµ½ÄãµÄµçÄÔ£¬ÄǾÍÊÇlilo»òÕßgrubÁË¡£
Æô¶¯µÚÈý²½££Boot Loader
Boot Loader ¾ÍÊÇÔÚ²Ù×÷ϵͳÄÚºËÔËÐÐ֮ǰÔËÐеÄÒ»¶ÎС³ÌÐò¡£Í¨¹ýÕâ¶ÎС³ÌÐò£¬ÎÒÃÇ¿ÉÒÔ³õʼ»¯Ó²¼þÉ豸¡¢½¨Á¢ÄÚ´æ¿Õ¼äµÄÓ³Éäͼ£¬´Ó¶ø½«ÏµÍ³µÄÈíÓ²¼þ»·¾³´øµ½Ò»¸öºÏÊʵÄ״̬£¬ÒÔ±ãΪ×îÖÕµ÷ÓòÙ×÷ϵͳÄÚºË×öºÃÒ»ÇÐ×¼±¸¡£
Boot LoaderÓÐÈô¸ÉÖÖ£¬ÆäÖÐGrub¡¢LiloºÍspfdiskÊdz£¼ûµÄLoader¡£
ÎÒÃÇÒÔGrubΪÀýÀ´½²½â°É£¬±Ï¾¹ÓÃliloºÍspfdiskµÄÈ˲¢²»¶à¡£
ϵͳ¶ÁÈ¡ÄÚ´æÖеÄgrubÅäÖÃÐÅÏ¢£¨Ò»°ãΪmenu.lst»ògrub.lst£©£¬²¢ÒÀÕÕ´ËÅäÖÃÐÅÏ¢À´Æô¶¯²»Í¬µÄ²Ù×÷ϵͳ¡£
Æô¶¯µÚËIJ½££¼ÓÔØÄÚºË
¸ù¾ÝgrubÉ趨µÄÄÚºËÓ³ÏñËùÔÚ·¾¶£¬ÏµÍ³¶ÁÈ¡ÄÚ´æÓ³Ïñ£¬²¢½øÐнâѹËõ²Ù×÷¡£´Ëʱ£¬ÆÁĻһ°ã»áÊä³ö“Uncompressing Linux”µÄÌáʾ¡£µ±½âѹËõÄÚºËÍê³Éºó£¬ÆÁÄ»Êä³ö“OK, booting the kernel”¡£
ϵͳ½«½âѹºóµÄÄں˷ÅÖÃÔÚÄÚ´æÖ®ÖУ¬²¢µ÷ÓÃstart_kernel()º¯ÊýÀ´Æô¶¯Ò»ÏµÁеijõʼ»¯º¯Êý²¢³õʼ»¯¸÷ÖÖÉ豸£¬Íê³ÉLinuxºËÐÄ»·¾³µÄ½¨Á¢¡£ÖÁ´Ë£¬LinuxÄÚºËÒѾ½¨Á¢ÆðÀ´ÁË£¬»ùÓÚLinuxµÄ³ÌÐòÓ¦¸Ã¿ÉÒÔÕý³£ÔËÐÐÁË¡£
Æô¶¯µÚÎå²½££Óû§²ãinitÒÀ¾ÝinittabÎļþÀ´É趨ÔËÐеȼ¶
Äں˱»¼ÓÔØºó£¬µÚÒ»¸öÔËÐеijÌÐò±ãÊÇ/sbin/init£¬¸ÃÎļþ»á¶ÁÈ¡/etc/inittabÎļþ£¬²¢ÒÀ¾Ý´ËÎļþÀ´½øÐгõʼ»¯¹¤×÷¡£
Æäʵ/etc/inittabÎļþ×îÖ÷ÒªµÄ×÷ÓþÍÊÇÉ趨LinuxµÄÔËÐеȼ¶£¬ÆäÉ趨ÐÎʽÊÇ“£ºid:5:initdefault:”£¬Õâ¾Í±íÃ÷LinuxÐèÒªÔËÐÐÔڵȼ¶5ÉÏ¡£LinuxµÄÔËÐеȼ¶É趨ÈçÏ£º
0£º¹Ø»ú
Ïà¹ØÎĵµ£º
×·¸ù¾¿µ× http://blog.csdn.net/cataol/ cataol@hotmail.com »¶Ó×ªÔØ£¬µ«Çë±£Áô×÷ÕßÐÅÏ¢ ÕâÁ½ÌìÔÚѧϰLinuxÇý¶¯Ïà¹ØµÄ×ÊÁÏ£¬ÔÚÕâÀï×öÒ»ÏÂѧϰ±Ê¼Ç£¬ÒÔ±ãÒÔºó²éѯ¡£ÒÔǰҲÓÐ×ö¹ý¹¤×÷·½ÃæµÄ֪ʶÕûÀí£¬¿ÉϧÔÚÓ²ÅÌÀïÁãÁãɢɢ£¬ÉõÖÁÓÐЩ¶¼±»É¾µôÁË£¬°¦¡£ & ......
Ò»¡¢´ÓÄÄÀïµ½ÄÄÀï
±¾ÎÄÖ¼ÔÚÃèÊölinuxÖÐÄÚºËÈçºÎµ÷ÓÃÆô¶¯£¬È»ºóÈçºÎ´ÓimgµÄÎļþϵͳÇл»µ½Ó²Å̵Ĺý³Ì¡£
ÃèÊöÆðÓÚ£ºlinux-2.6.11/init/main.cÖк¯Êý static int init(void * unused)
ÃèÊöÖ¹ÓÚ£º/etc/rc.d/rc.sysinitÎļþµÄ±»µ÷ÓÃ
¶þ¡¢ÃèдÁ÷³Ì
ÔÚlinux´úÂëlinux-2.6.11/init/main.cÖÐinitÕâ¸öº¯Êý±»µ÷ÓÃʱ£¬³ ......
ÍøÂçÐÅÏ¢²é¿´
²é¿´ÍøÂ·½Ó¿ÚÐÅÏ¢
1£®Á˽âlinuxÖеÄÍøÂç½Ó¿ÚÉ豸
$/sbin/ifconfig ²é¿´ËùÓÐ»î¶¯ÍøÂç½Ó¿ÚÐÅÏ¢£¬ÆäÖаüÀ¨Ò»¸ölo»·»Ø¶Ë¿Ú¡£
2£®²é¿´Ö¸¶¨ÍøÂç½Ó¿ÚµÄÐÅÏ¢
$/sbin/ ......
ÔÚÉÏһƪÎÄÕÂÖжÔÏ߳̽øÐÐÁ˼òµ¥µÄ¸ÅÊö£¬ËüÔÚϵͳÖкͱà³ÌµÄÓ¦ÓÃÖУ¬°çÑݵĽÇÉ«ÊDz»ÑÔ¶øÓ÷µÄ¡£Ñ§Ï°Ëü¡¢ÕÆÎÕËü¡¢³Ô͸ËüÊÇ×÷Ϊһ¸ö³ÌÐòÔ±µÄ±ØÐë×÷Ϊ¡£ÔÚ½ÓÏÂÀ´µÄ½²ÊöÖУ¬ËùÓÐÏ̵߳IJÙ×÷¶¼ÊÇÓû§¼¶µÄ²Ù×÷¡£ÔÚLINUXÖУ¬Ò»°ãpthreadÏ߳̿âÊÇÒ»Ì×ͨÓõÄÏ߳̿⣬ÊÇÓÉPOSIXÌá³öµÄ£¬Òò´ËËûµÄÒÆÖ²ÐÔÊǷdz£ºÃµÄ¡£
& ......
ÔÚÉÏһƪÎÄÕÂÖУ¬½éÉÜÁËÏ̵߳Ĵ´½¨ºÍÍ˳ö£¬ÒÔ¼°Ïà¹Øº¯ÊýµÄʹÓá£ÆäÖÐpthread_createº¯ÊýµÄµÚ¶þ¸ö²ÎÊý£¬ÊǹØÓÚÏß³ÌÊôÐÔµÄÉèÖã¬ÕâÒ²ÊǽñÌìËùÓн²ÊöµÄ¡£ÕâЩÊôÐÔÖ÷Òª°üÀ¨°î¶¨ÊôÐÔ¡¢·ÖÀëÊôÐÔ¡¢¶ÑÕ»µØÖ·¡¢¶ÑÕ»´óС¡¢ÓÅÏȼ¶¡£ÆäÖÐϵͳĬÈϵÄÊǷǰ¡¢·Ç·ÖÀ롢ȱʡ1MµÄ¶ÑÕ»¡¢Ó븸½ø³ÌͬÑù¼¶±ðµÄÓÅÏȼ¶¡£ÔÚpthread_createÖÐ ......