|
|
 |
|
|
| 1. 内核模块自动加载的问题 |
  |
|
 |
|
HP : 73 / 733
MP : 405 / 11111
EXP : 34%
|
|
名动江湖
           
成员等级: 30
发表总数: 1215
金币总数: 571
所属组别: 核心成员
注册日期: 2003/09/27

|
系统FC4 内核2.6.11 [root@localhost etc]# lsmod Module Size Used by md5 4033 1 ipv6 268097 25 autofs4 29253 2 sunrpc 167813 1 dm_mod 58101 0 video 15941 0 button 6609 0 battery 9413 0 ac 4805 0 uhci_hcd 35152 0 ehci_hcd 41037 0 i2c_i801 8781 0 i2c_core 21569 1 i2c_i801 snd_intel8x0 34689 0 snd_ac97_codec 75961 1 snd_intel8x0 snd_seq_dummy 3653 0 snd_seq_oss 37057 0 snd_seq_midi_event 9153 1 snd_seq_oss snd_seq 62289 5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event snd_seq_device 8781 3 snd_seq_dummy,snd_seq_oss,snd_seq snd_pcm_oss 51185 0 snd_mixer_oss 17857 1 snd_pcm_oss snd_pcm 100169 3 snd_intel8x0,snd_ac97_codec,snd_pcm_oss snd_timer 33605 2 snd_seq,snd_pcm snd 57157 9 snd_intel8x0,snd_ac97_codec,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer soundcore 10913 1 snd snd_page_alloc 9669 2 snd_intel8x0,snd_pcm 8139too 30017 0 mii 5441 1 8139too floppy 65269 0 ext3 132553 1 jbd 86233 1 ext3
可以发现这里开机后自动加载了很多模块, [root@localhost etc]# cat modprobe.conf alias snd-card-0 snd-intel8x0 options snd-card-0 index=0 options snd-intel8x0 index=0 remove snd-intel8x0 { /usr/sbin/alsactl store 0 >/dev/null 2>&1 || : ; }; /sbin/modprobe -r --ignore-remove snd-intel8x0 alias usb-controller ehci-hcd alias usb-controller1 uhci-hcd alias eth0 8139too
根据查找的资料 被隐式加载的只有这个文件指定的几个KO文件(可以手工控制加栽与否) 其他是被自动加载的 Q1:我已经在modprobe.conf里把#alias eth0 8139too给注释掉了,但是重新启动还是依然能正常使用,为什么
Q2:其他模块的加载都是内核自动调用的,还是已经被编译到内核里(算是内核的一部分,虽然以模块化显示)
Q3:如何控制这部分模块的自动加载问题 在WINDOWS下 我可以卸载,但是重新启动后会自动安装起用,只有把驱动程序文件删除才能了事 不知道在LINUX下这个怎么弄,编译内核,删除KO文件这两个主意就别出了
Q4:我在重新编译内核的时候,把NTFS支持编译成模块,那该功能是自动加载还是手动加载,由什么文件来控制 呵呵
 凡是纸马的帖子一定要看 凡是纸马的帖子一定要顶
签名 -------------- 两个凡是 把个人崇拜进行到底 |
 |
|
|
| 2. Re:内核模块自动加载的问题 |
  |
|
 |
|
HP : 0 / 450
MP : 139 / 7049
EXP : 3%
|
|
名动江湖
           
成员等级: 19
发表总数: 419
金币总数: 371
所属组别: 中级成员
注册日期: 2003/07/27

|
让我来蒙一下吧
| QUOTE | Q1:我已经在modprobe.conf里把#alias eth0 8139too给注释掉了,但是重新启动还是依然能正常使用,为什么
|
我猜测你的kernel支持DEMAND LOADING。
| QUOTE | Q2:其他模块的加载都是内核自动调用的,还是已经被编译到内核里(算是内核的一部分,虽然以模块化显示)
|
直接编译到kernel,而没有编译成module的东西你lsmod是看不到的。
| QUOTE | Q3:如何控制这部分模块的自动加载问题 在WINDOWS下 我可以卸载,但是重新启动后会自动安装起用,只有把驱动程序文件删除才能了事 不知道在LINUX下这个怎么弄,编译内核,删除KO文件这两个主意就别出了
|
对于你的系统,一部分是/etc/modprobe.conf。另外一部分在哪里?你仔细的想想linux的引导过程,会得出答案的。这个就留作你的课后作业吧
| QUOTE | Q4:我在重新编译内核的时候,把NTFS支持编译成模块,那该功能是自动加载还是手动加载,由什么文件来控制
|
如果我上面的解释没有什么太大的错误的话,那么你现在应该已经可以推理出答案了。
签名 --- 请xxbin教主指正先
签名 ------ 从明天起,做一个虔诚的人, 学习,科研,勤做笔记。 从明天起,关心过程与HOWTO, 我有一个愿望,面朝西方,跪拜xxbin。
拜xxbin教,您心灵的港湾。 |
 |
 |
|