io内存和io端口 linux,linux系统对io端口和io内存的管理.doc

linux系统对io端口和io内存的管理.doc

14acba14a0cf7cef1aaca66d8c81bd14.gif

还剩

7页未读,

继续阅读

下载文档到电脑,马上远离加班熬夜!

亲,喜欢就下载吧,价低环保!

内容要点:

Linux 系统对 IO 端口和 IO 内存的管理[日期:2012-01-17] 来源:Linux 社区 作者:ce123 一、I/O 端口端口(port)是接口电路中能被 CPU 直接访问的寄存器的地址。几乎每一种外设都是通过读写设备上的寄存器来进行的。CPU 通过这些地址即端口向接口电路中的寄存器发送命令,读取状态和传送数据。外设寄存器也称为“I/O 端口” ,通常包括:控制寄存器、状态寄存器和数据寄存器三大类,而且一个外设的寄存器通常被连续地编址。 二、IO 内存例如,在 PC 上可以插上一块图形卡,有 2MB 的存储空间,甚至可能还带有 ROM,其中装有可执行代码。三、IO 端口和 IO 内存的区分及联系这两者如何区分就涉及到硬件知识,X86 体系中,具有两个地址空间:IO 空间和内存空间,而 RISC 指令系统的 CPU(如 ARM、PowerPC 等)通常只实现一个物理地址空间,即内存空间。内存空间:内存地址寻址范围,32 位操作系统内存空间为 2 的 32 次幂,即 4G。IO 空间:X86 特有的一个空间,与内存空间彼此独立的地址空间, 32 位 X86 有 64K 的 IO空间。IO 端口:当寄存器或内存位于 IO 空间时,称为 IO 端口。一般寄存器也俗称 I/O 端口,或者说 I/O ports,这个 I/O 端口可以被映射在 Memory Space,也可以被映射在 I/O Space。IO 内存:当寄存器或内存位于内存空间时,称为 IO 内存。四、外设 IO 端口物理地址的编址方式CPU 对外设 IO 端口物理地址的编址方式有两种:一种是 I/O 映射方式(I/O-mapped) ,另一种是内存映射方式(Memory-mapped) 。而具体采用哪一种则取决于 CPU 的体系结构。1、统一编址RISC 指令系统的 CPU(如,PowerPC、m68k、ARM 等)通常只实现一个物理地址空间(RAM) 。在这种情况下,外设 I/O 端口的物理地址就被映射到 CPU 的单一物理地址空间中,而成为内存的一部分。此时,CPU 可以象访问一个内存单元那样访问外设 I/O 端口,而不需要设立专门的外设 I/O 指令。统一编址也称为“I/O 内存”方式,外设寄存器位于“内存空间” (很多外设有自己的内存、缓冲区,外设的寄存器和内存统称“I/O 空间” ) 。2、独立编址 而另外一些体系结构的 CPU(典型地如 X86)则为外设专门实现了一个单独地地址空间,称为“I/O 地址空间”或者“I/O 端口空间” 。这是一个与 CPU 地 RAM 物理地址空间不同的地址空间,所有外设的 I/O 端口均在这一空间中进行编址。CPU 通过设立专门的I/O 指令(如 X86 的 IN 和 OUT 指令)来访问这一空间中的地址单元(也即 I/O 端口) 。与RAM 物理地址空间相比,I/O 地址空间通常都比较小,如 x86 CPU 的 I/O 空间就只有64KB( 0-0xffff) 。这是“I/O 映射方式”的一个主要缺点。独立编址也称为“I/O 端口”方式,外设寄存器位于“I/O (地址)空间” 。3、优缺点独立编址主要优点是:1) 、 I/O 端口地址不占用存储器空间;使用专门的 I/O 指令对端口进行操作,I/O 指令短,执行速度快。2) 、并且由于专门 I/O 指令与存储器访问指令有明显的区别,使程序中 I/O 操作和存储器操作层次清晰,程序的可读性强。3) 、同时,由于使用专门的 I/O 指令访问端口,并且 I/O 端口地址和存储器地址是分开的,故 I/O 端口地址和存储器地址可以重叠,而不会相互混淆。 4) 、译码电路比较简单(因为 I/0 端口的地址空间一般较小,所用地址线也就较少) 。其缺点是:只能用专门的 I/0 指令,访问

发表评论

暂无评论,赶快抢占沙发吧。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值