分类: LINUX
2010-01-21 09:56:47
一、网络设备的初始化
1、在net_device中函数原型:int (*init)(struct net_device *dev)。
2、网络设备的初始化主要需要完成以下几个方面的工作:
1)进行硬件上的准备工作,检查网络设备是否存在,如果存在,则检测设备所使用的硬件资源。
2)进行软件接口上的准备工作,分配net_device结构体并对其数据和函数指针成员赋值。
3)获得设备的私有信息指针并初始化其成员的值。如果私有信息中包括自旋锁或信号量等并发或同步机制,则需对其进行初始化。
对net_device结构体成员及私有数据的赋值都可能需要与硬件初始化工作协同进行,即硬件检测出了相应的资源,需要根据检测结果填充net_device结构体成员和私有数据。