-
操作系统:分页与分段存储管理方式
- 连续内存分配的缺点
- 分配给一个程序的物理内存是连续的
- 内存利用率较低
- 有外碎片、内碎片的问题
- 非连续内存分配的优点
- 一个程序的物理地址空间是非连续的
- 更好的内存利用和管理
- 允许共享代码与数据
- 支持动态加载和动态链接
- 非连续内存分配的缺点:
- 如何建立虚拟地址和物理地址之间的转换(硬件方案、软件方案)
- 两种硬件方案
- 分段
- 分页
- 划分物理内存至固定大小的帧(frame):大小是2的幂
- 划分逻辑地址空间至相同大小的页(page):大小是2的幂
- 分页机制性能问题:
- 访问一个内存单元需要2次内存访问:一次用于获得页表项,一次用于访问数据
- 页表可能非常大(如何处理? 缓存 + 间接访问(多级页表))
- TLB
- TLB是一种访问速度比内存快很多的高速缓存(TLB不是内存!)。
- 若快表命中,则直接取出该页对应的帧号,再将帧号和页内偏移组合形成物理地址。(一次访问内存)
- 若快表未命中,则需要访问内存中的页表,找到对应页表项,获得页表项存放的帧号,再将帧号与页内偏移组合形成物理地址。(两次访问内存)
- 多级页表
- 多级页表的访问次数(假设没有快表) --- n级页表访问一个逻辑地址需要n+1次访问内存。
- 分段与分页内存管理的区别
- 分段划分的是程序的逻辑地址空间。分段对用户是可见的。
- 分页划分的是物理内存空间。分页对用户是不可见的。
- 页的大小固定,且由系统决定。段的长度不固定,决定于用户编写的程序。
- 分页的用户进程地址空间是一维的。分段的用户进程地址空间是二维的。
- 分段、分页都需要两次访问内存(分段页可以引入快表)。
-
相关阅读:
2018 ACM 网络选拔赛 徐州赛区
2018 ACM 网络选拔赛 焦作赛区
2018 ACM 网络选拔赛 沈阳赛区
poj 2289 网络流 and 二分查找
poj 2446 二分图最大匹配
poj 1469 二分图最大匹配
poj 3249 拓扑排序 and 动态规划
poj 3687 拓扑排序
poj 2585 拓扑排序
poj 1094 拓扑排序
-
原文地址:https://www.cnblogs.com/xiaobaizzz/p/12266828.html
Copyright © 2020-2023
润新知