实际应用中有两种情况
1.当驱动程序被作为模块时:
对于PCI卡的情况,模块会自动的检测所有安装的网卡。但是,对于isa卡就不一样了,需要手动的指定io地址和中断号,从而可以让模块查找网卡。信息在文件/etc/conf.modules中保存着。
举个例子说:一个用户有两块isa的Ne2000网卡,一个为0x300,另一个为0x240。那么,在conf.modules文件中应该这样写:
alias eth0 ne
alias eth1 ne
options ne io=0x240,0x300
还有可以将同一个模块导入两次,如下所示:
alias eth0 3c501
alias eth1 3c501
options eth0 -o 3c501-0 io=0x240 irq=5
options eth1 -o 3c501-1 io=0x300 irq=7
这个例子中,-o的选项表示的含义是让每一个导入的模块有不同的称。 一旦你有了正确conf.modules设置,你可以进行检测:
modprobe ethN
dmesg | tail
*其中的N表示的是你需要检测的网卡号码。
2.驱动程序已经编译到了内核(Kernel)中:
如果驱动程序已经在内核中了,那么多网卡的设置已经有了。但是,缺省的情况是自动检测一块网卡,这样可以防止在启动时不正常的挂起。
简单的办法是给启动的内核传入参数,这一点由lilo来完成。假如你有两块网卡:一:io=0x300,irq=5;其二:io=0x280,irq=15, 可以在lilo的配置文件中设置。
这要用到append命令。在image=....一行的下面写上append=\"ether=5,
0x300,eth0 ether=15,0x280,eth1\"便可以了。
lemon*:-}