Linux¿ª»úÁ÷³Ì ¶ÁÊé±Ê¼Ç
Linux¿ª»úÁ÷³Ì--¶ÁÊé±Ê¼Ç
˵Ã÷£ºÎªÁËѧϰLinuxµÄ¿ª»úÁ÷³Ì£¬ÔÚÍøÂçÉϲ鿴Á˺ܶàÎÄÕ£¬¾õµÃÉÔÓÐÁìÎò£¬±ãÏëдµã¶«Î÷³öÀ´£¬ÒÔ·À½«À´ÍüÈ´¡£µ«ÕæÕýҪдʱȴÓÖ¾õµÃÍøÉϵÄÎÄÕ°ѸÃдµÄ¶¼Ð´ÁË£¬×Ô¼ºÔÙҲд²»³öʲôÁË¡£ÍøÉÏÓÐһλ½Ð"Äñ¸ç"ͬ°ûµÄÎÄÕ½²µÄÌØ±ðÈ«Ãæ£¬Ë¼Â·Ò²ºÜÇåÎú¡£ÔÚÕâ¶ùÎÒ²»¹ÜЩʲô¶¼ÄÑÃâÓгϮµÄÏÓÒÉ£¬¾ÍÎÒÏÖÔÚµÄˮƽ£¬ÏëÒª´´ÐÂÒ²ºÜÄÑ£¬¼ÈÈ»ÄÑÓд´Ð£¬ÄǾÍË÷ÐÔµ±×÷±Ê¼Ç°É£¬¸ù¾ÝÄñ¸çµÄÎÄÕÂÕâ¶ù¼òµ¥µÄ¼Ç¼һµãlinux¿ª»úµÄÁ÷³Ì¡£°Ñ“Äñ¸ç”µÄ¸öÈËÍøÕ¾Á´½ÓÔÚ´Ë£¬Ï£ÍûÏëÒªÁ˽⿪»úÁ÷³ÌµÄÅóÓÑÖ±½ÓÈ¥ËûÄǶù¿´£¬ÒÔÃâÔÚÕâ¶ùÀË·Ñʱ¼ä¡£
Äñ¸çµÄ¸öÈËÍøÖ·(Äñ¸çµÄLinux˽·¿²Ë)£ºhttp://linux.vbird.org/
Äñ¸çµÄLinux˽·¿²Ë--Ö®Linux¿ª»úÁ÷³Ì£ºhttp://linux.vbird.org/linux_basic/0510osloader.php#startup_loader
µ±¿ª»ú¼ü°´Ïº󣬵çÄÔÓ²¼þ»á×Ô¶¯ÔØÈëBIOS(Basic Input Output System)£¬È»ºóͨ¹ýBIOSÔØÈëCMOS(±£´æ¼ÆËã»ú»ù±¾Æô¶¯ÐÅÏ¢(ÈçÈÕÆÚ¡¢Ê±¼ä¡¢Æô¶¯ÉèÖõÈ)µÄROM
оƬ)ÐÅÏ¢£¬Í¨¹ýCMOS¶ÁȡӲ¼þÉèÖÃÐÅÏ¢¡£×öÍêÕâЩBIOS»¹»á½øÐпª»ú×ÔÎÒ²âÊÔ(Power-on Self Test)£¬È»ºó½øÐÐÓ²¼þ¼ì²âµÄ³õʼ»¯£¬²¢ÉèÖÃpnp×°ÖÃ(plug and play£ºËæ²å¼´ÓÃ×°ÖÃ),×îºó»¹»á¶¨Òå¿É¿ª»úµÄ×°ÖÃ˳Ðò¡£È»ºóϵͳ»á×Ô¶¯¶ÁÈ¡µÚÒ»¸ö¿É¿ª»úµÄ×°Öã¨Õâ¸ö×°ÖÃÓÉBIOSÀ´É趨£©£¬´Ëʱ£¬¾Í¿ÉÒÔ¶ÁÈ뿪»ú¹ÜÀí³ÌÐòÁË¡£¿ª»ú¹ÜÀí³ÌÐò¿ÉÒÔÖ¸¶¨Ê¹ÓÃÄĸöÄÚºËÀ´¿ª»ú£¬²¢Êµ¼ÊÔØÈëÄں˵½ÄÚ´æÖнøÐнâѹËõ²¢Ö´ÐУ¬´Ëʱ£¬Äں˾ͿÉÒÔÔÚÄÚ´æÖлÁË£¬Äں˻áÕì²âËùÓÐÓ²¼þÐÅÏ¢²¢ÔØÈëÊʵ±µÄÇý¶¯³ÌÐòÀ´Ê¹Õû¸öÖ÷»ú¿ªÊ¼ÔËÐУ¬Õâ¸ö¹ý³ÌÈç¹ûÍêÃÀÍê³É£¬Ò»¸ö²Ù×÷ϵͳ¾ÍÔÚµçÄÔÉÏÔËÐÐÆðÀ´ÁË¡£ÄÚºËÆô¶¯£¬Ö÷»úϵͳ¿ªÊ¼ÔËÐкó£¬Õâ¸öʱºòLinux²Å»áµ÷ÓÃÍⲿ³ÌÐò¿ªÊ¼´î½¨Èí¼þÖ´Ðл·¾³£¬²¢ÔØÈëËùÓÐϵͳÔËÐÐËùÐèµÄÈí¼þ³ÌÐò¡£Íê³ÉÕâ¸ö¹¤×÷£¬Óû§¾Í¿ÉÒԵǼÁË¡£Õû¸ö¹ý³Ì
Ïà¹ØÎĵµ£º
Ò»ÄêÒ»¶ÈµÄLinux¿ª·¢Õß´ó»áÉÏÖÜÔھɽðɽ¾ÙÐУ¬»áÉÏLinux»ù½ð»áÖ´ÐÐÀíÊÂJim Zemlin±íʾ£¬µÃÒæÓÚÔÆ¼ÆËãÒÔ¼°ÆäËü¿Æ¼¼³±Á÷µÄ³öÏÖ£¬LinuxµÄÊг¡µØÎ»Ê®·ÖÎȹ̣¬È»¶øÒ»Ð©Ö÷ÒªµÄά»¤ÈËÔ±ÒѾÈÕ½¥²ÔÀÏ£¬ºó¼ÌÕßÈ´»¹Ã»ÓгÉÊì¡£
sysfsÄÚºË×Óϵͳά»¤ÕßGrey Kroah-HartmanÖ¸³ö£º“ÉϲãµÄÈËÔ±ÈÔȻà ......
ÎÒÕýÔÚѧϰдlinux device driver for embedded system.
ÎÒÓÐÒ»¸ölinuxǶÈëʽÉ豸£¬Ò²ÓÐÕâ¸öÉ豸µÄlinuxÔ´´úÂë¡£Ò²ÓÐcross compiler tool chain.
µÚÒ»²½£¬¾ÍÊÇдһ¸ö¼òµ¥µÄhelloÄ£¿é£¬È»ºó×°µ½É豸ÖС£ÒÔÑéÖ¤ÎÒÕâ¸ö¿ª·¢»·¾³¡£
ÔÚÍøÉÏËÑË÷ÁËһϣ¬ how to cross compile linux device driver
·¢ÏÖÔÚlinux´úÂë¸ùĿ¼µÄMak ......
man¾ÍÊÇmanualµÄËõд£¬ÓÃÀ´²é¿´ÏµÍ³ÖÐ×Ô´øµÄ¸÷Öֲο¼Êֲᡣ
Ò»¡¢ËµÃ÷
1£¬ÊÖ²áÒ³·ÖΪºÃ¼¸¸ö²¿·Ö£¬ÈçÏÂËùʾ£º
1 Executable programs or shell commands
2 System calls (functions provided by the kernel)
3 Library calls (functions within program libraries)
4 Special files (usually found in /dev)
5 File fo ......
linuxÆô¶¯Á÷³Ì£º
ϵͳԤ´¦Àí³ÌÐò->GRUB (´Ë½×¶Î¿ÉÒÔÀí½âΪbootloader½×¶Î)
->kernel (´Ë½×¶ÎΪkernel)
->initrd->initÆô¶¯->inittab->rc.sysinit->functions(PATH)->modules->rcX.d(¶ÁÅäÖÃÎļþ)
1.->×Ö·ûģʽ->tty->bash
2.->ͼÐÎģʽ->½øÈëX Window-> ......
Linux»·¾³ÏµÄÈí¼þ°²×°£¬²¢²»ÊÇÒ»¼þÈÝÒ×µÄÊÂÇ飻Èç¹ûͨ¹ýÔ´´úÂë±àÒëºóÔÚ°²×°£¬µ±È»ÊÂÇé¾Í¸üΪ¸´ÔÓһЩ£»ÏÖÔÚ°²×°¸÷ÖÖÈí¼þµÄ½Ì³Ì¶¼·Ç³£ÆÕ±é£»µ«Íò±ä²»ÀëÆäÖУ¬¶Ô»ù´¡ÖªÊ¶µÄÔúÊµÕÆÎÕ£¬°²×°¸÷ÖÖÈí¼þµÄÎÊÌâ¾ÍÓÈжø½âÁË¡£Configure½Å±¾ÅäÖù¤¾ß¾ÍÊÇ»ù´¡Ö®Ò»£¬ËüÊÇautoconfµÄ¹¤¾ßµÄ»ù±¾Ó¦Óá£
ÓëһЩ¼¼ÇÉÏà±È£¬ConfigureÏԵûù´ ......