外围寄存器与内存编址方式

1 内存访问

(1)内存通过CPU的地址总线来寻址定位,然后通过CPU数据总线来读写。
(2)CPU的地址总线的位数是CPU设计时确定的,因此一款CPU所能寻址的范围是一定的,而内存是需要占用CPU的寻    址空间的。
(3)内存与CPU的这种总线式连接方式是一种直接连接,优点是效率高访问快,缺点是资源有限,扩展性差。

2 IO与内存不同架构下的编址

 2.1.1  对于ARM架构的处理器,是哈佛结构的,都是IO与内存统一编址
 (1)类似于访问内存的方式,即把外设的寄存器当作一个内存地址来读写,从而以访问内存相同的方式来操作外设,叫IO与内存统一编址方式
 (2)例如ARM架构下,我们写的代码要适应ARM架构的IO与内存统一编址的情况,所有我们访问IO的时候,也就是读写寄存器,读写硬件就是在进行IO,IO和内存一样也有个地址(内核统一编址机制已经做好代码定义),被统一化了。
 2.1.2  对于x86独立编址
 (1)使用专用的CPU指令来访问某种特定外设,叫IO与内存独立编址(比如x86)。

3 内核提供的读写方式兼容可以跨架构

 3.1  按照我们自己的方式,就像裸机代码,没有内核,在ARM架构下我们自己使用函数指针方式去访问
IO、内存,X86架构我们使用专门指令访问IO并用指针访问内存,代码就不具跨平台兼容
 3.2  使用内核提供的读写函数去读写内存和IO,已经兼容的统一编址与独立编址,内核架构已经做好了封装。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值