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

LinuxÉ豸ģÐÍ

¿´LDD3ÖÐÉ豸ģÐÍÒ»Õ£¬¾õµÃ˼άÓÐЩ»ìÂÒ¡£ÕâÀï´ÓÕûÌåµÄ½Ç¶ÈÀ´ÀíÀí˼·¡£
±¾ÎÄ´ÓËĸö·½ÃæÀ´×ܽáһЩÄÚÈÝ£º
1.µ×²ãÊý¾Ý½á¹¹£ºkobject,kset.
2.linuxÉ豸ģÐͲã´Î¹ØÏµ£ºbus_type,device,device_driver.
3.¼¯³É£ºPCIÉ豸Çý¶¯Ä£ÐÍʵÀý¼°É豸£¬É豸Çý¶¯×¢²áÔ´ÂëµÄ¼òµ¥·ÖÎö.
4.ÃæÏò¶ÔÏóµÄ˼ÏëÔÚlinuxÉ豸ģÐÍÖеÄÓ¦Ó÷ÖÎö.
 
Ò»¡¢µ×²ãÊý¾Ý½á¹¹£ºkobject,kset
ÏÈ˵˵ģÐ͵ÄÒâÒå:
×ÜÌåÀ´ËµÊÇΪÁËϵͳµØ¹ÜÀíËùÓÐÉ豸¡£
 
kobject 
½áºÏÃæÏò¶ÔÏóµÄ˼ά¡£Õâ¸ökobjectÊôÓÚ×î»ù´¡µÄ½á¹¹£¬Ò²¾ÍÊÇ×î¸ß³éÏó²ã(ÓеãÏñjavaÖеÄCobjectÀà)¡£ÈκÎÒ»¸öÉ豸ģÐÍÈç×ÜÏߣ¬É豸£¬Çý¶¯¶¼ÊôÓÚÒ»¸ökobject ¡£ÔÚʵÏÖÉÏÕâÖÖÅÉÉú¹ØÏµ¾ÍÊÇÔڽṹÌåÖаüº¬Ò»¸ökobjectµÄ±äÁ¿¡£
Õâ¸öÔÚ²ã´ÎÉÏ´¦Àí×î¶¥²ãµÄkobject½á¹¹ÌṩÁËËùÓÐÄ£ÐÍÐèÒªµÄ×î»ù±¾µÄ¹¦ÄÜ£º
1 ÒýÓüÆÊý  ÓÃÓÚÄÚºËά»¤Æä´æÔÚÓëÏûÍö
2 sysfs±íʾ  Ã¿¸ösys/ϵĶÔÏó¶ÔÓ¦×ÅÒ»¸ökobject¡£
3 ÈȰβåʼþ´¦Àí¡£ ´¦ÀíÉ豸µÄÈȰβåʼþ¡£
Kobjects ÔÚÄÚºËÖжÔÓ¦ÓÐÒ»Ì×ÉêÇ룬³õʼ»¯£¬Ìí¼Ó£¬×¢²á£¬¼ÆÊý²Ù×÷£¬ÊͷŵȺ¯Êý
struct kobject {
 const char  * k_name; Ãû
 char   name[KOBJ_NAME_LEN];
 struct kref  kref; ¼ÆÊý
 struct list_head entry; ÓÃÓÚÁ¬½Óµ½Í¬ÀàkobjectsµÄÁ´±í
 struct kobject  * parent;  ÓÃÓÚʵÏÖ²ã´Î£¬Ö¸ÏòÆä¸¸¶ÔÏó¡£
 struct kset  * kset; ÓÃÓÚʵÏÖ²ã´Î£¬ËùÊôµÄ¼¯ºÏ
 struct kobj_type * ktype;  Ö¸Ïò¶ÔÏóµÄÀàÐÍ¡£
 struct dentry  * dentry;  Ö¸Ê¾ÔÚsysfs ÖеÄĿ¼Ïî
 wait_queue_head_t poll;
}; (linux 2.6.18)
Kset ºÍkobj_type struct kset {
 struct subsystem * subsys;  ÔÚ×îÐÂÄÚºËÖÐÒѾ­Ã»ÓÐsubsys¸ÅÄîÁË¡£Í³Ò»ÓÃksets
 struct kobj_type * ktype;   ÀàÐÍ¡£
 struct list_head list;    Í¬Ò»ksetµÄÁ´±í
 spinlock_t  list_lock;
 struct kobject  kobj; ×ÔÉí


Ïà¹ØÎĵµ£º

ÔÚlinuxÏÂʵÏÖweb qqµÄ×ÀÃæ»¯


´´½¨×ÀÃæÍ¼±ê
Ŀǰ½«ÍøÂçÓ¦ÓÃÀ©Õ¹µ½×ÀÃæÊÇÒ»¸öÇ÷ÊÆ£¬´æÔÚןܶà½â¾ö·½°¸£¬±¾ÎÄÒÔ Mozilla Prism ΪÀý£¬ÀàËÆµÄ·½·¨Í¬ÑùÊÊÓÃÓÚ Google Chrome ¡£
1. µ½ Mozilla Prism µÄÍøÕ¾ÉÏÏÂÔØ Prism£¬µã»÷ Download Now Ö®ºó»áÌáʾÓÐÁ½ÖÖ£¬Ò»ÖÖÊÇÒÔ Mozilla Firefox À©Õ¹µÄ·½Ê½£¬ÊʺÏÒѾ­°²×°ÓÐ Firefox µÄÅóÓÑ£»Ò»Ö ......

linuxÍøÂç±à³Ì±Ê¼Ç

Ò» ÈýÖÖÀàÐ͵ÄÌ×½Ó×Ö£º
1.Á÷ʽÌ×½Ó×Ö£¨SOCKET_STREAM)
    Ìá¹©ÃæÏòÁ¬½ÓµÄ¿É¿¿µÄÊý¾Ý´«Êä·þÎñ¡£Êý¾Ý±»¿´×÷ÊÇ×Ö½ÚÁ÷£¬ÎÞ³¤¶ÈÏÞÖÆ¡£ÀýÈçFTPЭÒé¾Í²ÉÓÃÕâÖÖ¡£
2.Êý¾Ý±¨Ê½Ì×½Ó×Ö£¨SOCKET_DGRAM£©
    ÌṩÎÞÁ¬½ÓµÄÊý¾Ý´«Êä·þÎñ£¬²»±£Ö¤¿É¿¿ÐÔ¡£
3.ԭʼʽÌ×½Ó×Ö£¨SOCKET_RAW£©
   ......

Linux ÏÂgetch()ºÍgetche()

LinuxÏÂgetch()ºÍgetche()
I would recommend never mixing input techniques in a program. Don't mix fgets() or scanf() with getchar(). Don't mix any standerd C library input function with a non-standard function that bypasses the C stream mechanism, be that getch(), getche(), bioskey(), or anything el ......

Linux mysql°²×°ÐÞ¸ÄrootÃÜÂë·þÎñ

ÔÚÏò´ó¼ÒÏêϸ½éÉÜLinux mysql֮ǰ£¬Ê×ÏÈÈôó¼ÒÁ˽âÏÂLinux mysql£¬È»ºóÈ«Ãæ½éÉÜLinux mysql£¬Ï£Íû¶Ô´ó¼ÒÓÐÓá£
1. Linux mysql°²×°£º
$ yum install mysql-server
2. Linux mysqlÐÞ¸ÄrootÃÜÂ룺
$ mysqladmin -u root password
your_new_passwd
3. Æô¶¯Linux mysql·þÎñ
$ /etc/init.d/mysqld start
4. Ìí¼ÓΪϵͳ· ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ