ÉîÈëÀí½âlinuxÆô¶¯¹ý³Ì
inuxϵͳµÄÆô¶¯¹ý³ÌÊÇÓɺܶಽÖè×é³ÉµÄ£¬µ«ÊÇ£¬ÎÞÂÛÄãÊÇÆô
¶¯Ò»¸ö±ê×¼µÄx86×ÀÃæ¼ÆËã»ú£¬»¹ÊÇÒ»¸öǶÈëʽPowerPCµÄÄ¿±ê°å£¬´ó¶àÊýµÄÁ÷³ÌÊǾªÈ˵ÃÏàËƵġ£ÕâƪÎÄÕ£¬Ì½Ë÷ÁËlinux´Ó×î³õµÄÆô¶¯×¼±¸µ½Óû§
¿Õ¼äÖÐij¸ö³ÌÐò±»¿ªÆôÖ®¼äµÄÆô¶¯¹ý³Ì£¬¸úËæÕâ¸öÁ÷³Ì£¬Ä㻹ÄÜѧµ½ÆäËûÐí¶àÓëÆô¶¯ÓйصÄ֪ʶ£¬ÀýÈ磬boot
loaders£¬Äں˽âѹËõ£¬³õʼ»¯ÄÚ´æÅÌ£¬ÒÔ¼°ÆäËûһЩlinuxÆô¶¯µÄ²¿·Ö¡£
ÔÚºÜÔçµÄʱºò£¬Æô¶¯Ò»¸ö¼ÆËã»úÒâζ×ÅȥιÄÇЩ°üº¬Æô¶¯³ÌÐòµÄÖ½´ø,»òÕßͨ¹ýÊÖ¹¤Ê¹ÓÃÇ°Ãæ°åÄÇÃÜÃÜÂéÂéµÄµØÖ·/Êý¾Ý/¿ØÖÆ¿ª¹ØÀ´¼ÓÔØÆô¶¯³ÌÐò£¬µ«ÊÇ£¬¼ò»¯Õâ¸öÁ÷³Ì²¢·Ç±ØÐëµÄ¡£
ÈÃÎÒÃÇÊ×ÏÈ´ÓÒ»¸ö½Ï¸ßµÄ¸ß¶ÈÉÏÀ´¶ÔlinuxµÄÆô¶¯×öÒ»¸öÈ«ÃæµÄ·ÖÎö£¬È»ºó£¬ÎÒÃÇ»á»Ø¹Ëһϣ¬ÔÚÿһ¸ö¶ÀÁ¢µÄ¹ý³ÌÖУ¬·¢ÉúÁËʲôÊÂÇé¡£ÔÚÕâ;ÖеIJο¼Ô´´úÂ뽫°ïÖúÄãÔÚÄÚºËÊ÷Öв»ÖÁÓÚÃÔʧ·½Ïò£¬²¢ÄܼÌÐøÉîÈëÍÚ¾òÏÂÈ¥¡£
Ò»¡¢ ¸ÅÊö
ͼ1½«ÊǶÔÆô¶¯¹ý³ÌµÄÕûÌå»Ø¹Ë£º
Figure 1. The 20,000-foot view of the Linux boot process
µ±ÏµÍ³Ò»¿ªÊ¼±»Æô¶¯£¬»òÕßÖØÐÂÆô¶¯Ê±£¬´¦ÀíÆ÷½«ÔÚÖÚËùÖÜÖªµÄλÖÃÖ´ÐдúÂë¡£ÔÚ¸öÈ˵çÄÔÉÏ£¬Õâ¸öλÖô¦ÓÚ»ù±¾ÊäÈëÊä³öϵͳÖУ¬Ò²¾ÍÊÇÎÒÃÇËù˵µÄBIOS£¬Ëü
ÊDZ»´æ´¢ÔÚÖ÷°åÉϵÄÉÁ´æÖеġ£ÔÚǶÈëʽϵͳÖÐ,ÖÐÑë´¦ÀíÆ÷£¨CPU£©Ôò½«¸´Î»ÇøÓò¼¤»î£¬À´¿ªÊ¼Ö´ÐÐflash»òÕßROMÖеÄÒÑÖªµÄ³ÌÐò¡£ÔÚÆäËüÇé¿öÖУ¬»ù
±¾µÄ¹ý³ÌÊÇÒ»ÑùµÄ¡£ÓÉÓÚ¸öÈ˵çÄÔÌṩÁËÖÚ¶àÁé»îµÄ¿ÉÑ¡É豸£¬BIOS±ØÐëÈ·¶¨£¬ÓÉÄÄÒ»¸öÉ豸À´Ö´ÐÐÆô¶¯¹ý³Ì¡£ÔÚ½ÓÏÂÀ´µÄÎÄÕÂÖÐÎÒÃǽ«Éæ¼°Õâ·½ÃæµÄ¸ü¶àµÄÄÚ
ÈÝ¡£
µ±ÕÒµ½Æô¶¯É豸ʱ£¬µÚÒ»½×¶ÎËùÓõÄboot loader±»×°Ôص½RAMÖв¢±»Ö´ÐС£ÕâÀïµÄboot loaderÔÚ´óСÉÏСÓÚÒ»¸öÉÈÇøµÄ´óС£¬Ò²¾ÍÊÇ512×Ö½Ú£¬¶øËüµÄÈÎÎñ£¬¾ÍÊǼÓÔصڶþ½×¶ÎµÄboot loader¡£
µ±¸ºÔðµÚ¶þ½×¶ÎµÄboot loaderλÓÚÄÚ´æÖв¢±»Ö´ÐÐʱ£¬Í¨³£»áÏÔʾһ¸öÒ»ÉÁ¶ø¹ýµÄÆÁÄ»£¬È»ºólinuxÒÔ¼°¿ÉÑ¡µÄ³õʼ»¯ÄÚ´æÅÌ£¨Ò»ÖÖÁÙʱµÄ¸ùÎļþϵͳ£¬Èç¹ûÏëµÃµ½¾ßÌåµÄ½éÉÜ£¬Çë·ÃÎÊ
http://likunarmstrong.bokee.com/5502266.html
)
»á±»×°Ôص½´æ´¢Æ÷ÖС£µ±ÏµÍ³¾µÏñ±»¼ÓÔØʱ£¬µÚ¶þ½×¶ÎµÄboot
loader½«°Ñ¿ØÖÆȨת½»¸øÄں˾µÏñ£¬Óë´Ëͬʱ£¬Äں˿ªÊ¼×Ô½âѹ²¢³õʼ»¯¡£ÔÚÕâ¸ö½×¶Î£¬µÚ¶þ½×¶ÎµÄboot
loader»á¼ì²éϵͳµÄÓ²¼þ£¬Ã¶¾ÙÄÇЩ¸½¼ÓµÄÓ²¼þÉ豸£¬¹ÒÔظùÉ豸£¬Ö®ºó¼ÓÔØÐèÒªµÄÄÚºËÄ£¿é¡£Íê³ÉÖ®ºó£¬µÚÒ»¸öÓû§¿Õ¼ä³ÌÐò£¨init£©¿ªÊ¼Ö´ÐУ¬¸ü¸ß
²ã´ÎµÄϵͳ³õʼ»¯¿ªÊ¼¡£
Õâ¾ÍÊÇ´Ó±íÃæÉÏ¿´£¬linuxµÄÆô¶¯¹ý³Ì¡£ºÃÁË£¬ÏÖÔÚ£¬ÈÃÎÒÃǸü½øÒ»²½£
Ïà¹ØÎĵµ£º
ÆäÖÐÓÐһЩº¯ÊýµÄ×÷ÓÃÍêÈ«Ïàͬ£¬Ö»ÊDzÎÊý²»Í¬¡££¨¿ÉÄܺܶàÊìϤC++ÅóÓÑÂíÉϾÍÄÜÁªÏëÆðº¯ÊýÖØÔØ£¬µ«ÊDZðÍüÁËLinuxºËÐÄÊÇÓÃCÓïÑÔдµÄ£¬ËùÒÔÖ»
ÄÜÈ¡³É²»Í¬µÄº¯ÊýÃû£©¡£»¹ÓÐһЩº¯ÊýÒѾ¹ýʱ£¬±»ÐµĸüºÃµÄº¯ÊýËù´úÌæÁË£¨gccÔÚÁ´½ÓÕâЩº¯Êýʱ»á·¢³ö¾¯¸æ£©£¬µ«ÒòΪ¼æÈݵÄÔÒò»¹±£Áô×Å£¬ÕâЩº¯ÊýÔÚÇ°
Ãæ±êÉÏ“*”ºÅÒÔÊ ......
ÔÎĵØÖ·£ºhttp://blog.csdn.net/Javadino/archive/2008/09/06/2891413.aspx
Òý×Ó:
1.ÔÚLinuxϵͳÖУ¬½ø³Ì״̬³ýÁËÎÒÃÇËùÊìÖªµÄTASK_RUNNING£¬TASK_INTERRUPTIBLE£¬TASK_STOPPEDµÈ£¬»¹ÓÐÒ»¸öTASK_TRACED¡£Õâ±íÃ÷Õâ¸ö½ø³Ì´¦ÓÚʲô״̬£¿
2.strace¿ÉÒÔ·½±ãµÄ°ïÖúÎÒÃǼǼ½ø³ÌËùÖ´ÐеÄϵͳµ÷Óã¬ËüÊÇÈçºÎ¸ú×Ùµ½½ø³ÌÖ´ÐÐµÄ ......
3. GDBµÄʵÏÖ
GDBÊÇGNU·¢²¼µÄÒ»¸öÇ¿´óµÄ³ÌÐòµ÷ÊÔ¹¤¾ß£¬ÓÃÒÔµ÷ÊÔC/C++³ÌÐò¡£¿ÉÒÔʹ³ÌÐòÔ±ÔÚ³ÌÐòÔËÐеÄʱºò¹Û²ì³ÌÐòÔÚÄÚ´æ/¼Ä´æÆ÷ÖеÄʹÓÃÇé¿ö¡£ËüµÄʵÏÖÒ²ÊÇ»ùÓÚptraceϵͳµ÷ÓÃÀ´Íê³ÉµÄ¡£
Æä
ÔÀíÊÇÀûÓÃptraceϵͳµ÷Óã¬ÔÚ±»µ÷ÊÔ³ÌÐòºÍgdbÖ®¼ä½¨Á¢¸ú×Ù¹Øϵ¡£È»ºóËùÓз¢Ë͸ø±»µ÷ÊÔ³ÌÐòµÄÐźÅ(³ýSIGKILL)¶¼»á±»gdb½Ø ......
LinuxµÄÖ÷ÒªÌصã
¡¡¡¡×÷Ϊһ¸ö²Ù×÷ϵͳ£¬Linux¼¸ºõÂú×ãµ±½ñUnix²Ù×÷ϵͳµÄËùÓÐÒªÇó£¬Òò´Ë£¬Ëü¾ßÓÐUnix²Ù×÷ϵͳµÄ»ù±¾ÌØÕ÷¡£
1.·ûºÏPOSIX 1003.1±ê×¼
¡¡ ¡¡POSIX 1003.1±ê×¼¶¨ÒåÁËÒ»¸ö×îСµÄUnix²Ù×÷ϵͳ½Ó¿Ú£¬ÈκβÙ×÷ϵͳֻÓзûºÏÕâÒ»±ê×¼£¬²ÅÓпÉÄÜÔËÐÐUnix³ÌÐò¡£Unix¾ßÓзḻµÄÓ¦ÓóÌÐò£¬µ±½ñ¾ø ´ó¶àÊý²Ù×÷ϵͳ¶¼°Ñ ......
ʵÀý½â˵ fdisk ʹÓ÷½·¨
×÷Õߣº±±ÄÏÄϱ±
À´×Ô£ºLinuxSir.Org
ÌáÒª£ºfdisk ÊÇÒ»¿î¹¦ÄÜÇ¿´óµÄ·ÖÇø¹¤¾ß£¬Ò²ÊÇÄ¿Ç°ÔÚUnixÀà²Ù×÷ϵͳÖÐ×îÁ÷ÐеŤ¾ßÖ®Ò»£»·ÖÇø¹¤¾ßÀÏ×ֺţ»±¾ÆªÖ»½éÉÜÆä×î¼òµ¥µÄ·ÖÇø²Ù×÷¹¦ÄÜ£»
Ò»¡¢fdisk µÄ½éÉÜ£»
fdisk - Partition table manipulator for Linux £¬Òë³ÉÖÐÎĵÄÒâ˼ÊÇ´ÅÅÌ·ÖÇø±í²Ù×÷¹¤¾ß£»± ......