Linux bootloader ±àд·½·¨
¼¶±ð£º ³õ¼¶
·¶Ïþ¾æ (xiaoju_f@263.net), ÁªÏë(±±¾©)ÓÐÏÞ¹«Ë¾Èí¼þÉè¼ÆÖÐÐÄǶÈëʽÑз¢´¦¿ª·¢¹¤³Ìʦ, ÁªÏë(±±¾©)ÓÐÏÞ¹«Ë¾Èí¼þÉè¼ÆÖÐÐÄ
2003 Äê 8 ÔÂ 11 ÈÕ
¶ÔÓÚÒÆÖ² linux µ½ÆäËü¿ª·¢°åµÄÈËÀ´Ëµ£¬±àд boot loader ÊÇÒ»¸ö²»¿É±ÜÃâµÄ¹ý³Ì¡£¶ÔÓÚѧϰlinuxµÄÈËÀ´½²£¬±àд bootloader Ò²ÊÇÒ»¸öºÜÓÐÌôÕ½ÐԵŤ×÷¡£±¾ÎÄͨ¹ý¶Ô linuxÒýµ¼ÐÒé½øÐзÖÎö£¬Ïêϸ²ûÊöÁËÈçºÎ±àдһ¸ö¿ÉÒÔÔÚ i386 »úÆ÷ÉÏÒýµ¼ 2.4.20Äں˵Ļù±¾µÄbootloader¡£
1.¸ÅÊö
linuxÔËÐÐÔÚ±£»¤Ä£Ê½Ï£¬µ«Êǵ±»úÆ÷Æô¶¯¸´Î»µÄʱºòÈ´´¦ÓÚʵģʽÏ¡£ËùÒÔдbootloader×öµÄ¹¤×÷Ò²ÊÇÔÚʵģʽ֮ϵġ£
linuxµÄÄÚºËÓжàÖÖ¸ñʽ£¬ÀÏʽµÄzImageºÍÐÂÐ͵ÄbzImage¡£ËüÃÇÖ®¼ä×î´óµÄ²î±ðÊǶÔÓÚÄÚºËÌå»ý´óСµÄÏÞÖÆ¡£ÓÉÓÚzImageÄÚºËÐèÒª·ÅÔÚʵģʽ1MBµÄÄÚ´æÖ®ÄÚ£¬ËùÒÔÆäÌå»ýÊܵ½ÁËÏÞÖÆ¡£Ä¿Ç°²ÉÓõÄÄں˸ñʽ´ó¶àΪbzImage£¬ÕâÖÖ¸ñʽûÓÐ1MBÄÚ´æÏÞÖÆ¡£±¾ÎÄÒÔϲ¿·ÖÖ÷ÒªÒÔbzImageΪÀý½øÐзÖÎö¡£
»ØÒ³Ê×
2.bzImage¸ñʽÄں˵Ľṹ
bzImageÄں˴ÓÇ°Ïòºó·ÖΪ3¸ö²¿·Ö£¬Ç°512×Ö½Ú±»³ÆΪbootsect£¬Õâ¾ÍÊÇÈíÅÌÒýµ¼linuxʱÓõ½µÄbootloader£¬Èç¹û²»´ÓÈíÅÌÒýµ¼£¬Õⲿ·Ö¾ÍûÓÐÓã¬ÆäÖд洢ÁËһЩ±àÒëʱÉú³ÉµÄÄÚºËÆô¶¯Ñ¡ÏîµÄĬÈÏÖµ¡£´Ó512¸ö×Ö½Ú¿ªÊ¼µÄ512*n¸ö×Ö½Ú³ÆΪsetup²¿·Ö£¬ÕâÊÇlinuxÄں˵Äʵģʽ²¿·Ö£¬Õⲿ·ÖÔÚʵģʽÏÂÔËÐУ¬Ö÷Òª¹¦ÄÜÊÇΪ±£»¤Ä£Ê½µÄlinuxÄÚºËÆô¶¯×¼±¸»·¾³¡£Õâ¸ö²¿·Ö×îºó»áÇл»½øÈë±£»¤Ä£Ê½£¬Ìøתµ½±£»¤Ä£Ê½µÄÄÚºËÖ´ÐС£×îºóµÄ²¿·Ö¾ÍÊDZ£»¤Ä£Ê½µÄÄںˣ¬Ò²¾ÍÊÇÕæÕýÒâÒåÉϵÄlinuxÄںˡ£ÆäÖÐnµÄ´óС¿ÉÒÔ´Óbootsectºó°ë²¿µÃµ½£¬ÏêϸµØÖ·¿ÉÒÔ²ÎÔÄlinux boot protocol¡£
»ØÒ³Ê×
3.Òýµ¼¹ý³Ì¸ÅÊö
µÚÒ»²½£¬´ò¿ª±ùÏäÃÅ£»µÚ¶þ²½°Ñ´óÏó·Åµ½±ùÏäÀï……²»ÒªÐ¦£¬¹ý³Ì¾ÍÊÇÕâô¼òµ¥¡£Ê×ÏÈÐèÒª°ÑlinuxÄں˵Äsetup²¿·Ö¿½±´µ½9020H:0¿ªÊ¼µÄµØÖ·£¬È»ºó°Ñ±£»¤Ä£Ê½Äں˿½±´µ½1MB¿ªÊ¼µÄµØÖ·£¬È»ºó¸ù¾ÝLinux Boot Protocol 2.03µÄÄÚÈÝÉ趨²ÎÊýÇøµÄÄÚÈÝ£¬»ùµØÖ·¾ÍÊÇ9000H£º0£¬×îºóʹÓÃÒ»Ìõljmp $0x9020,$0Ìøתµ½setup¶Î£¬Ê£ÏµÄÊÂÇé¾ÍÊÇlinux×Ô¼ºµÄÁË^_^,¹ûÈ»¼òµ¥°É£¡
»ØÒ³Ê×
4.THE LINUX/I386 BOOT PROTOCOL
Õâ¸ö¾ÍÊÇÎÒÃÇÒýµ¼linuxËùʹÓõÄÐÒ飬ËüµÄλÖÃÔÚ£ºDocumetation/i386/boot.txtÖС£ÀïÃæÏêϸµÄдÁËÒýµ¼linuxËùÐèÒªÖªµÀµÄÒ»ÇÐ֪ʶ£¬¶ÔÓÚÆäËüÌåϵ½á¹¹µÄCPU£¬Ò²Ò»¶¨´æÔÚ×ÅÀàËƵĶ«¶«£¬·ÂÕÕ±¾Îĵķ½·¨¾Í¿ÉÒÔÁË¡£
»ØÒ³Ê×
5.ϸ½ÚÒ»£º»ù±¾Òýµ¼²ÎÊý
µ±È»ÎÒÃDz»Ö¸¶¨ÈκβÎÊýlinuxÄÚºËÒ²¿ÉÒÔÆô¶¯£¬µ«ÊÇÕâÑùÓ
Ïà¹ØÎĵµ£º
ÀýÒ»£º·¢ËÍ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 ......
Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖÐÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀÐÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......
LinuxÐźżò½é ¡¡
1) SIGHUP ±¾ÐźÅÔÚÓû§ÖÕ¶ËÁ¬½Ó(Õý³£»ò·ÇÕý³£)½áÊøʱ·¢³ö, ͨ³£ÊÇÔÚÖն˵ĿØÖƽø³Ì½áÊøʱ, ֪ͨͬһsessionÄڵĸ÷¸ö×÷Òµ, ÕâʱËüÃÇÓë¿ØÖÆÖն˲»ÔÙ¹ØÁª. ¡¡¡¡
2) SIGINT ³ÌÐòÖÕÖ¹(interrupt)ÐźÅ, ÔÚÓû§¼üÈëINTR×Ö·û(ͨ³£ÊÇCtrl-C)ʱ·¢³ö ¡¡¡¡
3) SIGQUIT ºÍSIGINTÀàËÆ, µ«ÓÉQUIT×Ö·û(ͨ³£ÊÇCtrl-\ ......
awk ÍêÈ«½âÎö
awk´¦ÀíµÄ¹¤×÷ÓëÊý¾Ý¿âµÄ´¦Àí·½Ê½ÓÐÏà֮ͬ´¦£¬ÆäÏàͬ´¦Ö®Ò»¾ÍÊÇawkÖ§³Ö¶Ô¼Ç¼ºÍ×ֶεĴ¦Àí¡£
ÓòºÍ¼Ç¼
awkÖ´ÐÐʱ£¬Æää¯ÀÀÓòÓÃ$1¡¢$2¡¢…¡¢$n±êʶ£¬¶à¸öÓòÖ®¼äÓöººÅ·Ö¸ô£¬Èç$1,$3¡£
$0±êʶÕû¸ö¼Ç¼(ÕûÐÐ)¡£
1 ÏÔʾÎı¾ÎļþmyfileÖеÚÆßÐе½µÚÊ®ÎåÐÐÖÐÒÔ×Ö·û%·Ö¸ôµÄµÚÒ»×ֶΣ¬µÚÈý×ֶκ͵ÚÆ ......
µÚÒ»£º
ÏÂÔØ°²×°Îļþ£º
jdk1.6: wget http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/jdk-6u17-linux-x64-rpm.bin?BundledLineItemUUID=MAhIBe.nJasAAAEl91kuXXad&OrderID=MwxIBe.nEvEAAAEl7FkuXXad&ProductID=RPVIBe.onOYAAAEk8edn5G0y ......