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

LinuxÉ豸Çý¶¯¿ª·¢Ïê½â ±Ê¼Ç5 LinuxÎļþÓëÉ豸ϵͳ

Ó¦ÓóÌÐòºÍVFSÖ®¼äµÄ½Ó¿ÚÊÇϵͳµ÷Ó㬶øVFSÓë´ÅÅÌÎļþϵͳÒÔ¼°ÆÕͨÉ豸֮¼äµÄ½Ó¿ÚÊÇfile_operations½á¹¹Ìå³ÉÔ±º¯Êý¡£ÓÉÓÚ×Ö·ûÉ豸µÄÉϲãûÓдÅÅÌÎļþϵͳ£¬ËùÒÔ×Ö·ûÉ豸µÄfile_operations³ÉÔ±º¯ÊýÖ±½ÓÓÉÉ豸Çý¶¯ÌṩÁË£¬file_operationsÕýÊÇ×Ö·ûÉ豸Çý¶¯µÄºËÐÄ£¬Èçͼ£º
 
¶ø¶Ô¿éÉ豸À´Ëµ£¬ext2¡¢fat¡¢jffs2µÈÎļþϵͳÖлáʵÏÖÕë¶ÔVFSµÄfile_operations³ÉÔ±º¯Êý£¬É豸Çý¶¯²ã½«¿´²»µ½file_operationsµÄ´æÔÚ¡£´ÅÅÌÎļþϵͳºÍÉ豸Çý¶¯»á½«¶Ô´ÅÅÌÉÏÎļþµÄ·ÃÎÊ×îÖÕת»»³É¶Ô´ÅÅÌÉÏÖùÃæºÍÉÈÇøµÄ·ÃÎÊ
ÔÚÉ豸Çý¶¯³ÌÐòµÄÉè¼ÆÖУ¬Ò»°ã¶øÑÔ£¬»á¹ØÐĽṹÌåfileºÍinodeÕâ¸öÁ½¸ö½á¹¹Ìå
Ò»¸öfile½á¹¹ÌåʵÀý¶ÔÓ¦Ò»¸ö´ò¿ªµÄÎļþ£¬file½á¹¹ÌåÖеÄf_mode£¨Îļþ¶Áдģʽ£©¡¢f_flags£¨±êÖ¾£©¶¼ÊÇÉ豸Çý¶¯¹ØÐĵ쬶øË½ÓÐÊý¾ÝÖ¸Õëprivate_dataÔÚÉ豸Çý¶¯Öб»¹ã·ºÓ¦Ó㬴ó¶àÖ¸ÏòÉ豸Çý¶¯×Ô¶¨ÒåÓÃÓÚÃèÊöÉ豸µÄ½á¹¹Ìå
inode°üº¬Îļþ·ÃÎÊȨÏÞ¡¢ÊôÖ÷¡¢×é¡¢´óС¡¢Éú³Éʱ¼ä¡¢·ÃÎÊʱ¼ä¡¢×îºóÐÞ¸Äʱ¼äµÈÐÅÏ¢¡£ÊÇLinux¹ÜÀíÎļþϵͳµÄ×î»ù±¾µ¥Î»£¬Ò²ÊÇÎļþϵͳÁ¬½ÓÈκÎ×ÓĿ¼¡¢ÎļþµÄÇÅÁº¡£
ÆäÖеÄi_rdev×ֶεĸß12λΪÊÇÖ÷É豸ºÅ£¬ºó20λΪ´ÎÉ豸ºÅ
Devfs£¨É豸Îļþϵͳ£©Óŵ㣺
1¡¢¿ÉÒÔͨ¹ý³ÌÐòÔÚÉ豸³õʼ»¯Ê±ÔÚ/devĿ¼Ï´´½¨É豸Îļþ£¬Ð¶ÔØÊ±½«Ëüɾ³ý
2¡¢É豸Çý¶¯³ÌÐò¿ÉÒÔÖ¸¶¨É豸Ãû¡¢ËùÓÐÕß¡¢È¨ÏÞ룬Óû§¿Õ¼ä³ÌÐòÈÔ¿ÉÒÔÐÞ¸ÄËùÓÐÕߺÍȨÏÞλ
3¡¢ÔÚ³ÌÐòÖпÉÒÔÖ±½Ó¸øregister_chrdev()´«µÝ0Ö÷É豸ºÅÒÔ¶¯Ì¬»ñµÃ¿ÉÓõÄÖ÷É豸ºÅ£¬²¢ÔÚdevfs_register()ÖÐÖ¸¶¨´ÎÉ豸ºÅ
ÔÚLinux2.4µÄÉ豸Çý¶¯±à³ÌÖУ¬·Ö±ðÔÚÄ£¿é¼ÓÔØºÍÐ¶ÔØº¯ÊýÖд´½¨ºÍ³·ÏúÉ豸ÎļþÊDZ»ÆÕ±é²ÉÓò¢ÖµµÃ´óÁ¦ÍƼöµÄºÃ·½·¨£ºregister_chrdev£¨……£©-->devfs_register£¨……£©--> devfs_unregister£¨……£©--> unregister_chrdev(……)
Linux2.6ÖÐudevÈ¡´úÁËdevfs
UdevÍêÈ«¹¤×÷ÔÚÓû§Ì¬£¬ÀûÓÃÉ豸¼ÓÈë»òÒÆ³ýʱÄÚºËËø·¢Ë͵ÄÈȲå°ÎʼþÀ´¹¤×÷£¬ÔÚÈȲå°Îʽ£¬É豸µÄÏêϸÐÅÏ¢»áÓÉÄÚºËÊä³öµ½/sysµÄsysfsÎļþϵͳ
Linux2.6ÄÚºËÒýÈëÁËsysfsÎļþϵͳ£¬sysfs±»¿´³ÉÊÇÓëproc¡¢devfs¡¢devptyͬÀàµÄÎļþϵͳ£¬¸ÃÎļþϵͳʽһ¸öÐéÄâµÄÎļþϵͳ£¬Ëü¿ÉÒÔ²úÉúÒ»¸ö°üÀ¨ËùÓÐϵͳӲ¼þµÄ²ã¼¶ÊÓͼ£¬ÓëÌṩ½ø³ÌºÍ״̬ÐÅÏ¢µÄprocÎļþϵͳʮ·ÖÏàËÆ
SysfsµÄÒ»¸öÄ¿µÄ¾ÍÊÇչʾÉ豸Çý¶¯Ä£ÐÍÖи÷×é¼þµÄ²ã´Î¹ØÏµ
ÔÚ/sys/busµÄpciµÈ×ÓĿ¼Ï£¬Óлá·Ö³ödriversºÍdevicesĿ¼£¬¶ødevic


Ïà¹ØÎĵµ£º

ÔÚlinuxÏÂÊäÈ볤ÎļþÃûС¼¼ÇÉ

Tab Tab Tab
±ÈÈ磺ÓÐÒ»¸öÎļþµÄÃû×Ö½Ð×÷alsa-divers-0.39.tar.gz£¬Õ⻹²»ËãºÜ³¤°É¡£ µ±ÄãÐèҪƵ·±µÄÊäÈëÕâ¸öÎļþµÄÃû×ÖµÄʱºò£¬ÄѵÀÄã²»¾õµÃÕâÊÇÒ»ÖÖÎÞÒÔÃû×´µÄÍ´¿àÂð£¿ÄÇôÎÒÏë¶ÔÄã˵һ¾ä£º²»ÒªÐÄ·³£¬Äã¿ÉÒÔÊÔÒ»ÊÔÔÚÊäÈëalsaºó°´Ò»Ï£ÃapsLock¼üÉÏ·½µÄ£Ôab¼ü¡£ÔõôÑùʹÄãÑÛǰһÁÁ°É£¬linuxÒѾ­Ææ¼£°ãµÄ×Ô¶¯²¹È«ÁËÎļþÃû¡ ......

LinuxС¼¼ÇÉÊÕ¼¯

LinuxС¼¼ÇÉÊÕ¼¯
ǰÑÔ£ºÒòΪÓÃLinuxµÄʱ¼äÔ½À´Ô½³¤£¬ËùÐèÒª×öµÄÊÂÒ²Ô½À´Ô½¶à£¬Ð§ÂʳÉÁËÎÒ±ØÐèÍ»ÆÆµÄÆ¿¾±¡£ÔÚ´Ë×ܽáÒ»ÏÂÕâ¶Îʱ¼äÓùýµÄһЩºÃµÄLinux¼¼ÇÉ¡£ÒÔºóʱ³£²¹³äÕâÑù×Ô¼ºÒªÓõÄʱºò¾ÍºÜ·½±ãÁË¡£
Author:Ajian
[Îı¾´¦Àí]
1¡¢²é¿´Ä³ÎļþµÄÒ»²¿·Ö
Èç¹ûÄãÖ»Ïë¿´ÎļþµÄǰ 5 ÐУ¬¿ÉÒÔʹÓà head ÃüÁ
È磺head -5 ......

Linux »ñȡϵͳʱ¼ä

1.ʱ¼ä±íʾ
ÔÚ³ÌÐòµ±ÖÐ,ÎÒÃǾ­³£ÒªÊä³öϵͳµ±Ç°µÄʱ¼ä,±ÈÈçÎÒÃÇʹÓÃdateÃüÁîµÄÊä³ö½á¹û¡£Õâ¸öʱºòÎÒÃÇ¿ÉÒÔʹÓÃÏÂÃæÁ½¸öº¯Êý
time_t time(time_t *tloc);                    //ʱ¼ä¾«¶ÈΪÃë
char *ctime(const time_ ......

arm linux µÈ´ý¶ÓÁмòµ¥·ÖÎö

Author-------Dansen-----xzd2734@163.com
wait_queue_head_t wait_q;
Ê×ÏÈ¿´¿´
wait_queue_head_tÕâ¸öµÈ´ý¶ÓÁеĽṹ
ÔÚwait.hÖж¨ÒåÁËÕâ¸ö½á¹¹
typedef struct
__wait_queue_head wait_queue_head_t;
struct __wait_queue_head {
 wq_lock_t
lock;
 struct list_head task_list;
};
# define wq_ ......

µÚÒ»¸öǶÈëʽLinuxµÄÇý¶¯³ÌÐò

   ´ÓÕâ¸ö×ܽáÕýʽ¿ªÊ¼ÁËÎÒµÄÇý¶¯Ö®Âã¬ÐÄÇé²»ÃâÓе㼤¶¯£¬¾¡¹ÜÏÖÔÚ¶ÔÇý¶¯µÄ±àд»¹ºÜÄ£ºý£¬µ«»¹ÊÇÓмÍÄîÒâÒåµÄ……
 
¿ª·¢Æ½Ì¨£º
    ÐéÄâ»úÏÂRedHat9£¬ÄÚºË2.4.20.8
    ½»²æ±àÒë±àÒëÆ÷£ºÌìǶ¹«Ë¾ÌṩµÄarm-linux-gcc 4.3.3
    ÄÚºËÊ÷£º/h ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ