【Linux device driver】设备驱动程序概述(一)

本文概述Linux系统中的设备驱动程序,包括字符设备、块设备和网络设备三大类。字符设备无缓存,如鼠标、键盘;块设备有缓存并支持随机存取,如硬盘;网络设备通过接口表示,使用net_device结构。系统通过sk_buff数据结构处理网络数据的传输,支持中断处理和时钟机制。
摘要由CSDN通过智能技术生成
<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>

1.1 Linux设备驱动程序分类

Linux系统的设备分为三类:

(1)字符设备(char device)
(2)块设备(block device)
(3)网络设备(network device)。

字符设备是指存取时没有缓存的设备。(鼠标,键盘,串行口)
块设备的读写都有缓存来支持,并且块设备必须能够随机存取(random access)(硬盘,软盘,CD-ROM等)。一个文件系统要安装进入操作系统必须在块设备上。

网络设备在Linux里做专门的处理。为屏蔽物理设备的多样性,liunx对所有的网络设备抽象,并定义统一概念:接口(interface)。对于每一个已经驱动了的网络设备,都用一个struct device的数据结构表示。

网络设备与字符设备及块设备的不同

(1)网络接口不存在于linux文件系统中,而是在核心中用一个net_device数据结构表示。而字符和块设备都存在与之对应的设备文件 (/dev/hda1).
(2)网络设备在数据包发送和接收时,直接通过接口访问,而不需要进行文件的操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值