课件009 教学资源下载
课件 试卷 教案 毕业论文 图书软件 职教研究 期刊推介 信息发布 会员账户
当前位置:课件009首页 >> 职教研究 >> 专业论文 >> linux网络设备驱动程序设计

linux网络设备驱动程序设计

(作者未知) 2010/12/29

   摘要 Linux网络设备驱动程序是Linux网络应用的重要组成部分。本文详细分析了Linux内核中网络设备驱动程序的运行机理,并着重介绍了实现Linux网络驱动程序的关键过程,最后给出了一种实现模式和具体实例。
   关键词 Linux操作系统;网络设备驱动程序;内核;模块
   1 引言
   Linux网络设备驱动程序是Linux操作系统网络应用中的一个重要的组成部分,分析其运行机理,对于设计Linux网络应用程序是很有帮助的。我们可以在网络驱动程序这一级做一些与应用相关联的特殊事情,例如,在设计Linux防火墙和网络入侵检测系统时可以在网络驱动程序的基础上拦截网络数据包,继而对其进行分析。由于Linux是开放源代码的,这给我们提供了一个绝好的机会来分析和改造网络驱动程序使其满足自己的特殊应用。本文就Linux内核中的网络驱动程序部分进行了详细的讨论,并给出了实现Linux网络驱动程序的重要过程及一种实现模式和具体实例。
   2 运行机理
   1) 体系结构
   Linux网络驱动程序的体系结构如图1所示。可以划分为四层,从上到下分别为协议接口层,网络设备接口层,再就是提供实际功能的设备驱动功能层,以及网络设备和网络媒介层。我们在设计网络驱动程序时,最主要的工作就是完成设备驱动功能层,使其满足我们自己所需的功能。在Linux中对所有网络设备都抽象为一个接口,这个接口提供了对所有网络设备的操作集合。由数据结构 struct device来表示网络设备在内核中的运行情况,即网络设备接口,它既包括纯软件网络设备接口,如环路(Loopback),也可以包括硬件网络设备接口,如以太网卡。而由以dev_base为头指针的设备链表来集体管理所有网络设备,该设备链表中的每个元素代表一个网络设备接口。数据结构device中有很多供系访问和协议层调用的设备方法,包括供设备初始化和往系统注册用的init函数,打开和关闭网络设备的open和stop函数,处理数据包发送的函数hard_start_xmit,以及中断处理函数等。有关device数据结构(在内核中也就是net_device)的详细内容,请参看/linux/include/linux/netdevice.h。
   ......

  附件下载:点击论文吧下载阅读全文

相关专业论文
1 linux网络设备驱动程序设计
推荐专业论文
1 如何正确使用植物生长调节剂
2 城轨车辆牵引传动技术课程教学研究
3 Goldstarnetworks
4 职业学校班级管理浅探
5 城镇天气预报编报发报系统建构研究
6 大学生诚信教育缺失问题研究
7 基于物联网技术的老人看护系统的设
8 论纳税人宪法义务的整体性
9 关于做好扶贫开发工作的几点思考
10 苓桂术甘汤的异病同治验案
11 工业生物技术
12 关于积极探索搞好新办专业文献资源
13 毛泽东的执政观念及其现代意义
14 青年班主任怎样提高科研修养
15 发达国家企业融资模式的比较研究与


设为首页  加入收藏  下载与付款  上传课件  资料征集  论坛与信息发布  期刊杂志推介  免责声明  常见问题   分类说明  联系本站  会员登录
课件009教育资源网 版权所有