下载此文档

linux网络设备分析.doc


文档分类:IT计算机 | 页数:约40页 举报非法文档有奖
1/40
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/40 下载此文档
文档列表 文档介绍
Linux网络设备分析
[摘要] 在本文中,一方面概括了网络设备总体特性和工作原理,接着在分析了一种重要的数据构造device后,重点剖析了网络设备的整个初始化工作过程;简朴地分析了设备的打开和关闭的操作后,是有关数据包的传播和接受的分析PIP压缩频道网络接口;
nrN NetROM虚拟设备接口;
isdnN ISDN网络接口;
dummyN 空设备;
lo 回送网络接口。
重要数据构造——struct device
构造device存储一种网络接口的重要信息,是网络驱动程序的核心。在逻辑上,它可以分割为两个部分:可见部分和隐藏部分。可见部分是由外部赋值;隐藏部分的域段仅面向系统内部,它们可以随时被变化。下面我们将对之进行具体的分析和解剖。
/* from include/linux/ */
struct device
{
属性
char *name;
设备的名字。如果第一字符为NULL(即’\0’),register_netdev (drivers/net/)将会赋给它一种n最小的可用网络设备名ethn。
unsigned long rmem_end; /* shmem "recv" end */
unsigned long rmem_start; /* shmem "recv" start */
unsigned long mem_end; /* shared mem end */
unsigned long mem_start; /* shared mem start */
这些域段标记被设备使用的共享内存的首地址及尾地址。如果设备用来接受和发送的内存块不同,则mem域段用来标记发送的内存位置,rmem用来标记接受的内存位置。mem_start和mem_end可在系统启动时用内核的命令行指定,用ifconfig可以查看它们的值。rmem域段历来不被驱动程序以外的程序所引用。
unsigned long base_addr; /* device I/O address */
unsigned char irq; /* device IRQ number */
I/O基地址和中断号。它们都是在设备检测期间被赋值的,但也可以在系统启动时指定传入(如传给LILO)。ifconfig命令可显示及修改她们的目前值。
volatile unsigned char start; /* start an operation */
volatile unsigned char interrupt; /* interrupt arrived */
这是两个二值的低层状态标志。一般在设备打开时置start标志,在设备关闭时清start标志。当interrupt置位时,表达有一种中断已达到且正在进行中断服务程序理。
unsigned long tbusy; /* transmitter busy must be long for bitops */
标记“发送忙”。在驱动程序不能接受一种新的需传播的包时,该域段应当为非零。
struct device *next;
指向下一种网络设备,用于维护链表。
unsigned char if_port;
记录哪个硬件I/O端口正在被接口所用,如BNC,AUI,TP等(drivers/net/)。
unsigned char dma;
设备用的DMA通道。
某些设备也许需要以上两个域段,但非必需的。
unsigned long trans_start; /* Time (in jiffies) of last Tx */
上次传播的时间点(in jiffies)
unsigned long last_rx; /* Time of last Rx */
上次接受的时间点(in jiffies)。如trans_start可用来协助内核检测数据传播的死锁(lockup)。
unsigned short flags; /* interface flags (a la BSD) */
该域描述了网络设备的能力和特性。它涉及如下flags:(include/linux/)
IFF_UP
表达接口在运营中。当接口被激活时,内核将置该标志位。
IFF_BROADCAST
表达设备中的广播地址时有效的。以太网支持广播。
IFF_DEBUG
调试模式,表达设备调试打开。当想控制printk及其

linux网络设备分析 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息