打印

来认识寄存器,内存,IO空间,IO端口,IO内存

[复制链接]
251|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
棋王高手|  楼主 | 2018-9-29 12:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
第一、寄存器和内存的区别寄存器和内存都是可以用来读写的,但寄存器的操作时有副作用,称之为(side effect 边际效果)读取一个寄存器可能导致寄存器中的内容发生变化,比如在一些设备的中断状态寄存器中,读取了寄存器后会自动清零

第二、IO空间和内存空间并不是所有的体系结构都有IO空间这个定义的,我所了解的只有X86体系上有,而ARM体系结构就没有这种区别,在X86上,IO空间和内存是独立的,他们各自有各自的总线,并且IO空间一般是64K,即16位,内存空间为4G可见他们的差别是很大

第三、IO 端口和IO内存在有了IO空间的概念后,就有IO端口和IO内存当一个寄存器或内存位于IO空间时候,称之为IO端口当一个寄存器或内存位于内存空间时候,称之为IO内存这种映射是通过OS的MMU来把虚拟地址映射为物理地址的

可能单纯的这样解释会不明白,看下面这个图或许会好些

使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

378

主题

378

帖子

0

粉丝