博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于虚拟空间与物理空间思想的解析
阅读量:6865 次
发布时间:2019-06-26

本文共 541 字,大约阅读时间需要 1 分钟。

hot3.png

其实寻址这个问题,站在虚拟空间角度来看,就是通过线性地址寻找页表。站在物理空间角度来看,是通过地址总线寻找物理页框。中间的MMU起到承上启下的作用。

说的通俗一点,我举个例子。

虚拟空间好比阴间,物理空间好比阳间,阴间与阳间各有各自的法则,在保护着各自世界。使其正确平稳的运作。阴间的东西不能随便来到阳间,而阳间的东西也不能随便去到阴间,比如:阳间的人们一直在探索存不存在灵魂究竟有没有阴间,而阴间的东西其实也一直在努力冲破阴间的束缚来到阳间,因此就有这样一个奇怪的地方把这两个地方关联了起来,打通了束缚,就是半步多。这是连接阴阳两界的大门。

对于linux中的虚实空间问题也是一样的,因此话说回来,

虚拟地址不能访问物理空间,而物理空间返回的地址也不能直接拿给进程使用(进程运行在虚拟空间,需要虚拟地址),但这2个空间还必须关联起来,形成一个整体,因此需要一个枢纽,就像半步多一样。因此MMU就充当了半步多这个角色,它沟通了虚实空间 。MMU通过虚拟空间的页表,解析出物理地址给cpu,因此cpu可以通过地址总线寻址到物理空间。

至于页表的建立,也就是几种映射问题,请看前一篇博文。

转载于:https://my.oschina.net/u/1375613/blog/486541

你可能感兴趣的文章
bccomp比较大小注意
查看>>
js 中 typeof 的使用
查看>>
15个很好的自定义jQuery提示信息框插件( 转)
查看>>
Ansible :一个配置管理和IT自动化工具
查看>>
在Action中以Struts2的方式输出JSON数据
查看>>
【小贴士】探一探javascript中的replace
查看>>
jBPM开发入门指南(2)
查看>>
java基础面试题
查看>>
[LeetCode] UTF-8 Validation 编码验证
查看>>
并发,并行,进程,线程,同步,异步
查看>>
I.MX6 git patch
查看>>
Google Native Client入门
查看>>
spark能传递外部命名参数给main函数吗?
查看>>
[LeetCode] Convex Polygon 凸多边形
查看>>
递归神经网络
查看>>
iframe父页面和子页面相互调用的方法
查看>>
【批处理学习笔记】第十七课:截取字符串
查看>>
[Erlang 0066] Erlang orddict
查看>>
Hadoop HDFS 用户指南
查看>>
体验mssql-cli
查看>>