Linux内核--设备驱动(二)设备驱动IO流程详解

本文深入探讨了Linux内核中的设备驱动IO流程,涵盖了块设备和字符设备的区别、设备控制器的控制寄存器、内存映射I/O以及直接内存访问(DMA)的工作原理。通过理解这些概念,读者能够更好地掌握设备驱动程序如何与硬件交互,提高系统效率。
摘要由CSDN通过智能技术生成

目录

一、引言
二、I/O设备
------>2.1、块设备
------>2.2、字符设备
三、设备控制器
------>3.1、控制寄存器
------>3.2、内存映射 I/O
------>3.3、内存映射 I/O 的优点和缺点
------>3.4、直接内存访问
四、DMA工作原理
------>4.1、重温中断
------>4.2、精确中断和不精确中断

一、引言

我们之前的文章提到了操作系统的三个抽象,它们分别是进程、地址空间和文件,除此之外,操作系统还要控制所有的 I/O 设备。操作系统必须向设备发送命令,捕捉中断并处理错误。它还应该在设备和操作系统的其余部分之间提供一个简单易用的接口。操作系统如何管理 I/O 是我们接下来的重点。

不同的人对 I/O 硬件的理解也不同。对于电子工程师而言,I/O 硬件就是芯片、导线、电源和其他组成硬件的物理设备。而我们程序员眼中的 I/O 其实就是硬件提供给软件的接口,比如硬件接受到的命令、执行的操作以及反馈的错误。我们着重探讨的是如何对硬件进行编程,而不是其工作原理。

二、I/O设备

什么是 I/O 设备?I/O

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

文艺小少年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值