【操作系统原理】08-存储管理之段页式存储管理

一、页式存储管理

◆ 字块是相对物理设备的定义
◆ 页面则是相对逻辑空间的定义

◆ 将进程逻辑空间等分成若干大小的页面
◆ 相应的把物理内存空间分成与页面大小的物理块
◆ 以页面为单位把进程空间装进物理内存中分散的物理块

◆ 页面大小应该适中,过大难以分配,过小内存碎片过多
◆ 页面大小通常是512B~8K
【操作系统原理】08-存储管理之段页式存储管理
◆ 页表记录进程逻辑空间与物理空间的映射
【操作系统原理】08-存储管理之段页式存储管理
多级页表

现代计算机系统中,可以支持非常大的逻辑 地址空间(232~264),这样,页表就 变得非常大,要占用非常大的内存空间,如, 具有32位逻辑地址空间的分页系统,规定页 面大小为4KB,则在每个进程页表中的页表 项可达1M(2^20)个,如果每个页表项占用 1Byte,故每个进程仅仅页表就要占用1MB 的内存空间。

32位系统进程的寻址空间为4G
4G/4KB=2^20

二、段式存储管理

◆ 将进程逻辑空间划分成若干段(非等分)
◆ 段的长度由连续逻辑的长度决定
◆ 主函数MAIN、子程序段X、子函数Y等
【操作系统原理】08-存储管理之段页式存储管理
【操作系统原理】08-存储管理之段页式存储管理

段式存储和页式存储都离散地管理了进程的逻辑空间
◆ 页是物理单位,段是逻辑单位
◆ 分页是为了合理利用空间,分段是满足用户要求
◆ 页大小由硬件固定,段长度可动态变化
◆ 页表信息是一维的,段表信息是二维的

三、段页式存储管理

◆ 分页可以有效提高内存利用率(虽然说存在页内碎片)
◆ 分段可以更好满足用户需求
◆ 两者结合,形成段页式存储管理

◆ 先将逻辑空间按段式管理分成若干段
◆ 再把段内空间按页式管理等分成若干页

【操作系统原理】08-存储管理之段页式存储管理