Linux内核访问外设I O资源的方式.pdfVIP

  • 7
  • 0
  • 约1.75万字
  • 约 10页
  • 2015-09-30 发布于重庆
  • 举报
Linux内核访问外设I O资源的方式

努力成为 linux kernel hacker 的人李万鹏原创作品,为梦而战。转载请标明 出处 /woshixingaaa/archive/2011/05/15/6421954.asp x 首先介绍一下 I/O 端口和 I/O 内存。 1. I/O 端口:当一个寄存器或内存位于 I/O 空间时,称其为 I/O 端口。 2. I/O 内存:当一个寄存器或内存位于内存空间时,称其为 I/O 内存。 再来看一下 I/O 寄存器和常规内存的区别:I/O 寄存器具有边际效应(side effect ),而内存操作则没有,内存写操作的唯一结果就是在指定位置存贮一个 数值;内存读操作则仅仅是返回指定位置最后一次写入的数值。何为边际效应 呢?就是读取某个地址时可能导致该地址内容发生变化。比如很多设备的中断 状态寄存器只要一读取,便自动清零。 现在来看一看如何在 Linux 驱动程序中使用 I/O 端口和 I/O 内存。 使用 I/O 端口的步骤: 1. 申请 2. 访问 3. 释放 申请 I/O 端口: 在尚未对这些端口进行申请之前我们是不应该对这些端口进行操作的。内核为 我们提供了一个注册用的接口:

文档评论(0)

1亿VIP精品文档

相关文档