您现在的位置: 范文先生网 >> 理工论文 >> 电子通信论文 >> 正文

Vxworks嵌入式操作系统下网络设备驱动程序设计

时间:2007-1-20栏目:电子通信论文

作者Email:  cai_yang@etang.com

摘 要:本文主要介绍在Vxworks操作系统下网络设备驱动程序设计、调试方法以及将其加入系统内核的配置方法。

关键词:Vxworks  嵌入式操作系统 网络设备

引 言
  VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),是嵌入式开发环境的关键组成部分。良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域占据一席之地。它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通讯、军事演习、弹道制导、飞机导航等。
  

1 嵌入式系统
  嵌入式系统是以嵌入式计算机为技术核心,面向用户、面向产品、面向应用,软硬件可裁减的,适用于对功能、可靠性、成本、体积、功耗等综合性严格要求的专用计算机系统。和通用计算机不同,嵌入式系统是针对具体应用的专用系统,目的就是要把一切变得更简单、更方便、更普遍、更适用;它的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能。

  嵌入式系统主要由嵌入式处理器、外围硬件设备、嵌入式操作系统以及特定的应用程序等四部分组成,是集软硬件于一体的可独立工作的“器件”;用于实现对其它设备的控制、监视或管理等功能。

  嵌入式系统应具有的特点是:要求高可靠性;在恶劣的环境或突然断电的情况下,要求系统仍然能够正常工作;许多嵌入式应用要求实时处理能力,这就要求嵌入式操作系统(EOS)具有实时处理能力;嵌入式系统中的软件代码要求高质量、高可靠性,一般都固化在只读存储器中或闪存中,也就是说软件要求固态化存储,而不是存储在磁盘等载体中。

2 设备驱动程序

Vxworks5.4中驱动程序主要分为三种:字符、块以及网络驱动程序。本文所介绍的网卡驱动程序则属于网络设备驱动程序。

2.1 网络设备驱动程序设计

网络的各功能部件图1所示,网络设备驱动程序实际上是处理硬件和上层协议之间的接口程序。网络传输协议层分发数据在应用程序接口和网络接口之间。网络化网络协议(如IP协议)发送数据在网络主机之间。连接/接口层使能主机隶属于硬件到相同物理媒质的通信。

在Vxworks5.4中,网卡驱动程序又分为END(Enhanced Network Driver)和BSD两种。它们分别处于如图2所示结构中。

Vxworks嵌入式操作系统下网络设备驱动程序设计

2.1.1 BSD驱动程序设计

在Vxworks5.4中,网络驱动程序都是基于BSD UNIX版本4.3基础上的,这些驱动程序都定义在一个全局例程中,那就是attach子程序,xxattach( )子程序中包含5个函数指针,它们都被映射到ifnet结构中,这5个函数可见表1,它们在IP协议层任何地方被调用。

表1 网络接口处理

驱动程序指定函数

函数指针

功能

xxInit( )

if_init

[1] [2] [3] [4] 下一页

下页更精彩:1 2 3 4 下一页