《嵌入式Linux开发实用教程》——第4章 Linux设备驱动程序设计 4.1 设备驱动概述

简介:
+关注继续查看

本节书摘来自异步社区《嵌入式Linux开发实用教程》一书中的第4章,第4.1节,作者 朱兆祺,李强,袁晋蓉,更多章节内容可以访问云栖社区“异步社区”公众号查看。

第4章 Linux设备驱动程序设计

4.1 设备驱动概述

Linux系统将设备分成3种基本类型:字符设备、块设备、网络接口。

(1)字符设备

字符设备是一个能够像字节流一样被访问的设备,字符终端(/dev/console)和串口(/dev/ttys0)就是两个字符设备。字符设备可以通过文件系统节点来访问,比如/dev/tty1和/dev/lp0等。这些设备文件和普通文件之间的唯一差别在于对普通文件的访问可以前后移动访问位置,而大多数字符设备是一个只能顺序访问的数据通道。

(2)块设备

块设备和字符设备相类似,块设备也是通过/dev目录下的文件系统节点来进行访问的。在大多数UNIX系统中,进行I/O操作时块设备每次只能传输一个或多个完整的块;在Linux系统中,应用程序可以像字符设备一样地读写块设备,允许一次传递任意多字节的数据。块设备和字符设备的区别仅仅在于内核内部管理数据的方式,也就是内核及驱动程序之间的接口。

(3)网络接口

任何网络事务都是经过一个网络接口形成的,即一个能够和其他主机交换数据的设备。网络接口由内核中的网络子系统驱动,负责发送和接收数据包,但它不需要了解每项事物如何映射到实际传送的数据包。

相关文章
|
3天前
|
关系型数据库 MySQL Linux
在嵌入式 Linux 上移植 MySQL 数据库
MySQL 是一个流行的开源关系型数据库管理系统(RDBMS),它可以用于在各种应用程序中存储和管理数据。尽管 MySQL 在大型服务器上广泛使用,但它也可以在嵌入式 Linux 环境中运行,为嵌入式设备提供高效的数据库管理功能。本文将介绍如何在嵌入式 Linux 上移植 MySQL 数据库。
23 0
|
3天前
|
存储 SQL Linux
嵌入式Linux上移植SQLite数据库
SQLite是一种轻量级的嵌入式数据库引擎,适用于各种应用,包括嵌入式系统。在嵌入式Linux上移植SQLite数据库可以为嵌入式设备提供持久性数据存储和查询功能。本文将介绍如何在嵌入式Linux上移植SQLite数据库。
10 0
|
12天前
|
前端开发 Linux 定位技术
嵌入式Linux系列第21篇:应用程序之开篇闲聊
嵌入式Linux系列第21篇:应用程序之开篇闲聊
|
12天前
|
传感器 Linux 芯片
嵌入式Linux系列第20篇:驱动编写入门
嵌入式Linux系列第20篇:驱动编写入门
|
13天前
|
Ubuntu Linux Go
嵌入式Linux系列第19篇:如何高效的阅读Linux源码
嵌入式Linux系列第19篇:如何高效的阅读Linux源码
|
13天前
|
Linux 芯片
嵌入式Linux系列第18篇:一个网友的引脚使用问题
嵌入式Linux系列第18篇:一个网友的引脚使用问题
|
13天前
|
算法 自动驾驶 Linux
嵌入式Linux系列第17篇:移植OpenCV
嵌入式Linux系列第17篇:移植OpenCV
|
13天前
|
存储 Linux 内存技术
嵌入式Linux系列第16篇:使用SD卡
嵌入式Linux系列第16篇:使用SD卡
|
13天前
|
NoSQL Ubuntu IDE
嵌入式Linux系列第14篇:使用gdb和gdbserver构建在线调试环境
嵌入式Linux系列第14篇:使用gdb和gdbserver构建在线调试环境
|
13天前
|
Linux Windows
嵌入式Linux系列第13篇:USB摄像头拍照
嵌入式Linux系列第13篇:USB摄像头拍照
相关产品
云迁移中心
推荐文章
更多