Ïêϸ½éÉÜ Linux 2.6 É豸µÄÇý¶¯Ä£ÐÍ
linux 2.6 É豸Çý¶¯Ä£ÐÍ
1.±³¾°
Ëæ×ÅÉè±¸ÍØÆË½á¹¹Ô½À´Ô½¸´ÔÓ£¬ÐèҪΪÄں˽¨Á¢Ò»¸öͳһµÄÉ豸ģÐÍ£¬¶Ôϵͳ½á¹¹×öÒ»°ãÐԵijéÏóÃèÊö¡£
ÓÐÁ˸óéÏó½á¹¹£¬¿ÉÖ§³Ö¶àÖÖ²»Í¬µÄÈÎÎñ£º
a) µçÔ´¹ÜÀí Íê³ÉµçÔ´¹ÜÀí¹¤×÷ÐèÒª¶Ôϵͳ½á¹¹µÄÀí½â£¬ÇÒÓÐÑϸñµÄ˳Ðò£¬È磺һ¸öUSBËÞÖ÷ÊÊÅäÆ÷£¬ÔÚ´¦ÀíÍêËùÓÐÓëÆäÏàÁ¬½ÓµÄÉè±¸ÃæÇ°ÊDz»Äܹرյģ»
b) ÓëÓû§¿Õ¼äͨÐÅ ÓÉ/sysfsÐéÄâÎļþϵͳչʾÉ豸µÄÊôÐÔ
c) ÈȲå°ÎÉ豸
d) ¶ÔÏóÉúÃüÖÜÆÚ
2.sysfs ÐéÄâÎļþϵͳ
sysfs ÊÇÒ»¸öÌØÊâµÄÎļþϵͳ£¬ÀàËÆÓÚ/proc¡£sysfs²»½öÏó/procÒ»ÑùÔÊÐíÓû§¿Õ¼ä·ÃÎÊÄں˵ÄÊý¾Ý£¬¶øÇÒËüÒÔ¸ü½á¹¹»¯µÄ·½Ê½ÏòÓû§ÌṩÄÚºËÊý¾ÝÐÅÏ¢¡£
sysfsµÄÒ»¸öÄ¿µÄ¾ÍÊÇչʾÉ豸Çý¶¯Ä£ÐÍÖи÷×é¼þµÄ²ã´Î¹ØÏµ¡£Æä¶¥¼¶Ä¿Â¼°üÀ¨£º
a) block
b) device
c) bus
d) drivers
e) class
f) power
g) firmware
ÿ¸öĿ¼´ú±íÒ»¸ökobject¶ÔÏó£¬Ã¿¸öÎļþ´ú±íkobjectµÄÊôÐÔ¡£
3. Kobject¡¢Kset ºÍ subsystem
3.1 Kobject
Kobject ÊÇ×é³ÉÉ豸ģÐ͵Ļù±¾½á¹¹¡£ÀàËÆÓÚC++ÖеĻùÀ࣬ËüǶÈëÓÚ¸ü´óµÄ¶ÔÏóµÄ¶ÔÏóÖÐ--ËùνµÄÈÝÆ÷--ÓÃÀ´ÃèÊöÉ豸ģÐ͵Ä×é¼þ¡£Èçbus, devices, drivers ¶¼ÊǵäÐ͵ÄÈÝÆ÷¡£
ÈÝÆ÷ÓÐÁËkobjectÖ®ºó£¬ÔÊÐíÄںˣº
a) ±£´æ¶ÔÈÝÆ÷µÄÒýÓüÆÊý
b) ±£´æÈÝÆ÷Ö®¼äµÄ²ã´Î¹ØÏµ
c) Ϊÿ¸öÈÝÆ÷µÄÊôÐÔÌṩһ¸öÓû§ÊÓͼ
struct kobject{
char * k_name;
char name[20];
struct k_ref kref;
struct list_head entry;
struct kobject * parent;
struct kset * kset;
struct ktype *
Ïà¹ØÎĵµ£º
×ÜÀÀ
ÓÃiptables -ADC À´Ö¸¶¨Á´µÄ¹æ
Ôò
£¬-AÌí¼Ó -Dɾ³ý -C ÐÞ¸Ä
iptables - [RI] chain rule num rule-specification[option]
ÓÃiptables - RI ͨ¹ý¹æÔòµÄ˳ÐòÖ¸¶¨
iptables -D chain rule num[option]
ɾ³ýÖ¸¶¨¹æÔò
iptables -[LFZ] [chain][option]
ÓÃiptables -LFZ Á´Ãû [Ñ¡Ïî]
iptables -[NX] chain
ÓÃ -NX ......
Ëæ×ŹâÅ̼̿»úÔÚlinux¼ÆËã»úÉÏµÄÆÕ¼°£¬ÒÔisoΪÖ÷µÄ¹âÅÌÓ³ÏñÎļþÖÆ×÷¡¢×ª»»¡¢±à¼µÈ³ÉÁË´ó¼Ò·Ç³£¹ØÐĵĶ«Î÷¡£isoµÈ¸ñʽµÄÎļþÊÇÒ»ÖÖÊý¾ÝÔÚÊý¾Ý¹âÅÌÉϵÄ×éÖ¯ÐÎʽ£¬¼´¹âÅÌÉϵÄÎļþϵͳ¸ñʽ¡£ÄÇô£¬ÄÄЩÈí¼þ¿ÉÒÔÖÆ×÷¹âÅÌÓ³ÏñÎļþ£¬ËûÃǵĸñʽת»»¹¦ÄÜÓÖÊÇÈçºÎÄØ£¿ÄÄЩÈí¼þ¿ÉÒÔÖ±½ÓÖÆ×÷×ÔÆô¶¯µÄ¹âÅÌÄØ£¿Ãæ¶Ô¸÷ÖÖ¹âÅÌÓ³ÏñÖ ......
LinuxÎļþ²éÕÒÃüÁîfind,xargsÏêÊö
×ܽ᣺zhy2111314
À´×Ô£ºLinuxSir.Org
ÕûÀí£º±±ÄÏÄϱ±
ÕªÒª£º ±¾ÎÄÊÇfind ÃüÁîµÄÏêϸ˵Ã÷£¬¿É¹óµÄÊÇÕë¶Ô²ÎÊý¾ÙÁ˺ܶàµÄʵÀý£¬´óÁ¿µÄÀýÖ¤£¬ÈóõѧÕ߸üΪÈÝÒ×Àí½â£»±¾ÎÄÊÇzhyflyÐÖÌùÔÚÂÛ̳ÖУ»ÎÒ¶Ô±¾ÎĽøÐÐÁËÔÙ´ÎÕûÀí£¬Îª·½±ã´ó¼ÒÔĶÁ£»
Ŀ¼
°æÈ¨ÉùÃ÷
ǰÑÔ£º¹ØÓÚfindÃüÁî
Ò»¡¢ ......
£¨1£©¸ÅÊö
Executable and linking format(ELF)ÎļþÊÇx86 LinuxϵͳϵÄÒ»ÖÖ³£ÓÃÄ¿±êÎļþ(object file)¸ñʽ£¬ELFÎļþ¸ñʽ±È½Ï¸´ÔÓ£¬±¾ÎÄÖ»ÊǼòÒª½éÉÜËüµÄ½á¹¹¡£ÓÐÈýÖÖÖ÷ÒªÀàÐÍ£º
(1)ÊÊÓÚÁ¬½ÓµÄ¿ÉÖØ¶¨Î»Îļþ(relocatable file)£¬¿ÉÓëÆäËüÄ¿±êÎļþÒ»Æð´´½¨¿ÉÖ´ÐÐÎļþºÍ¹²ÏíÄ¿±êÎļþ¡£
(2) ......