本文主要是介绍逻辑地址 虚拟地址 物理地址 总线地址的区别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1 逻辑地址
逻辑地址是最为模糊的概念。
《understanding the linux kernel》上的解释是与虚拟地址相关,基于硬件MMU与软件内存管理的一个概念,具体可以看UTLK的第二章内存寻址,有很详细的解释。
但是工作中之前用到的MIPS架构的处理器的解释却有出入,在《MIPS体系架构透视》一书中,逻辑地址是跟MMU无关的,MIPS地址空间划分中,Kseg0 Kseg1地址空间与真实的物理地址存在一个偏移量,也就是存在线性关系,是一种“简单的无须转换翻译”的关系。
同一块内存被分别线性映射到这2个地址空间中,无论处理器有无MMU单元,上电这2个地址空间就是划分好的(2个地址空间区别在于是否默认开启缓存)。
对于MIPS处理器逻辑地址的划分肯定是由其内部逻辑电路来处理,不需MMU。
2 虚拟地址
虚拟地址做为程序员应该听说的最多,不管是在linux还是windows下编程,程序所操作地址都是虚拟地址。
这篇关于逻辑地址 虚拟地址 物理地址 总线地址的区别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!