首页 > 其他 > 详细

操作系统-段页结合的实际内存管理

时间:2020-03-28 22:13:25      阅读:76      评论:0      收藏:0      [点我收藏+]

段、页结合:程序员希望用段,物理内存希望用页,所以、、、

技术分享图片

从虚拟内存中割出一个区域来给这个段,段就有了映射,但是这个虚拟内存不能正真的使用,需要把虚拟内存再映射一次,这个时候虚拟内存中的段分割成固定大小的页,每一页再去映射到物理内存中

1. 段、页同时存在

段面向用户,页面向硬件

技术分享图片

2. 段页同时存在用的重定位

也就是地址翻译

从用户的角度来看就是段的访问,从物理内存的角度就是分成一页一页

技术分享图片

3. 一个实际的段页结合

技术分享图片

1. 段页式内存下程序如何载入内存?

  1. 虚拟内存割出一段区域给给用户,存放数据段、代码段
  2. 把用户的数据段分割成页,再给到物理内存上

技术分享图片

2. 从fork()开始

  1. 分配虚拟内存
  2. 建立段表

技术分享图片

进程0、进程1、进程2的虚拟地址

技术分享图片

3. 接下来

  1. 分配内存
  2. 建立页表

技术分享图片
技术分享图片
技术分享图片

4. 子进程和父进程都指向同一页

技术分享图片

5. 程序+虚拟内存+物理内存

技术分享图片

6. *p=7?

父进程*p=7 ,

子进程*p=8

技术分享图片

操作系统-段页结合的实际内存管理

原文:https://www.cnblogs.com/mengd/p/12589672.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!