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

[ת]linuxÉ豸ģÐÍ

Linux
2.6Äں˵ÄÒ»¸öÖØÒªÌØÉ«ÊÇÌṩÁËͳһµÄÄÚºËÉ豸ģÐÍ¡£Ëæ×ż¼ÊõµÄ²»¶Ï½ø²½£¬ÏµÍ³µÄÍØÆË½á¹¹Ô½À´Ô½¸´ÔÓ£¬¶ÔÖÇÄܵçÔ´¹ÜÀí¡¢ÈȲå°ÎÒÔ¼°plug and
playµÄÖ§³ÖÒªÇóÒ²Ô½À´Ô½¸ß£¬2.4ÄÚºËÒѾ­ÄÑÒÔÂú×ãÕâЩÐèÇó¡£ÎªÊÊÓ¦ÕâÖÖÐÎÊÆµÄÐèÒª£¬2.6Äں˿ª·¢ÁËȫеÄÉ豸ģÐÍ¡£
£±£® SysfsÎļþϵͳ
SysfsÎļþϵͳÊÇÒ»¸öÀàËÆÓÚprocÎļþϵͳµÄÌØÊâÎļþϵͳ£¬ÓÃÓÚ½«ÏµÍ³ÖеÄÉ豸×éÖ¯³É²ã´Î½á¹¹£¬²¢ÏòÓû§Ä£Ê½³ÌÐòÌṩÏêϸµÄÄÚºËÊý¾Ý½á¹¹ÐÅÏ¢¡£Æä¶¥²ãĿ¼Ö÷ÒªÓУº
BlockĿ¼£º°üº¬ËùÓеĿéÉ豸
DevicesĿ¼£º°üº¬ÏµÍ³ËùÓеÄÉ豸£¬²¢¸ù¾ÝÉ豸¹Ò½ÓµÄ×ÜÏßÀàÐÍ×éÖ¯³É²ã´Î½á¹¹
BusĿ¼£º°üº¬ÏµÍ³ÖÐËùÓеÄ×ÜÏßÀàÐÍ
DriversĿ¼£º°üÀ¨ÄÚºËÖÐËùÓÐÒÑ×¢²áµÄÉ豸Çý¶¯³ÌÐò
ClassĿ¼£ºÏµÍ³ÖеÄÉ豸ÀàÐÍ£¨ÈçÍø¿¨É豸£¬Éù¿¨É豸µÈ£©
£²£® Äں˶ÔÏó»úÖÆ¹Ø¼üÊý¾Ý½á¹¹
2.1 kobjectÄں˶ÔÏó
Kobject ÊÇLinux 2.6ÒýÈëµÄеÄÉ豸¹ÜÀí»úÖÆ£¬ÔÚÄÚºËÖÐÓÉstruct
kobject±íʾ¡£Í¨¹ýÕâ¸öÊý¾Ý½á¹¹Ê¹ËùÓÐÉ豸Ôڵײ㶼¾ßÓÐͳһµÄ½Ó¿Ú£¬kobjectÌṩ»ù±¾µÄ¶ÔÏó¹ÜÀí£¬Êǹ¹³ÉLinux
2.6É豸ģÐ͵ĺËÐĽṹ£¬ËüÓësysfsÎļþϵͳ½ôÃܹØÁª£¬Ã¿¸öÔÚÄÚºËÖÐ×¢²áµÄkobject¶ÔÏó¶¼¶ÔÓ¦ÓÚsysfsÎļþϵͳÖеÄÒ»¸öĿ¼¡£
Kobject½á¹¹¶¨ÒåΪ£º
struct
 kobject {
char
 
*
 k_name;    
//
 Ö¸ÏòÉ豸Ãû³ÆµÄÖ¸Õë
char
 name[KOBJ_NAME_LEN];   
//
 É豸Ãû³Æ
struct
 kref kref;    
//
 ¶ÔÏóÒýÓüÆÊý
struct
 list_head entry;   
//
 ¹Ò½Óµ½ËùÔÚksetÖÐÈ¥µÄµ¥Ôª
struct
 kobject 
*
 parent; 
//
 Ö¸Ïò¸¸¶ÔÏóµÄÖ¸Õë
struct
 kset 
*
 kset;    
//
 ËùÊôksetµÄÖ¸Õë
struct
 kobj_type 
*
 ktype;   
//
 Ö¸ÏòÆä¶ÔÏóÀàÐÍÃèÊö·ûµÄÖ¸Õë
struct
 dentry 
*
 dentry; 
//
 sysfsÎļþϵͳÖÐÓë¸Ã¶ÔÏó¶ÔÓ¦µÄÎļþ½Úµã·¾¶Ö¸Õë
};
ÆäÖеÄkrefÓò±íʾ¸Ã¶ÔÏóÒýÓõļÆÊý£¬ÄÚºËͨ¹ýkrefʵÏÖ¶ÔÏóÒýÓüÆÊý¹ÜÀí£¬ÄÚºËÌṩÁ½¸öº¯Êýkobject_get()¡¢kobject_put()·Ö±ðÓÃÓÚÔö¼ÓºÍ¼õÉÙÒýÓüÆÊý£¬µ±ÒýÓüÆÊýΪ0ʱ£¬ËùÓиöÔÏóʹÓõÄ×ÊÔ´½«±»ÊÍ·Å¡£
Ktype
ÓòÊÇÒ»¸öÖ¸Ïòkobj_type½á¹¹µÄÖ¸Õ룬±íʾ¸Ã¶ÔÏóµ


Ïà¹ØÎĵµ£º

Linux µÄ¶àÏ̱߳à³ÌµÄ¸ßЧ¿ª·¢¾­Ñé

2009 Äê 4 ÔÂ 23 ÈÕ
±¾ÎÄÖÐÎÒÃÇÕë¶Ô Linux É϶àÏ̱߳à³ÌµÄÖ÷ÒªÌØÐÔ×ܽá³ö 5 Ìõ¾­Ñ飬ÓÃÒÔ¸ÄÉÆ Linux ¶àÏ̱߳à³ÌµÄϰ¹ßºÍ±ÜÃâÆäÖеĿª·¢ÏÝÚå¡£ÔÚ±¾ÎÄÖУ¬ÎÒÃÇ´©²åһЩ Windows µÄ±à³ÌÓÃÀýÓÃÒÔ¶Ô±È Linux ÌØÐÔ£¬ÒÔ¼ÓÉî¶ÁÕßÓ¡Ïó¡£
±³¾°
Linux ƽ̨ÉϵĶàÏ̳߳ÌÐò¿ª·¢Ïà¶ÔÓ¦ÆäËûƽ̨£¨±ÈÈç Windows£©µÄ¶àÏß³Ì API ÓÐһЩϸ΢ ......

Èý¿î Linux ϵÄÃâ·Ñ×ÀÃæ¼¶É±¶¾Èí¼þ(ͼ)


ÓÉÓÚ Linux Á¼ºÃµÄÓû§È¨ÏÞ¹ÜÀíÌåϵ£¬²¡¶¾ÍùÍùÊÇ Linux ϵͳ¹ÜÀíÔ±×îºó²ÅÐèÒª¿¼ÂǵÄÎÊÌâ¡£ÒÔÍù£¬Linux ÉϵÄɱ¶¾Èí¼þÖ÷ÒªÊÇΪÆóÒµµÄÓʼþºÍÎļþ·þÎñÆ÷ËùÉè¼ÆµÄ¡£Èç½ñ£¬Ëæ×Å Linux ×ÀÃæÓû§ÊýÁ¿µÄÔö³¤£¬×ÀÃæÓû§ÔÚÊÜÒæÓÚ Linux ϵͳ¶Ô²¡¶¾½ÏÇ¿µÄÌìÈ»ÃâÒßÁ¦µÄͬʱ£¬Ò²ÐèҪɱ¶¾Èí¼þÇåÀí´ÓÍøÂç»òUÅÌ´øÀ´µÄWIndows²¡¶¾¡£¾¡¹ÜÄÇЩ ......

Linux¿Í»§¶ËʹÓÃSSHµÄÃüÁî¹ÜÀílinux·þÎñÆ÷






<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
TD P { margin-bottom: 0cm }
A:link { so-language: zxx }
-->
µÇ½£ºssh [hostname] 
ÊäÈëÃÜÂ룺*****
µÇ
½ÒÔºó¾Í¿ÉÒÔÏñ¿ØÖÆ×Ô¼ºµÄ»úÆ÷Ò»Ñù¿ØÖÆËüÁË£¬²»¹ýûÓпÉÊÓ»¯µÄ½çÃæ¡£²»¹ýÏÖÔÚ
ÎÒËùʹÓùýµÄÁ½¸ö°æ±¾Linux( ......

¹ØÓÚLINUXÖеÄFORKº¯Êý

Ò»Ö±ÏëдµãLINUXÖеÄFORKº¯Êý,µ«ÊǰÉ,ÎÒʵÔÚÊÇÌ«ÀÁÁË,ÔÙ¼ÓÉÏÎIJɲ»ÔõôºÃ,ËùÒԾʹÓÍøÉÏÕÒÁËÆªÐ´µÄ²»´íµÄÎÄÕÂ,¿´ÍêÖ®ºóÓ¦¸Ã¶ÔFORKº¯ÊýÓÐÒ»¶¨µÄÁ˽â~~
 
¸ø³öÈçÏÂC³ÌÐò£¬ÔÚlinuxÏÂʹÓÃgcc±àÒ룺
1 #include "stdio.h"
2 #include "sys/types.h"
3 #include "unistd.h"

5  int  main()
6 ......

linux date ÃüÁîÏê½â

linux date ÃüÁîÏê½â
 
ʹÓ÷½Ê½ :
date [-u] [-d datestr] [-s datestr]
[--utc] [--universal] [--date=datestr] [--set=datestr] [--help]
[--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]]
˵Ã÷ :
date ¿ÉÒÔÓÃÀ´ÏÔʾ»òÉ趨ϵͳµÄÈÕÆÚÓëʱ¼ä£¬ÔÚÏÔʾ·½Ã棬ʹÓÃÕß¿ÉÒÔÉ趨ÓûÏÔʾµÄ¸ñʽ£¬¸ñʽÉ趨Ϊһ¸ö¼Óº ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ