linux 0.11 ÄÚºËѧϰ bootsect.s£¬ ÍòÀﳤÕ÷µÚÒ»²½
ºÇºÇ£¬ÖÕÓÚ½«linux 0.11 ÏÂÃæµÄbootÎļþ¼ÐϵÄÈý¸öÎļþ¶ÁÍ꣬ÏÂÃæÊÇÏà¹Ø×¢ÊÍ£¬Ã»Óлã±à»ù´¡µÄÈËÒ²ÊÇ¿ÉÒÔ¶ÁµÄ¡£·Ï»°ÉÙ˵£¬ÏÂÃæ¾ÍÊÇlinuxµÄÔ´ÂëÁË¡£
²Î¿¼×ÊÁÏ LinuxÄÚºËÍêȫעÊÍ.pdf
ÍøÉÏÏà¹Ø×ÊÁÏ
!ʱ¼ä : 2010-1-14
!¹¤×÷ : ÔĶÁlinux 0.11 Ô´ÂëÖеÄbootsect.s
!×ÜÌålinuxÆô¶¯¹ý³ÌÈçÏÂ:
!
!µ±PCµÃµçÔ´´ò¿ªÖ®ºó£¬80x86½á¹¹µÄCPU½«×Ô¶¯½øÈëʵʱģʽ£¬²¢ÇÒ´Ó0xFFFF0¿ªÊ¼×Ô¶¯Ö´ÐгÌÐò´úÂ룬Õâ¸öµØÖ·Í¨³£ÊÇ
!ROM-BIOSµÄµØÖ·¡£PC»úµÄBIOS½«Ö´ÐÐϵͳµÄ¼ì²â£¬²¢ÇÒÔÚÎïÀíµØÖ·µÄ0´¦¿ªÊ¼³õʼ»¯ÖжÏÏòÁ¿¡£´Ëºó£¬Ëü½«¿ÉÆô¶¯É豸µÄµÚÒ»
!ÉÈÇø(512×Ö½Ú)¶ÁÈëÄÚ´æµÄ¾ø¶ÔµØÖ·0x7c00´¦£¬²¢ÇÒÌø×ªµ½Õâ¸öµØ·½¡£Æô¶¯É豸ͨ³£ÊÇÈíÅÌ»òÕßÊÇÓ²ÅÌ¡£ÕâÀïµÄÐðÊöÊǺܼòµ¥
!µÄ£¬µ«ÊÇÕâÒѾ×ã¹»Àí½âÄں˵ijõʼ»¯µÄ¹¤×÷¹ý³Ì¡£
!
!linuxµÄ0x9000ÓÉBIOS¶ÁÈëµ½ÄÚ´æµÄ¾ø¶ÔµØÖ·0x7c00(31k)´¦£¬µ±Ëü±»
!Ö´ÐÐʱ¾Í»á°Ñ×Ô¼ºÒƶ¯µ½¾ø¶ÔµØÖ·0x90000´¦£¬²¢°ÑÆô¶¯É豸Öкó2kb×Ö½Ú´úÂë(boot/setup.s)¶ÁÈëµ½ÄÚ´æ0x90200´¦£¬¶øÄں˵Ä
!ÆäËû²¿·ÖÔò±»¶ÁÈëµ½´ÓµØÖ·0x10000µÄ¿ªÊ¼´¦¡£ÔÚϵͳµÄ¼ÓÔØÆÚ¼äÏÔʾÐÅÏ¢?Loading...",È»ºó½«¿ØÖÆÈ¨´«µÝ¸øboot/setup.sÖÐ
!µÄ´úÂë.ÕâÊÇÁíÒ»¸öʵʱģʽ»ã±à³ÌÐò¡£
!
!ϵͳÆô¶¯²¿·Öʶ±ðÖ÷»úµÄÄ³Ð©ÌØÐÔÒÔ¼°vga¿¨µÄÀàÐÍ¡£Èç¹ûÐèÒª£¬Ëü»áÒªÇóÓû§Îª¿ØÖÆÌ¨Ñ¡ÔñÏÔʾģʽ¡£È»ºóÕû¸öϵͳ´ÓµØÖ·
!0x10000ÒÆÖÁ0x0000´¦£¬½øÈë±£»¤Ä£Ê½²¡Ìø×ªÖÁϵͳµÄÓàϲ¿·Ö¡£´ËʱËùÓеÄ32λÔËÐз½Ê½µÄÉèÖÃÆô¶¯±»Íê³É:idt,gdt,ldt±»
!¼ÓÔØ£¬´¦ÀíÆ÷ºÍд¦ÀíÆ÷ҲȷÈÏ£¬·ÖÒ³µÄ¹¤×÷Ò²ÉèÖúÃÁË¡£×îÖÕ½«µ÷ÓÃinit/main.cÖеÄmain³ÌÐò¡£ÉÏÊöµÄ²Ù×÷µÄÔ´´úÂëÊÇÔÚ
!boot/head.sÖеġ£Õâ¿ÉÄÜÊÇÕû¸öÄÚºËÖÐ×îÓо÷ÇϵĴúÂëÁË¡£×¢ÒâÈç¹ûÔÚÉÏÊöÈκÎÒ»²½ÖгöÏÖÁËÒ»²½´íÎó¡£¼ÆËã»ú¾Í»áËÀËø¡£ÔÚ
!²Ù×÷ϵͳ»¹Ã»ÓÐÍêÈ«ÔËת֮ǰÊÇ´¦Àí²»ÁË´íÎóµÄ¡£
!
!
!bootsec.sÎļþ˵Ã÷ÈçÏÂ:
!bootsec.s´úÂëÊÇ´ÅÅ̵ÄÒýµ¼¿é³ÌÐò£¬×¤ÁôÔÚ´ÅÅ̵ĵÚÒ»ÉÈÇø¡£ÔÚPC»ú¼Óµçrom bios×Ô¼ìÖ®ºó£¬Òýµ¼ÉÈÇøÓÉbios¼ÓÔØµ½ÄÚ´æ0x7c00
!´¦£¬È»ºó½«×Ô¼ºÒƶ¯µ½ÄÚ´æ0x90000´¦¡£¸Ã³ÌÐòµÄÖ÷Òª×÷ÓÃÊÇÊ×ÏȽ«setupÄ£¿é´Ó´ÅÅ̼ÓÔØµ½ÄÚ´æÖУ¬½ô½Ó×ÅbootsectµÄºóÃæÎ»ÖÃ
!(0x90200),È»ºóÀûÓÃbiosÖжÏ0x13ÖжÏÈ¥´ÅÅ̲ÎÊý±íÖе±Ç°Òýµ¼Å̵IJÎÊý£¬È»ºóÔÚÆÁÄ»ÉÏÏÔʾ"Loading system..."×Ö·û´®¡£ÔÙÕß
!½«systemÄ£¿é´Ó´ÅÅÌÉϼÓÔØµ½ÄÚ´æ0x10000¿ªÊ¼µÄµØ·½¡£ËæºóÈ·¶¨¸ùÎļþÏ
Ïà¹ØÎĵµ£º
ÀýÒ»£º·¢ËÍSignaling Packet£º
Signaling CommandÊÇ2¸öBluetoothʵÌåÖ®¼äµÄL2CAP²ãÃüÁî´«Êä¡£ËùÒÔµÃSignaling CommandʹÓÃCID 0x0001.
¶à¸öCommand¿ÉÒÔÔÚÒ»¸öC-frame£¨control frame£©Öз¢ËÍ¡£
Èç¹ûÒªÖ±½Ó·¢ËÍSignaling Command.ÐèÒª½¨Á¢SOCK_RAWÀàÐ͵ÄL2CAPÁ¬½ÓSocket¡£ÕâÑù²ÅÓлú»á×Ô¼ºÌî³äCommand Code£¬Identi ......
ÓÃÃüÁî whereis java¾Í¿ÉÒÔ¿´µ½ÁË
eg:
-bash-3.1$ whereis java
java: /usr/bin/java /etc/java /usr/lib/java /usr/share/java /opt/jdk1.6.0_01/bin/java
Èç¹û½ö½öÏëÖªµÀjavaÖ´Ðз¾¶ÔÚÄÇÀïµÄ»° ÓÃwhich java¾Í¿ÉÒÔÁË
eg:
-bash-3.1$ which java
/usr/bin/java ......
Ò»°ãÀ´½²£¬Èç¹ûÄãÓÐÒ»¸öÓÐÏßµ÷ÖÆ½âµ÷Æ÷»òÕßÊý×ÖÓû§Ïß·£¬Äã¾Í¿ÉÒÔʹÓüÒÀïµÄµçÄÔ»ñÈ¡ÓÉÄãµÄ·þÎñÌṩÉ̶¯Ì¬·ÖÅäµÄIPµØÖ·¡£Èç¹ûÔÚµ÷ÖÆ½âµ÷Æ÷ºÍ±¾µØÍøÂçÖ®¼ä°²×°ÁËÓÐÏß/Êý×ÖÓû§Ïß·µÄ·ÓÉÆ÷£¬ÄãµÄµçÄÔºÜÓпÉÄÜÊÇÔÚÆô¶¯¹ý³ÌÖдÓ·ÓÉÆ÷»ñÈ¡ÁËIPµØÖ·¡£ÄãÒ²¿ÉÒÔÑ¡Ôñ½ûÓñ¾µØÂ·ÓÉÆ÷ÖÐDHCP·þÎñÆ÷µÄ¹¦ÄÜ£¬¶øÉèÖà ......
GCC±àÒ빤¾ßÔÚRed Hat/Fedora Core·¢ÐаæÖÐĬÈÏÒѾ°²×°£¬Òò´Ë²»ÐèÒªÔÙ°²×°¡£ÔÚUbuntu·¢ÐаæÖУ¬´ò¿ªshell£¬Ê¹ÓÃÏÂÃæµÄÃüÁî¿ÉÒÔ·½±ãµÄ°²×°GCC±àÒëÆ÷(\$ΪÃüÁîÐÐÌáʾ·û)£º
¡¡¡¡$ sudo apt-get install build-essential
¡¡¡¡¸ÃÃüÁî¿ÉÒÔ°ÑËùÐèÒªgcc¡¢g++±àÒëÆ÷ºÍmake¹¤¾ß¼°ÆäÒÀÀµµÄÆäËüÈí¼þ°ü×Ô¶¯°²×°²¢ÅäÖúá£
&nb ......