linux 0.11 ÄÚºËѧϰ setup.s
²Î¿¼×ÊÁÏ LinuxÄÚºËÍêȫעÊÍ.pdf
ÍøÉÏÏà¹Ø×ÊÁÏ
! setup³ÌÐòµÄÖ÷Òª×÷ÓÃÊÇÀûÓÃrom biosµÄÖжÏÀ´¶ÁÈ¡»úÆ÷ϵͳ²ÎÊý£¬²¢½«ÕâЩÊý¾Ý±£´æÔÚ0x90000
! ¿ªÊ¼µÄλÖÃ(¸²¸ÇµôÁËbootsect³ÌÐòËùÔÚµÄλÖÃ)£¬ËùÈ¡µÃµÄ²ÎÊý±»Äں˵ÄÏà¹Ø³ÌÐòʹÓá£×¢ÒâÔÚbootsect
! ÖÐÒѾ½«¸ÃÄ£¿éºÍsystem¡¢Ä£¿é¼ÓÔص½ÄÚ´æÖС£
! È»ºósetup³ÌÐò½«systemÄ£¿é´ÓµØÖ·0x10000-0x8fff(µ±Ê±ÈÏΪÄں˵Ä×î´óÖµ)Õû¿éÒƶ¯µ½ÄÚ´æµÄ¾ø¶ÔµØÖ·
! 0x00000´¦¡£½ÓÏÂÀ´¼ÓÔØÖжÏÃèÊö·û±í¼Ä´æÆ÷idtrºÍÈ«¾ÖÃèÊö·û±ígdtr£¬¿ªÆôa20µØÖ·Ïߣ¬ÖØÐÂÉèÖÃÁ½¸ö
! ÖжϿØÖÆоƬ£¬½«Ó²¼þÖն˺ÅÖØÐÂÉèÖã¬×îºóÉèÖÃcpuµÄ¿ØÖƼĴæÆ÷cr0£¬´Ó¶ø½øÈë32λµÄ±£»¤Ä£Ê½£¬²¢
! ÇÒÌøתµ½systemÄ£¿é×îÇ°ÃæµÄhead.s³ÌÐò´¦¿ªÊ¼¼ÌÐøÔËÐС£
!
! ΪÁËÄÜÈÃhead.sÔÚ32λµÄ±£»¤Ä£Ê½ÏÂÔËÐУ¬±¾³ÌÐòÉèÖÃÁËÖжÏÃèÊö·û±íidtºÍÈ«¾ÖÃèÊö·û±ígdt£¬²¢ÔÚgdt
! ÖÐÉèÖÃÁ˵±Ç°Äں˴úÂë¶ÎµÄÃèÊö·ûºÍÊý¾Ý¶ÎµÄÃèÊö·û¡£ÔÚÏÂÃæµÄhead.s³ÌÐòÖлá¸ù¾ÝÄں˵ÄÐèÒªÖØÐÂÉèÖÃ
! ÕâЩÃèÊö·û±í¡£
!
!
! setup.s (C) 1991 Linus Torvalds
!
! setup.s is responsible for getting the system data from the BIOS,
! and putting them into the appropriate places in system memory.
! both setup.s and system has been loaded by the bootblock.
!
! This code asks the bios for memory/disk/other parameters, and
! puts them in a "safe" place: 0x90000-0x901FF, ie where the
! boot-block used to be. It is then up to the protected mode
! system to read them from there before the area is overwritten
! for buffer-blocks.
!
! NOTE! These had better be the same as in bootsect.s!
INITSEG = 0x9000 ! we move boot here - out of the way£¬ÔÀ´µÄbootsect¶Î
SYSSEG = 0x1000 ! system loaded at 0x10000 (65536).systemËùÔÚ¶Î
SETUPSEG = 0x9020 ! this is the current segment£¬±¾³ÌÐòËùÔÚ¶Î
.globl begtext, begdata, begbss, endtext, enddata, endbss
.text
begtext:
.data
begdata:
.bss
begbss:
.text
entry start
start:
! ok, the read went well so we get current cursor position and save it for
! posterity.
! Õû¸ö¶Á´ÅÅ̵Ĺý³Ì¶¼ºÜ˳Àû£¬ÏÖÔÚ½«¹â±êλÖñ£´æÒÔ±¸ºó
Ïà¹ØÎĵµ£º
1. HCI²ãÐÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI) ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,L2capµÈÐÒé ......
¡¡¡¡³õÓÃLinuxʱ¿ÉÄÜÓд¦´¦²»·½±ã¸Ð¾õ, ¿ÉÊǵÈʹÓöÎʱ¼äÕÆ¿ØÁËЩÇÏÃż¼Çɺó¾Í»á¸Ðµ½Ô½À´Ô½Ë³ÊÖÁË
ÒÔÏÂÊÇʹÓÃLinux»ýÀÛЩ¾ÑéºÍÇÏÃż¼ÇÉ
¡¡¡¡1.ʹÓÃÐéÄâ¿ØÖÆ̨
¡¡¡¡µÇ¼ºó°´Alt F2¼üÕâʱÓÖÄܹ»¿´µ½"login:"Ìáʾ·ûÕâ¸ö¾ÍÊÇµÚ 2¸öÐéÄâ¿ØÖÆ̨°ãа²×°LinuxÓÐ 4¸öÐéÄâ¿ØÖÆ
̨Äܹ»ÓÃAlt F1~Alt F4À´·ÃÎÊÐéÄâ¿ØÖÆ̨×îÓÐÓÃʱºò ......
Linux±£´æÁËϵͳÖÐËù·¢ÉúʼþµÄÏêϸ¼Ç¼£¬ÕâЩ¼Ç¼³Æ×÷ÈÕÖ¾Îļþ»òÏûÏ¢Îļþ¡£¿ÉÒÔ²éÔÄÈÕÖ¾ÎļþÀ´È·¶¨ÏµÍ³µ±Ç°×´Ì¬£¬¹Û²ìÈëÇÖÕß×Ù¼££¬Ñ°ÕÒijÌض¨³ÌÐò(»òʼþ)Ïà¹ØµÄÊý¾Ý¡£syslogdÓëklogd(¼à¿ØlinuxÄÚºËÌá½»µÄÏûÏ¢)ÊØ»¤½ø³Ì¸ºÔð¼Ç¼£¬·¢ËÍϵͳ»ò¹¤¾ß²úÉúµÄÐÅÏ¢£¬¶þÕßµÄÅäÖÃÎļþ¶¼ÊÇ/etc/syslog.conf¡£µ±ÏµÍ ......
GCC±àÒ빤¾ßÔÚRed Hat/Fedora Core·¢ÐаæÖÐĬÈÏÒѾ°²×°£¬Òò´Ë²»ÐèÒªÔÙ°²×°¡£ÔÚUbuntu·¢ÐаæÖУ¬´ò¿ªshell£¬Ê¹ÓÃÏÂÃæµÄÃüÁî¿ÉÒÔ·½±ãµÄ°²×°GCC±àÒëÆ÷(\$ΪÃüÁîÐÐÌáʾ·û)£º
¡¡¡¡$ sudo apt-get install build-essential
¡¡¡¡¸ÃÃüÁî¿ÉÒÔ°ÑËùÐèÒªgcc¡¢g++±àÒëÆ÷ºÍmake¹¤¾ß¼°ÆäÒÀÀµµÄÆäËüÈí¼þ°ü×Ô¶¯°²×°²¢ÅäÖúá£
&nb ......