请问逻辑地址与物理地址的区别是什么?请最好用您的理解指点我一下,不胜感激

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/16 16:23:04

请问逻辑地址与物理地址的区别是什么?请最好用您的理解指点我一下,不胜感激
请问逻辑地址与物理地址的区别是什么?
请最好用您的理解指点我一下,不胜感激

请问逻辑地址与物理地址的区别是什么?请最好用您的理解指点我一下,不胜感激
逻辑地址(Logical Address) 是指由程序产生的与段相关的偏移地址部分.例如,你在进行C语言指针编程中,可以读取指针变量本身值(&操作),实际上这个值就是逻辑地址,它是相对于你当前进程数据段的地址,不和绝对物理地址相干.只有在Intel实模式下,逻辑地址才和物理地址相等(因为实模式没有分段或分页机制,Cpu不进行自动地址转换);逻辑也就是在Intel 保护模式下程序执行代码段限长内的偏移地址(假定代码段、数据段如果完全一样).应用程序员仅需与逻辑地址打交道,而分段和分页机制对您来说是完全透明的,仅由系统编程人员涉及.应用程序员虽然自己可以直接操作内存,那也只能在操作系统给你分配的内存段操作.
  线性地址(Linear Address) 是逻辑地址到物理地址变换之间的中间层.程序代码会产生逻辑地址,或者说是段中的偏移地址,加上相应段的基地址就生成了一个线性地址.如果启用了分页机制,那么线性地址可以再经变换以产生一个物理地址.若没有启用分页机制,那么线性地址直接就是物理地址.Intel 80386的线性地址空间容量为4G(2的32次方即32根地址总线寻址).
  物理地址(Physical Address) 是指出现在CPU外部地址总线上的寻址物理内存的地址信号,是地址变换的最终结果地址.如果启用了分页机制,那么线性地址会使用页目录和页表中的项变换成物理地址.如果没有启用分页机制,那么线性地址就直接成为物理地址了.虚拟内存(Virtual Memory) 是指计算机呈现出要比实际拥有的内存大得多的内存量.因此它允许程序员编制并运行比实际系统拥有的内存大得多的程序.这使得许多大型项目也能够在具有有限内存资源的系统上实现.一个很恰当的比喻是:你不需要很长的轨道就可以让一列火车从上海开到北京.你只需要足够长的铁轨(比如说3公里)就可以完成这个任务.采取的方法是把后面的铁轨立刻铺到火车的前面,只要你的操作足够快并能满足要求,列车就能象在一条完整的轨道上运行.这也就是虚拟内存管理需要完成的任务.在Linux 0.11内核中,给每个程序(进程)都划分了总容量为64MB的虚拟内存空间.因此程序的逻辑地址范围是0x0000000到0x4000000.有时我们也把逻辑地址称为虚拟地址.因为与虚拟内存空间的概念类似,逻辑地址也是与实际物理内存容量无关的. 逻辑地址与物理地址的“差距”是0xC0000000,是由于虚拟地址->线性地址->物理地址映射正好差这个值.这个值是由操作系统指定的.

8086表示IO口是用逻辑地址还是物理地址逻辑地址与物理地址的区别是什么? 请问逻辑地址与物理地址的区别是什么?请最好用您的理解指点我一下,不胜感激 什么是物理地址?什么是逻辑地址?物理地址和逻辑地址的区别与联系?网络 逻辑地址与物理地址的区分? 物理地址和逻辑地址有什么区别 8086中的逻辑地址和物理地址是什么?什么是8086中的逻辑地址和物理地址?逻辑地址如何转换成物理地址? 逻辑地址和物理地址有什么区别?他们之间的关系是什么?段地址河段的起始地址相同吗?两者的关系如何? 说明ip地址与物理地址的区别.为什么不能仅使用物理地址进行网络互连? 关于计算机操作系统的分段与逻辑地址和转换物理地址的问题 请问 逻辑地址为1DF0:100AH,物理地址怎么算?请列出详细公式!它们之间的计算需要先转换成十进制吗? 请问 逻辑地址为1DF0:100AH,物理地址怎么算?请列出详细公式!它们之间的计算需要先转换成十进制吗? 逻辑地址转换成物理地址 逻辑地址转换为物理地址的过程称为什么 计算2017:000AH逻辑地址对应的物理地址. 逻辑地址和物理地址之间的映射关系 知道逻辑地址怎样计算物理地址大神们帮帮忙比如2010年操作系统大题中提及的,已知逻辑地址为17CAH,请问用Clock算法计算的物理地址是多少?能否请高手们给出具体计算过程,小弟在此感谢了! 怎样把逻辑地址转化为物理地址? 在8086里 什么是物理地址,逻辑地址