linuxÆô¶¯Ê±¹ÒÔØrootfsµÄ¼¸ÖÖ·½Ê½
[ת]linuxÆô¶¯Ê±¹ÒÔØrootfsµÄ¼¸ÖÖ·½Ê½
Ò»Ö±¶ÔlinuxÆô¶¯Ê±¹ÒÔØ¸ùÎļþϵͳµÄ¹ý³Ì´æÔÚןܶàÒÉÎÊ£¬½ñÌìÔÚˮľ¾«»ªÇøÕÒµ½ÁËÓÐÓõÄ×ÊÁÏ£¬ÕªÂ¼ÈçÏ£º
1¡£linuxÆô¶¯Ê±£¬¾¹ýһϵÁгõʼ»¯Ö®ºó£¬ÐèÒªmount ¸ùÎļþϵͳ£¬Îª×îºóÔËÐÐinit½ø³ÌµÈ×ö×¼±¸£¬mount
¸ùÎļþϵͳÓÐÕâô¼¸ÖÖ·½Ê½£º
1£©ÎļþϵͳÒѾ´æÔÚÓÚÓ²ÅÌ£¨»òÕßÀàËÆµÄÉ豸£©µÄij¸ö·ÖÇøÉÏÁË£¬kernel¸ù¾ÝÆô¶¯µÄÃüÁîÐвÎÊý£¨root£½/dev/xxx),Ö±½Ó½øÐÐmount¡£
ÕâÀïÓÐÒ»¸öÎÊÌ⣬ÔÚrootÎļþϵͳ±¾Éí»¹²»´æÔÚµÄÇé¿öÏ£¬kernelÈç
ºÎ¸ù¾Ý/dev/xxxÀ´ÕÒµ½¶ÔÓ¦µÄÉè±¸ÄØ£¿×¢Ò⣺¸ùÎļþϵͳºÍÆäËûÎļþϵͳµÄmount·½Ê½ÊDz»Ò»ÑùµÄ£¬kernelͨ¹ýÖ±½Ó½âÎöÉ豸µÄÃû³ÆÀ´»ñµÃÉ豸
µÄÖ÷¡¢´ÓÉ豸ºÅ£¬È»ºó¾Í¿ÉÒÔ·ÃÎʶÔÓ¦µÄÉ豸Çý¶¯
ÁË¡£ËùÒÔÔÚinit/main.cÖÐÓкܳ¤Ò»´®µÄroot_dev_names£¨Èç
hda,hdab,sda,sdb,nfs,ram,mtdblock……£©£¬Í¨¹ýÕâ¸ö±í¾Í¿ÉÒÔ¸ù¾ÝÉ豸Ãû³ÆµÃµ½É豸ºÅ¡£×¢Ò⣬bootloader»òÄÚ
ºËÖÐÉ趨µÄÆô¶¯²ÎÊý£¨root£½/dev/xxx)Ö»ÊÇÒ»¸ö´úºÅ£¬Êµ¼ÊµÄ¸ùÎļþϵͳÖв»Ò»¶¨´æÔÚÕâ¸öÉ豸Îļþ£¡
2£©´ÓÈíÇýµÈ±È½ÏÂýµÄÉ豸ÉÏ×°ÔØ¸ùÎļþϵͳ£¬Èç¹ûkernelÖ§³Öramdisk£¬ÔÚ×°ÔØrootÎļþϵͳʱ£¬ÄÚºËÅжϵ½ÐèÒª´ÓÈíÅÌ
£¨fdx£©mount(root=/dev/fd0)£¬¾Í»á×Ô¶¯°ÑÎļþϵͳӳÏó¸´ÖƵ½ramdisk£¬Ò»°ã¶ÔÓ¦É豸ram0£¬È»ºóÔÚram0ÉÏmount
¸ùÎļþϵͳ¡£ ´ÓÔ´Âë¿´£¬Èç¹ûkernel±àÒëʱûÓÐÖ§³Öramdisk£¬¶øÆô¶¯²ÎÊýÓÖÊÇroot=/dev/fd0,
ϵͳ½«Ö±½ÓÔÚÈíÅÌÉÏmount£¬³ýÁËËٶȱȽÏÂý£¬ÀíÂÛÉÏÊÇ¿ÉÐеģ¨Ã»ÊÔ¹ý£¬²»ÖªµÀÊDz»ÊÇÕâÑù£¿£©
3£©Æô¶¯Ê±Óõ½initrdÀ´mount¸ùÎļþϵͳ¡£×¢ÒâÀí½âramdiskºÍinitrdÕâÁ½¸ö¸ÅÄÆäʵramdiskÖ»ÊÇÔÚramÉÏʵÏֵĿéÉ豸£¬
ÀàËÆÓëÓ²Å̲Ù×÷£¬µ«Óиü¿ìµÄ¶ÁдËÙ¶È£¬Ëü¿ÉÒÔÔÚϵͳÔËÐеÄÈκÎʱºòʹÓ㬶ø²»½ö½öÊÇÓÃÓÚÆô¶¯£»initrd£¨boot
loader initialized RAM
disk£©¿ÉÒÔ˵ÊÇÆô¶¯¹ý³ÌÖÐÓõ½µÄÒ»ÖÖ»úÖÆ£¬¾ßÌåµÄʵÏÖ¹ý³ÌҲʹÓÃramdisk¼¼Êõ¡£¾ÍÊÇÔÚ×°ÔØlinux֮ǰ£¬bootloader¿ÉÒÔ°ÑÒ»¸ö±È½Ï
СµÄ¸ùÎļþϵͳµÄÓ³Ïó×°ÔØÔÚÄÚ´æµÄij¸öÖ¸¶¨Î»Ö㬹ÃÇÒ°ÑÕâ¶ÎÄÚ´æ³ÆÎªinitrd£¨ÕâÀïÊÇinitrdËùÕ¼µÄÄڴ棬²»ÊÇramdisk£¬×¢ÒâÇø±ð£©£¬È»ºó
bootloaderͨ¹ý´«µÝ²ÎÊýµÄ·½Ê½¸æËßÄÚºËinitrdµÄÆðʼµØÖ·ºÍ´óС£¨Ò²¿ÉÒÔ°ÑÕâЩ²ÎÊý±àÒëÔÚÄÚºËÖУ©£¬ÔÚÆô¶¯½×¶Î¾Í¿ÉÒÔÔÝʱµÄÓÃinitrd
À´mount¸ùÎļþϵͳ¡£initrdµÄ×î³õµÄÄ¿µÄÊÇΪÁ˰ÑkernelµÄÆô¶¯·Ö³ÉÁ½¸ö½×¶Î£ºÔÚkernelÖб£Áô×îÉÙ×î»ù±¾µÄÆô¶¯´úÂ룬Ȼºó°Ñ¶Ô¸÷ÖÖ¸÷
ÑùÓ²¼þÉè
Ïà¹ØÎĵµ£º
ÀýÒ»£º·¢ËÍ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ÐźŻúÖÆ
ÐźÅÌṩÁËÒ»ÖÖ֪ͨ½ø³Ìϵͳʼþ·¢ÉúµÄ»úÖÆ£¬ËüÒ²ÊÇ×÷ΪÓû§½ø³ÌÖ®¼äͨÐźÍͬ²½µÄ
Ò»ÖÖÔʼ»úÖÆ¡£ÔÚ½ø³ÌÇ¨ÒÆµÄÇé¿öÏ£¬ÈçºÎ´¦ÀíÐźÅÄØ£¿Õⲿ·Ö½éÉÜÁËMOSIXϵͳ¶ÔÐźÅ
»úÖÆµÄ´¦Àí¡£
LINUXÐźŻúÖÆ
ÐźÅÊÇÒì²½µÄ½ø³Ì¼äͨѶ»úÖÆ,ÊÇÔÚÈí¼þ²ã´ÎÉ϶ÔÖжϻúÖÆµÄÒ»ÖÖÄ£Äâ¡£LINUXÄں˵ÄÐÅ
ºÅ» ......
http://blog.csdn.net/noah1987/archive/2008/10/21/3118934.aspx
±¾³ÌÐò¿ÉÒÔ¶ÁÈ¡.wavÎļþ£¬È»ºó½øÐв¥·Å¡£
ʹÓÃǰ£¬ÇëÈ·ÈÏÄúÊÇ·ñ°²×°ÒôƵÇý¶¯¡£
È·ÈÏ·½·¨£ºcat /etc/sndstat£¬Èç¹ûÏÔʾÎÞ´ËÉ豸£¬ÔòûÓа²×°Çý¶¯¡£
°²×°Çý¶¯ºÜ¼òµ¥£¬µ½oss.comÉÏÏÂÔØÒôƵÇý¶¯£¬È»ºó°´ÕÕÍøÉϵĽ̳̽øÐоͿÉÒÔÁË¡£
Ô´´úÂëÈçÏ£º
#include ......
linux—selectÏê½â
selectϵͳµ÷ÓÃʱÓÃÀ´ÈÃÎÒÃǵijÌÐò¼àÊÓ¶à¸öÎļþ¾ä±úµÄ״̬±ä»¯µÄ¡£³ÌÐò»áÍ£ÔÚselectÕâÀïµÈ´ý£¬Ö±µ½±»¼àÊÓµÄÎļþ¾ä±úÓÐÒ»¸ö»ò¶à¸ö·¢ÉúÁË״̬¸Ä±ä¡£
¹ØÓÚÎļþ¾ä±ú£¬Æäʵ¾ÍÊÇÒ»¸öÕûÊý£¬Í¨¹ýsocketº¯ÊýµÄÉùÃ÷¾ÍÃ÷°×ÁË£º
int socket(int domain, int type, int protocol);
ÎÒÃÇ×îÊìϤµÄ¾ä±úÊÇ0¡¢1¡¢2 ......
Linux initial RAM disk (initrd) overview
Learn about its anatomy, creation, and use in the Linux boot process
M. Tim Jones
(mtj@mtjones.com
), Consultant Engineer, Emulex
M. Tim Jones is an embedded software architect and the author of GNU/Linux Application Programming
, AI Application Prog ......