系统调用与设备驱动
来源:互联网 发布:表单提交json数据 编辑:程序博客网 时间:2024/06/10 07:56
以下文字翻译自Beginning Linux Programming的小节System Calls and Device Drivers
你可以通过一些方法(function)来获得以及控制文件和设备。这些方法内置于Unix(以及Linux)系统,被称为系统调用方法(system calls),是操作系统的接口。
在操作系统的核心(内核)是一些设备驱动(device drivers)。这是一系列用来控制系统硬件的底层接口(low-level interface)。[此处省略两个有关驱动的例子]
为了提供相似的接口,设备驱动封装了所有的硬件相关的特性。对于那些特殊的硬件特性,可以通过系统调用方法ioctrl来使用。
/dev目录下的设备文件也能够被打开,读取,写入以及关闭。例如,用来获取普通文件的open调用也可以用来获取用户终端、打印机、磁盘驱动器。
用来获得设备驱动的底层方法、系统调用方法有:
- open: 打开文件或者设备
- read: 读取已经打开的文件或者设备
- write: 写入文件或者设备
- close: 关闭文件或者设备
- ioctrl: 传递控制信息到设备驱动
系统调用方法ioctrl用来提供一些必要的硬件指定控制(hardware-specific control)——对比通常的输入输出,所以ioctrl的使用因设备不同而不同,因此,ioctrl不具备移植性。此外,每个驱动都定义了自己的一套ioctrl指令。
系统调用在用户手册(manual page)第二节中有详细的文档。在include文件里,可以看到函数的声明(prototype),可以了解到参数列表、返回值类型,以及一些常数定义。文件中这些原型都有详细的描述。
0 0
- 系统调用与设备驱动
- Linux设备驱动--系统调用
- open系统调用及块设备驱动
- linux设备驱动模型--open系统调用(创建文件)
- Driver:模块参数、系统调用、字符设备驱动框架
- linux设备驱动--非阻塞IO与select,poll调用
- 平台总线 设备 驱动相关调用与简介
- linux设备驱动模型一字符设备open系统调用流程
- linux设备驱动模型一字符设备open系统调用流程
- linux设备驱动模型一字符设备open系统调用流程
- linux设备驱动模型一字符设备open系统调用流程
- linux设备驱动模型一字符设备open系统调用流程
- Linux设备驱动与整个硬件系统的关系
- Linux内核调用设备驱动
- 设备与驱动模型
- Linux设备驱动开发详解--笔记5--Linux文件与设备系统
- Windows系统-----USB 设备驱动
- Linux设备驱动第二天(数组参数传递,模块相互调用、printk、内核GPIO函数、系统调用)
- javax.servlet.jsp.*和javax.servlet.http.*
- BZOJ 2127 happiness 最小割
- 行指针和列指针详解
- Linux bash 环境相关配置文件
- Java多线程-线程的交互
- 系统调用与设备驱动
- 使用MLP解决OCR问题(OpenCV)(下)
- Android launcher的文件夹
- Java泛型详解
- Android 生成缩略图的方法!!!
- linux zip
- TinyXML:一个优秀的C++ XML解析器
- 如何判断NSArray是否为空?
- cx_Oracle ImportError: DLL load failed: %1 不是有效的 Win32 应用程序