3、操作系统内存管理——段页式(虚拟内存)
来源:互联网 发布:考研数学辅导书 知乎 编辑:程序博客网 时间:2024/06/05 16:14
注:参考哈工大李治军老师公开课。本小节需要之前分段与分页为基础
对用户而言,分段是对内存的有效使用;而对于计算机而言,分页可以提高内存的使用效率。操作系统需要满足两个方面的需求,所以就采取了段页相结合的方式来管理内存。
对于用户而言,当用户发出一个逻辑地址,用户希望访问到特定程序段的内存空间,而对于计算机而言,则希望用户发出的逻辑可以通过MMU转换成页框号和页内偏移量,从而直接去访问真实的内存空间。
为了解决这一问题引入了虚拟内存(就是通过一张段表完成地址映射转换):简单的说就是用户发出访问程序段的逻辑地址<段号,段内偏移量>,通过对这一逻辑地址的运算将其转换为访问页的虚拟地址<页号,页内偏移量>,再由MMU将其转换为内存的物理地址<页框号,页内偏移量>。通过这种方式,用户访问的就是虚拟内存,经过两次地址映射后,变成真实的物理地址。
图一:段页式寻址原理
下面就以一个真实的图例展示这个过程:
图二:段页式寻址示例
从图二不难看出地址变化的过程是:
逻辑地址<段号,偏移> -> 虚拟地址<页号,偏移> -> 物理地址<物理页号,偏移>
阅读全文
1 0
- 3、操作系统内存管理——段页式(虚拟内存)
- [操作系统概念]第六部分——内存管理(3):虚拟内存
- 操作系统 内存管理-虚拟内存
- 操作系统——虚拟内存管理
- 内存管理——虚拟内存
- 操作系统--内存学习笔记(2)进程内存管理--虚拟内存
- 深入探讨操作系统的内存管理——虚拟内存与物理内存
- 操作系统管理内存的机制——为什么要设置虚拟内存?
- 操作系统管理内存的机制——为什么要设置虚拟内存?
- 操作系统管理内存的机制——为什么要设置虚拟内存?
- 操作系统管理内存的机制——为什么要设置虚拟内存?
- 操作系统管理内存的机制——为什么要设置虚拟内存?
- 操作系统管理内存的机制——为什么要设置虚拟内存
- 操作系统的内存分页管理、虚拟内存介绍
- 操作系统面试—虚拟内存
- 操作系统—内存管理
- 操作系统 — 虚拟内存和物理内存的区别和联系
- 操作系统概念-----虚拟内存管理
- PE文件格式详解(3)
- 士兵杀敌(三)
- 不能读取变量的length属性
- Codeforces53E Dead Ends Matrix_Tree定理 容斥原理
- RedHat7安装JDK1.8
- 3、操作系统内存管理——段页式(虚拟内存)
- 存储过程+事务
- TCP协议3次握手
- 学Java过程中最重要的8幅图,资深程序员都知道重要性
- 【JavaSE笔记】IO(二)File类
- Java中反射及动态编译
- Android 使用逐帧动画找不到标签
- 文章标题
- 程序员高逼格指南