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

½âÎö Linux ÖÐµÄ VFS Îļþϵͳ»úÖÆ

1. ÕªÒª
±¾ÎIJûÊö Linux ÖеÄÎļþϵͳ²¿·Ö£¬Ô´´úÂëÀ´×Ô»ùÓÚ IA32 µÄ 2.4.20 Äںˡ£×ÜÌåÉÏ˵ Linux
ϵÄÎļþϵͳÖ÷Òª¿É·ÖΪÈý´ó¿é£ºÒ»ÊÇÉϲãµÄÎļþϵͳµÄϵͳµ÷Ó㬶þÊÇÐéÄâÎļþϵͳ VFS(Virtual Filesystem
Switch)£¬ÈýÊǹÒÔØµ½ VFS Öеĸ÷ʵ¼ÊÎļþϵͳ£¬ÀýÈç ext2£¬jffs µÈ¡£±¾ÎIJàÖØÓÚͨ¹ý¾ßÌåµÄ´úÂë·ÖÎöÀ´½âÊÍ Linux ÄÚºËÖÐ
VFS µÄÄÚÔÚ»úÖÆ£¬ÔÚÕâ¹ý³ÌÖлáÉæ¼°µ½ÉϲãÎļþϵͳµ÷ÓúÍϲãʵ¼ÊÎļþϵͳµÄÈçºÎ¹ÒÔØ¡£ÎÄÕÂÊÔͼ´ÓÒ»¸ö±È½Ï¸ßµÄ½Ç¶ÈÀ´½âÊÍ Linux Ï嵀 VFS
Îļþϵͳ»úÖÆ£¬ËùÒÔÔÚÐðÊöÖиü²àÖØÓÚÕû¸öÄ£¿éµÄÖ÷ÂöÂ磬¶ø²»¾ÐÄàÓÚϸ½Ú£¬Í¬Ê±ÅäÓÐÈô¸ÉÕŲåͼ£¬ÒÔ°ïÖú¶ÁÕßÀí½â¡£
Ïà¶ÔÀ´Ëµ£¬VFS
²¿·ÖµÄ´úÂë±È½Ï·±Ëö¸´ÔÓ£¬Ï£Íû¶ÁÕßÔÚÔĶÁÍê±¾ÎÄÖ®ºó£¬ÄÜ¶Ô Linux Ï嵀 VFS
ÕûÌåÔË×÷»úÖÆÓиöÇå³þµÄÀí½â¡£½¨Òé¶ÁÕßÔÚÔĶÁ±¾ÎÄǰ£¬Ïȳ¢ÊÔ×Å×Ô¼ºÔĶÁÒ»ÏÂÎļþϵͳµÄÔ´´úÂ룬ÒԱ㽨Á¢Æð Linux
ÏÂÎļþϵͳ×î»ù±¾µÄ¸ÅÄ±ÈÈçÖÁÉÙÓ¦ÊìϤ super block, dentry, inode£¬vfsmount
µÈÊý¾Ý½á¹¹Ëù±íʾµÄÒâÒ壬ÕâÑùÔÙÀ´ÔĶÁ±¾ÎÄÒÔ±ã¼ÓÉîÀí½â¡£
2. VFS ¸ÅÊö
VFS ÊÇÒ»ÖÖÈí¼þ»úÖÆ£¬Ò²Ðí³ÆËüΪ Linux
µÄÎļþϵͳ¹ÜÀíÕ߸üÈ·Çе㣬ÓëËüÏà¹ØµÄÊý¾Ý½á¹¹Ö»´æÔÚÓÚÎïÀíÄÚ´æµ±ÖС£ËùÒÔÔÚÿ´Îϵͳ³õʼ»¯ÆÚ¼ä£¬Linux ¶¼Ê×ÏÈÒªÔÚÄÚ´æµ±Öй¹ÔìÒ»¿Ã VFS
µÄĿ¼Ê÷(ÔÚ Linux µÄÔ´´úÂëÀï³ÆÖ®Îª namespace)£¬Êµ¼ÊÉϱãÊÇÔÚÄÚ´æÖн¨Á¢ÏàÓ¦µÄÊý¾Ý½á¹¹¡£VFS Ŀ¼Ê÷ÔÚ Linux
µÄÎļþϵͳģ¿éÖÐÊǸöºÜÖØÒªµÄ¸ÅÄϣÍû¶ÁÕß²»Òª½«ÆäÓëʵ¼ÊÎļþϵͳĿ¼Ê÷»ìÏý£¬ÔÚ±ÊÕß¿´À´£¬VFS
Öеĸ÷Ŀ¼ÆäÖ÷ÒªÓÃ;ÊÇÓÃÀ´Ìṩʵ¼ÊÎļþϵͳµÄ¹ÒÔØµã£¬µ±È»ÔÚ VFS
ÖÐÒ²»áÉæ¼°µ½Îļþ¼¶µÄ²Ù×÷£¬±¾ÎIJ»²ûÊöÕâÖÖÇé¿ö¡£ÏÂÎÄÌᵽĿ¼Ê÷»òĿ¼£¬Èç¹û²»Ìرð˵Ã÷£¬¾ùÖ¸ VFS µÄĿ¼Ê÷»òĿ¼¡£Í¼ 1
ÊÇÒ»ÖÖ¿ÉÄܵÄĿ¼Ê÷ÔÚÄÚ´æÖеÄÓ°Ïñ£º
ͼ 1£ºVFS Ŀ¼Ê÷½á¹¹
3. ÎļþϵͳµÄ×¢²á
ÕâÀïµÄÎļþϵͳÊÇÖ¸¿ÉÄܻᱻ¹ÒÔØµ½Ä¿Â¼Ê÷Öеĸ÷¸öʵ¼ÊÎļþϵͳ£¬Ëùνʵ¼ÊÎļþϵͳ£¬¼´ÊÇÖ¸VFS
ÖеÄʵ¼Ê²Ù×÷×îÖÕҪͨ¹ýËüÃÇÀ´Íê³É¶øÒÑ£¬²¢²»Òâζ×ÅËüÃÇÒ»¶¨Òª´æÔÚÓÚijÖÖÌØ¶¨µÄ´æ´¢É豸ÉÏ¡£±ÈÈçÔÚ±ÊÕßµÄ Linux »úÆ÷ϾÍ×¢²áÓÐ
"rootfs"¡¢"proc"¡¢"ext2"¡¢"sockfs" µÈÊ®¼¸ÖÖÎļþϵͳ¡£
3.1 Êý¾Ý½á¹¹
ÔÚ Linux Ô´´úÂëÖУ¬Ã¿ÖÖʵ¼ÊµÄÎļþϵͳÓÃÒÔϵÄÊý¾Ý½á¹¹±íʾ£º
struct file_system_type {
const char *name;
int fs_flags;
struct super_block *(*read_super) (struct super_bloc


Ïà¹ØÎĵµ£º

ʵսLinux Bluetooth±à³Ì£¨Èý£© HCI²ã±à³Ì

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ϰ²×°Sqlite

°²×°Sqlite
Ê×ÏÈÊÇÏÂÔØsqlite-3.3.8.tar.gz¡£
1¡¢½âѹsqlite-3.3.8.tar.gz£ºtar –xzvf sqlite-3.3.8.tar.gz,µÃµ½sqlite-3.3.8µÄÎļþ¡£
2¡¢ÔÚsqlite-3.3.8ͬһĿ¼Ï´´½¨sqliteÎļþ£ºmkdir sqlite
3¡¢Cd sqlite
4¡¢Ö´ÐÐconfigureÉú³É°²×°³ÌÐò
5¡¢   ../sqlite-3.3.8/configure --prefix=/home/work/zd ......

linux·þÎñÆ÷ÖØÆôºó£¬ÍøÂç²»ÄÜÕý³£Á¬½Ó

   ¹«Ë¾Linux·þÎñÆ÷ÖØÆôºó£¬ÍøÂç²»ÄÜÕý³£Á¬½Ó£¬ÎÒͬÊÂÕÒµ½Á˽â¾ö·½·¨£¬ÎÒÔÚÕâÀï·ÖÏíһϡ£
   ÍøÂç²»ÄÜÕý³£Á¬½Ó£¬ÊÇÒòΪûÓÐÕýÈ·¼ÓÔØLinuxÍø¿¨Çý¶¯£¬½â¾ö·½·¨Îª£º
   ÓÃrootÓû§µÇ¼ϵͳºó£¬ÒÀ´ÎÖ´ÐÐÈçÏÂÃüÁî
   cd /lib/modules/[°æ±¾ºÅ]/kernel/drivers/net    ......

Linux GRUB ·½Ê½Çл»Æô¶¯¼¶±ð(runlevel)

    ÊÂÒòÐÞ¸ÄÁËij¸öÅäÖÃÎļþ£¬µ¼ÖÂϵͳÆô¶¯Ä³¸ö·þÎñµÄʱºòholdסÁË£¬ÏµÍ³Æô¶¯²»ÆðÀ´¡£ÕâÖÖÇé¿öϳ£³£Í¨¹ýÐ޸ıíÆô¶¯¼¶±ð£¬Çл»µ½·ÇxwindowģʽÏÂÖØÐÂÆô¶¯£¬Ò»°ãѡȡÆô¶¯¼¶±ðrunlevelΪ3¼´¿É¡£
²Î¿¼»·¾³£ºRedhat Enterprise Linux AS 4
²½Ö裺
1.µ±LinuxÆô¶¯Ê±£¬°´ e  ½øÈ¥²ÎÊýÑ¡Ôñ±à¼­½çÃæ£º
2.ÒÆ¶ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ