网站运营
位置:首页>> 网站运营>> Linux操作系统下以太网卡的安装及配置(4)

Linux操作系统下以太网卡的安装及配置(4)

作者:佚名 来源:天极 发布时间:2009-02-10 18:36:00 

标签:Linux,操作系统,以太网卡,安装,配置


四、一个以太网卡安装实例

下面以Cirrus公司生产的Crystal CS8920以太网卡为例,详细说明上述安装配置过程。本例中,有些命令参数,如核心源代码目录等,是以我使用的系统环境为出发点。具体应用中还要加以本地化。为了更接近实际,例子中也包括了对安装中碰到的问题的描述。

1.此网卡是IBM PC机的内置式网卡,机器只提供了Windows95/98环境下的驱动程序。由于RedHat 5.0发行版本尚未提供对此网卡的直接支持,所以从Cirrus的站点上找到并下载了该网卡驱动程序的Linux版本,是一个名为Linux102_tar.gz的压缩文件。

2.文件Linux102_tar.gz解压后包括五个文件。包括源代码,仅适用于Linux 2.0版本的目标模块以及readme文件。

3.查阅readme文件后,了解到这个驱动程序只能使用网卡EEPROM中设定的端口号(I/O基地址)、中断号。为了知道网卡EEPROM的设置,又从Cirrus站点下载了该网卡DOS版本的设置程序setup.exe

4.在DOS中运行setup.exe,发现网卡的起始端口号为0x360,中断号为10,与别的设备有冲突。选择setup.exe程序的相应菜单,把中断号改成5。另外,此驱动程序不支持plug and Play,故也在setup.exe中将网卡的PnP功能屏蔽掉。

5.我所使用的RedHat 5.0的Linux核心版本为2.0.34,所以不能用现成的驱动程序目标模块,需要自己动手编译。如上文所述,有两种方式使用此驱动程序。

6.如果要编译成独立模块,执行下列命令:

gcc -D_KERNEL_-I/usr/src/linux/include -I/usr/src/linux/net/inet-Wall -Wstrictprototypes -02 -fomit-frame-pointer -DMODULE -DCONFIG_MODVERSIONS -ccs89x0.c

编译结果是名为cs89x0.o的驱动程序目标模块。要装载此驱动程序,输入下列命令: insmod cs89x0.o io=0x360 irq=10

要卸载此驱动程序,用rmmod命令:

rmmod cs89x0.o

7.如果要将驱动程序编进系统核心,

修改/usr/src/linux/drivers/net/CONFIG,加入:

CS89x0_OPTS=

修改/usr/src/linux/drivers/net/Config.in,加入:

tristate‘CS8920 Support’CONFIG_CS8920

以上两行是为了让make config在配置过程中询问是否增加CS8920网卡的支持。修改/usr/src/linux/drivers/net/Makefile加入:

ifeq((CONFIG_CS8920),y)

L_OBJS+=cs89x0.o

endif

修改/usr/src/linux/drivers/net/Space.c,加入:

extern int cs89x0_probe(struct device *dev);

……

#ifdef CONFIG_CS8920

&& cs89x0_probe(dev);

#endif

以上两段是为了编译并输出网卡驱动程序及其例程。

把驱动程序源代码拷到/usr/src/linux/drivers/net目录下。

在/usr/src/linux目录下执行 make config或 make menuconfig,选择核心CS8920网卡支持。

执行make dep、make clean命令。最后用 make zImage 编译Linux核心。

如何设置核心驱动程序参数,上节已有说明,不再赘述。

五、结束语

与其它外设一样,以太网卡种类繁多,对于新兴的操作系统Linux来说,是否能够有效地支持这些设备,直接关系着Linux的发展前途。本文叙述的以太网卡安装配置只是其中的一小部分,未尽事宜希望与有识之仕共同探讨。

0
投稿

猜你喜欢

手机版 网站运营 asp之家 www.aspxhome.com