ubootÔÚÒýµ¼linux֮ǰҪ×öµÄÊÂ
Æô¶¯armlinux£¬bootloader±ØÐëÌṩÏÂÃæ¼¸²½£º
1£® ÉèÖò¢³õʼ»¯ram
2£® ³õʼ»¯Ò»¸ö´®¿Ú
3£® ¼ì²â´¦ÀíÆ÷ÀàÐÍ
4£® ÉèÖÃÄں˱ê¼ÇÁбí
5£® µ÷ÓÃÄÚºËÓ³Ïñ
1. ÉèÖò¢³õʼ»¯ram
bootloaderÒªÕÒµ½²¢³õʼ»¯ÏµÍ³ÖÐËùÓеÄram£¬Äں˽«ÕâЩramÓÃÓڿɱäÊý¾ÝµÄ´æ´¢¡£
2. ³õʼ»¯Ò»¸ö´®¿Ú
bootloaderÓ¦¸ÃÔÚÄ¿±ê°åÉϳõʼ»¯²¢Ê¹ÄÜÒ»¸ö´®´®¿Ú¡£Õ⽫ÔÊÐíÄں˴®¿ÚÇý¶¯×Ô¶¯¼ì²âËüÓ¦¸ÃÓÃÄĸö´®¿Ú×÷ΪÄں˿ØÖÆÌ¨¡£
ÁíÍ⣬bootloaderÒ²¿Éͨ¹ý±ê¼ÇÁÐ±í´«µÝÏà¹ØµÄ”console=”Ñ¡Ïîµ½ÄÚºËÀ´Ö¸¶¨´®¿ÚÒÔ¼°´®¿Ú¸ñʽ£¨ÆæÅ¼Î»£¬Í£Ö¹Î»µÈ£©
3. ¼ì²â´¦ÀíÆ÷ÀàÐÍ
bootloaderÓ¦¸Ãͨ¹ýijÖÖ·½·¨¼ì²âËüËùÔËÐеĴ¦ÀíÆ÷µÄÀàÐÍ£¬Ëü×îÖÕ±ØÐëÄܹ»ÏòÄÚºËÌṩһ¸öMACH_TYPE_xxxÖµ¡£
4£®ÉèÖÃÄں˱ê¼ÇÁбí
bootloader±ØÐë´´½¨²¢³õʼ»¯Äں˱ê¼ÇÁÐ±í¡£Ò»¸öÓÐЧµÄ±ê¼ÇÁбíÆðʼÓÚATAG_CORE¶øÖÕÖ¹ÓÚATAG_NONE¡£ÈκÎÊýÁ¿µÄ±ê¼Ç¶¼¿ÉÒÔ¼ÓÈëÕâ¸öÁÐ±í¡£bootloaderÖÁÉÙÒªÏòÄں˴«ËÍϵͳÄÚ´æµÄ´óСºÍλÖÃÒÔ¼°¸ùÎļþϵͳµÄλÖá£
±ê¼ÇÁÐ±í±ØÐë·ÅÔÚij¸öÄÚ´æÇøÓò£¬Õâ¸öÇøÓò¼È²»Äܱ»Äں˽âѹÆ÷ÖØÐ´£¬Ò²²»Äܱ»initrd ‘boot0’ ³ÌÐòÖØÐ´¡£ÍƼöµÄλÖÃÊÇRAM¿ªÍ·µÄ16K¡£
5. µ÷ÓÃÄÚºËÓ³Ïñ
ÓÐÁ½ÖÖµ÷ÓÃkernel zImageµÄÑ¡Ôñ¡£Èç¹ûzImage´æ´¢ÔÚflashÖУ¬²¢ÇÒ±»ÕýÈ·µÄÁ¬½Ó´ÓflashÔËÐУ¬ÄÇô¶ÔÓÚbootloaderÀ´Ëµ£¬Ö±½Ó´Óflashµ÷ÓÃzImageÊǺϷ¨µÄ¡£
zImageÒ²¿ÉÒԷŵ½ÏµÍ³RAMÖÐÈκÎλÖò¢ÔÚÄǸöλÖõ÷Óá£×¢Ò⣬ÄÚºËʹÓÃÕâ¸öÓ³ÏñÏÂÃæµÄ16K RAM´æ´¢Ò³±í¡£ÍƼö½«Ó³Ïñ´æ·ÅÔÚRAMµÄ32KλÖô¦¡£
ÔÚÈκÎÇé¿öÏ£¬ÏÂÃæµÄÖØÒªÌõ¼þ¶¼±ØÐëÂú×㣺
¨D¨DÆÁ±ÎËùÓоßÓÐDMA¹¦ÄܵÄÉ豸£¬ÒÔ±ãÄÚ´æ²»»á±»Î±ÔìµÄÍøÂç°ü»ò´ÅÅÌÊý¾ÝÎ󵼡£Õ⽫´ó´ó½ÚÔ¼ÄãµÄµ÷ÊÔʱ¼ä
¨D¨Dcpu¼Ä´æÆ÷ÉèÖÃ
r0 = 0,
r1 = ´¦ÀíÆ÷ÀàÐͺÅ
r2 = ±ê¼ÇÁбíÔÚϵͳÄÚ´æÖеÄÎïÀíµØÖ·
ubootÖе÷ÓÃÄÚºËʱ£º
theKernel (0, bd->bi_arch_number, bd->bi_boot_params);
ÕâÀïµÚ1¡¢2¡¢3¸ö²ÎÊý¾Í·Ö±ð´æ´¢ÔÚr0¡¢r
Ïà¹ØÎĵµ£º
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......
<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
ʲôÊÇС
Linux
£¨“
Small
Linux”
£©·¢Ðа棿ÓÐÄÄЩС
Linux
£¿ËüÃÇÓÐʲôÓô¦£¿
ÖÚËùÖÜÖª£¬ÓÉ ......
´ÓLinux 2.6ÆðÒýÈëÁËÒ»Ì×еÄÇý¶¯¹ÜÀíºÍ×¢²á»úÖÆ:Platform_deviceºÍPlatform_driver¡£
LinuxÖд󲿷ֵÄÉ豸Çý¶¯£¬¶¼¿ÉÒÔʹÓÃÕâÌ×»úÖÆ, É豸ÓÃPlatform_device±íʾ£¬Çý¶¯ÓÃPlatform_driver½øÐÐ×¢²á¡£
Linux platform driver»úÖÆºÍ´«Í³µÄdevice driver »úÖÆ(ͨ¹ýdriver_registerº¯Êý½øÐÐ×¢²á)Ïà±È£¬Ò»¸öÊ® ......
¸´ÖÆÎļþºÍĿ¼ÃüÁî cp
¸ñʽ£º cp [²ÎÊý] Ô´Îļþ»òĿ¼ Ä¿±êÎļþ»òĿ¼
˵Ã÷£º¸ÃÃüÁî°ÑÖ¸¶¨µÄÔ´Îļþ¸´ÖƵ½Ä¿±êÎļþ»ò°Ñ¶à¸öÔ´Îļþ¸´ÖƵ½Ä¿±êĿ¼ÖС£
³£ÓõIJÎÊý£º
- a ¸ÃÑ¡Ïîͨ³£ÔÚ¿½±´Ä¿Â¼Ê±Ê¹Óá£Ëü±£ÁôÁ´½Ó¡¢ÎļþÊôÐÔ£¬²¢µÝ¹éµØ¿½±´Ä¿Â¼£¬Æä×÷ÓõÈÓÚdpRÑ¡ÏîµÄ×éºÏ¡£
- d ¿½±´Ê±±£ÁôÁ´½Ó¡£
- f ɾ³ýÒѾ´æÔÚµÄÄ¿±ê ......
LinuxÖеȴý¶ÓÁлúÖÆ·ÖÎö
ʲôÊǵȴý¶ÓÁУ¿
ÔÚÈí¼þ¿ª·¢ÖÐÈÎÎñ¾³£ÓÉÓÚijÖÖÌõ¼þûÓеõ½Âú×ã¶ø²»µÃ²»½øÈë˯Ãß״̬£¬È»ºóµÈ´ýÌõ¼þµÃµ½Âú×ãµÄʱºòÔÙ¼ÌÐøÔËÐУ¬½øÈëÔËÐÐ״̬¡£ÕâÖÖÐèÇóÐèÒªµÈ´ý¶ÓÁлúÖÆµÄÖ§³Ö¡£LinuxÖÐÌṩÁ˵ȴý¶ÓÁеĻúÖÆ£¬¸Ã»úÖÆÔÚÄÚºËÖÐÓ¦Óúܹ㷺¡£
......