Linux中LonWorks现场总线设备驱动设计
http://tech.ddvip.com 2007年03月12日 社区交流
本文详细介绍Linux中LonWorks现场总线设备驱动设计
(3) Linux设备驱动程序组成部分
Linux设备驱动程序可以分为三个主要组成部分:
●自动配置和初始化子程序。负责检测所要驱动的硬件设备是否存在和是否能正常工作。如果该设备正常,则对这个设备及其相关的、设备驱动程序需要的软硬件进行初始化。
●服务于I/O请求的子程序。它们主要是对file_operations结构的各个入口点的实现。这部分的实现支持了文件系统的调用(如open,close,read等等)。
●中断服务子程序。在Linux系统中,并不是直接从中断向量表中调用设备驱动程序的中断服务子程序,而是由Linux系统来接收硬件中断,再由系统来调用中断服务子程序。
但是,这三个部分不是必须在每个驱动程序中必须具有的。
3.3 LonWorks现场总线网卡驱动程序
研究了Linux的设备管理以及设备驱动程序实现方法后,我们来设计LonWorks现场总线设备驱动程序,并对实现中的一些关键问题进行探讨。
(1) LonWorks现场总线网卡驱动程序
在驱动程序设计和开发中,我们一定要注意的问题是机制(Mechanism)与策略(Policy)的分离。这里所谓的机制是指我们的驱动程序提供的接口应该很忠实地反映设备的原始功能(bare function),而与应用无关。而策略是指一旦这个设备驱动程序为设备机制提供了相应的软件接口,那么应用程序开发人员就能按照特定的方式使用机制接口。可以说,在内核驱动程序开发过程中,所设计的数据结构,以及确定的接口命令都是为以后的应用策略提供的一种机制。而如前所述,这种机制在Unix类系统内部是通过一组固定的入口点来提供的。由于我们要开发的设备驱动程序是一个字符型的设备,所以接下来我们首先分析字符型设备驱动程序中常用的入口点:
● open入口点
作者:刘 广 石婷婷 责编:豆豆技术应用
- Linux/Unix 新闻
- Linux/Unix 入门
- Linux/Unix 命令
- Linux/Unix 安装
- Linux 嵌入式系统
- Linux/Unix 编程
- Linux/Unix 管理
- Linux/Unix 桌面
- Linux/Unix 内核
- Linux/Unix 软件
- SCO Unix
- NetBSD
- OpenBSD
- Redhat/Fedora Linux
- 手机
- Linux/Unix find 搜索命令
- Linux/Unix vi 命令
- Linux/Unix kde 桌面环境
- Linux/Unix GNOME 桌面环境
- Linux/Unix Make 命令
- Linux/Unix crontab 命令
- Linux/Unix ext3 文件系统
- Linux/Unix 文件系统详解
- Linux/Unix ADSL 拨号设置
- Linux/Unix GRUB 配置及应用
- Linux/Unix nfs配置
- Linux/Unix 硬件信息查看及管理
- Linux/Unix 优化
- Linux/Unix 交换分区Swap管理及应用
- Linux/Unix 用户管理
- Linux/Unix Ramdisk
- Linux/Unix 密码恢复管理
- Linux/Unix 文件删除恢复
- Linux/Unix fdisk分区
- Linux/Unix lvs负载均衡管理
- Linux/Unix root用户
- Linux/Unix 集群
- Linux/Unix 日志
- 更多Linux/Unix专题……