Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

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


Ïà¹ØÎĵµ£º

ʵսLinux Bluetooth±à³Ì(Áù) L2CAP±à³ÌʵÀý

ÀýÒ»£º·¢ËÍ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 ......

[תÌû]LinuxÇý¶¯¿ª·¢Ñ§Ï°µÄһЩ±ØÒª²½Öè

 1. ѧ»áд¼òµ¥µÄmakefile
2. ±àһЩӦÓÃ
³ÌÐò
£¬¿ÉÒÔÓÃmakefileÅÜÆðÀ´
3. ѧ»áдÇý¶¯
µÄmakefile
4. дһ¼òµ¥charÇý¶¯£¬makefile±àÒëͨ¹ý£¬¿ÉÒÔinsmod£¬ lsmod£¬ rmmod. ÔÚÇý¶¯µÄinitº¯ÊýÀï´òÓ¡hello world£¬insmodºóÓ¦¸ÃÄܹ»Í¨¹ýdmesg¿´µ½Êä³ö
¡£
5. дһÍêÕûÇý¶¯£¬ ¼ÓÉÏread£¬ write£¬ ioctl£¬ pollingµÈ¸ ......

linuxÃÜÂëÆÆ½âÓë·ÀÆÆ½â

Ò»¡¢¹ØÓÚlilo
1. ÔÚ³öÏÖ lilo: Ìáʾʱ¼üÈë linux single    »­ÃæÏÔʾ lilo: linux single
2. »Ø³µ¿ÉÖ±½Ó½øÈëlinuxÃüÁîÐÐ
3. ÓÃpasswordÃüÁîÐÞ¸ÄÃÜÂë
¶þ¡¢¹ØÓÚ grub
1. ÔÚ³öÏÖgrub»­ÃæÊ±£¬ÓÃÉÏϼüÑ¡ÖÐÄãÆ½Ê±Æô¶¯linuxµÄÄÇÒ»ÏȻºó°´e¼ü 2. ÔÙ´ÎÓÃÉÏϼüÑ¡ÖÐÄãÆ½Ê±Æô¶¯linuxµÄÄÇÒ»Ïî(ÀàËÆÓÚkernel ......

Linux virtual server¡¾LVS¡¿

1. Two methods to construct the cluster of servers
(1). DNS based load balancing cluster
DNS load balancing is probably the simplest method to build network
service cluster. It uses Domain Name System to distribute requests to
different servers through resolving the domain name to different IP
......

LinuxÖеȴý¶ÓÁлúÖÆ·ÖÎö

 LinuxÖеȴý¶ÓÁлúÖÆ·ÖÎö
 
ʲôÊǵȴý¶ÓÁУ¿
       ÔÚÈí¼þ¿ª·¢ÖÐÈÎÎñ¾­³£ÓÉÓÚijÖÖÌõ¼þûÓеõ½Âú×ã¶ø²»µÃ²»½øÈë˯Ãß״̬£¬È»ºóµÈ´ýÌõ¼þµÃµ½Âú×ãµÄʱºòÔÙ¼ÌÐøÔËÐУ¬½øÈëÔËÐÐ״̬¡£ÕâÖÖÐèÇóÐèÒªµÈ´ý¶ÓÁлúÖÆµÄÖ§³Ö¡£LinuxÖÐÌṩÁ˵ȴý¶ÓÁеĻúÖÆ£¬¸Ã»úÖÆÔÚÄÚºËÖÐÓ¦Óúܹ㷺¡£ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ