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

linux 2.4 ºÍ2.6 ÄÚºËÇø±ð

Ëæ×ÅLinux2.6µÄ·¢²¼£¬ÓÉÓÚ2.6ÄÚºË×öÁ˽̵ĸĶ¯£¬¸÷¸öÉ豸µÄÇý¶¯³ÌÐòÔÚ²»Í¬³Ì¶ÈÉÏÒª
½øÐиÄд¡£ÎªÁË·½±ã¸÷λLinux°®ºÃÕßÎÒ°Ñ×Ô¼ºÕû
ÀíµÄÕâ·ÖÎĵµshare³öÀ´¡£¸ÃÎĵ±ÁоÙ
ÁË2.6ÄÚºËͬÒÔÇ°°æ±¾µÄ¾ø´ó¶àÊý±ä»¯£¬¿ÉϧµÄÊÇÓÉÓÚʱ¼äºÍ¾«Á¦ÓÐÏÞûÓÐÏêϸÁгö¸÷¸ö
º¯ÊýµÄÓÃ
·¨¡£
ÌرðÉùÃ÷£º¸ÃÎĵµÖеÄÄÚÈÝÀ´×Ôhttp://lwn.net£¬¸ÃÍøÒ²ÉÏÒ²Óи÷¸öº¯ÊýµÄ½ÏΪÏêϸµÄ
˵Ã÷¿É¹©¸÷λ²Î¿¼¡£Èç¹ûÐèÒª¸ÃÎĵµµÄ
word°æµÄÅóÓÑ£¬Çëmailµ½weiriver@sohu.comË÷
È¡¡£
1¡¢ ʹÓÃеÄÈë¿Ú
±ØÐë°üº¬
<linux/init.h>
module_init(your_init_func);
module_exit(your_exit_func);
ÀÏ
°æ±¾£ºint init_module(void);
void cleanup_module(voi);
2.4ÖÐÁ½ÖÖ¶¼¿ÉÒÔÓ㬶ÔÈçºó
ÃæµÄÈë¿Úº¯Êý²»±ØÒªÏÔʾ°üº¬ÈκÎÍ·Îļþ¡£
2¡¢ GPL
MODULE_LICENSE("Dual BSD/GPL");
ÀÏ°æ
±¾£ºMODULE_LICENSE("GPL");
3¡¢ Ä£¿é²ÎÊý
±ØÐëÏÔʽ°üº¬<linux/moduleparam.h>
module_param(name,
type, perm);
module_param_named(name, value, type, perm);
²ÎÊý¶¨Òå
module_param_string(name,
string, len, perm);
module_param_array(name, type, num, perm);
ÀÏ°æ
±¾£ºMODULE_PARM(variable,type);
MODULE_PARM_DESC(variable,type);
4¡¢
Ä£¿é±ðÃû
MODULE_ALIAS("alias-name");
ÕâÊÇÐÂÔöµÄ£¬ÔÚÀÏ°æ±¾ÖÐÐèÔÚ/etc/modules.confÅäÖã¬
ÏÖÔÚÔÚ´úÂëÖоͿÉÒÔʵÏÖ¡£
5¡¢ Ä£¿é¼ÆÊý
int try_module_get(&module);
module_put();
ÀÏ
°æ±¾£ºMOD_INC_USE_COUNT ºÍ MOD_DEC_USE_COUNT
6¡¢ ·ûºÅµ¼³ö
Ö»ÓÐÏÔʾµÄµ¼³ö·ûºÅ²ÅÄܱ»ÆäËûÄ£¿éʹ
Óã¬Ä¬Èϲ»µ¼³öËùÓеķûºÅ£¬²»±ØʹÓÃEXPORT_NO
_SYMBOLS
ÀÏ°å±¾£ºÄ¬Èϵ¼³öËùÓеķûºÅ£¬³ý·ÇʹÓÃ
EXPORT_NO_SYMBOLS
7¡¢ Äں˰汾¼ì²é
ÐèÒªÔÚ¶à¸öÎļþÖаüº¬<linux/module.h>ʱ£¬²»±Ø¶¨Òå
__NO_VERSION__
ÀÏ°æ±¾£ºÔÚ¶à¸öÎļþÖаüº¬<linux/module.h>ʱ£¬³ýÔÚÖ÷ÎļþÍâµÄÆäËûÎļþÖбØÐ붨Òå_
_NO_VERSION__£¬
·ÀÖ¹°æ±¾Öظ´¶¨Òå¡£
8¡¢ É豸ºÅ
kdev_t±»·Ï³ý²»¿ÉÓã¬ÐµÄdev_tÍØÕ¹µ½ÁË32룬12λÖ÷É豸ºÅ£¬20λ´ÎÉ豸ºÅ¡£
unsigned
int iminor(struct inode *inode);
unsigned int imajor(struct inode
*inode);
ÀÏ°æ±¾£º8λÖ÷É豸ºÅ£¬8λ´ÎÉ豸ºÅ
int MAJOR(kdev_t dev);
int
MINOR(kdev_t dev);
9¡¢ ÄÚ´æ·ÖÅäÍ·Îļþ±ä¸ü
ËùÓеÄÄÚ´æ·ÖÅ亯Êý°üº¬ÔÚÍ·ÎÄ
¼þ&l


Ïà¹ØÎĵµ£º

LinuxÈçºÎ×ß½øѧУ´óÃÅ£¿

     Èç½ñ£¬ÖÐСѧÀïÃ漸ºõÈ«ÊÇXPѧÉú£¬±Ä±ÄÌøÌø£¬Linux£¨¼·£©½øѧУ¼¸ºõÎÞÃÅ¡£ÄÇô£¬ÎÒÃǸÃÔõô°ìÄØ£¿ÄÜ·ñ²»ÆƶøÁ¢£¿
      ×òÌìÉÏÎ磬ÎÒÈ¥±±¾©ÊÐÓйز¿ÃżûһλÀÏÅóÓÑ£¬Ïë̸̸Õâ¸öÎÊÌâ¡£µ±Ç°£¬ÔÚÎÒ¹úÖÐСѧ£¬Linux²»Èë½Ìѧ´ó¸Ù£¬µ«ÊÇ£¬×÷Ϊ¿ÎÍâ»î¶¯ÄÚÈÝ»¹ÊÇ¿ÉÒԵġ£Linux½ ......

LinuxÆô¶¯¼¶±ð

1¡¢LINUXϵͳÆô¶¯¼¶±ð
²é¿´/etc/inittabÎļþ£¬ÆäÖ÷ÒªÄÚÈÝÈçÏ£º

0
 
-
 halt (Do NOT set initdefault to 
this


1
 
-
 Single user mode 

2
 
-
 Multiuser, without NFS  ......

LinuxÖÕ¶ËÉ豸Çý¶¯£¨Ò»£©

ÔÚLinuxϵͳÖУ¬ÖÕ¶ËÉ豸·Ç³£ÖØÒª£¬Ã»ÓÐÖÕ¶ËÉ豸£¬ÏµÍ³½«ÎÞ·¨ÏòÓû§·´À¡ÐÅÏ¢£¬LinuxÖаüº¬¿ØÖÆ̨¡¢´®¿ÚºÍαÖÕ¶Ë3ÀàÖÕ¶ËÉ豸¡£
14.1ÖÕ¶ËÉ豸
    ÔÚLinuxϵͳÖУ¬ÖÕ¶ËÊÇÒ»ÖÖ×Ö·ûÐÍÉ豸£¬ËüÓжàÖÖÀàÐÍ£¬Í¨³£Ê¹ÓÃttyÀ´¼ò³Æ¸÷ÖÖÀàÐ͵ÄÖÕ¶ËÉ豸¡£ttyÊÇTeletypeµÄËõд£¬TeletypeÊÇ×îÔç³öÏÖµÄÒ»ÖÖÖÕ¶ËÉ豸£¬ ......

eoiioe ÐéÄâ»úÏÂLinux:no link present,check cable

ÐéÄâ»úµÄÍøÂç²ÉÓÃBridged(ÇŽÓ)·½Ê½£¬¸Õ¿ªÊ¼ÒÔΪ£¬ÊÇÒòΪ»úÆ÷ÉϵÄÓÐЩÍø¿¨Ã»ÓÐÁ¬½ÓµçÀ£¬¶øVMWareÓÖÇ¡ºÃʹÓÃÁ˸ÃÍø¿¨£¬¾­¹ý¼¸¸öСʱµÄ²âÊÔ£¬Í¨¹ý½ûÓÃûÁ¬ÏßµÄÍø¿¨¡¢°ÑVMWareµÄVM0Ó³Éäµ½Á¬ÏßµÄÆäËûÍø¿¨£¬¶¼Ã»Óнâ¾öÎÊÌâ¡£
ÔÚVMÐéÄâ»úÖÐ×°ÁËredhatlinux9.0£¬×¼±¸ÓëÖ÷»ú¹²ÏíÎļþ£¬½á¹ûÍøÂ粻ͨ£¡
    &n ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ