基于基本块大小的不同,段与页,段页式;
需求
连续分配缺点:物理内存必须连续 分配给程序的;存在外碎片和内碎片;内存分配动态修改困难; 设计目标:提高内存利用效率和管理灵活性 1. 允许一个程序的使用非连续的物理地址空间 2. 允许共享代码与数据 函数库 ,两个进程都使用,减少内存占用 3. 灵活 支持动态加载和动态链接
需要解决的问题: 虚拟地址和物理地址的转换 软件实现 灵活 开销大,类似数据的外排序 硬件实现 够用 开销小 硬件辅助机制 进程分配的内存放到不连续的地方,每一块大小有多大 段式 分的大 页式 分的小
段式
目的:更细粒度和灵活的分离与共享 段表示访问方式和存储数据等属性相同类似 段是连续的,若干个段组成进程逻辑地址空间。
硬件访问
页式
概念
帧 物理页面,frame,page frame; 物理地址空间划分为大小相同的基本分配单位 页面 逻辑页面,page 把逻辑地址空间划分 帧和页的大小必须是相同的
页面到页帧的转换 页表 保存关系 mmu/tlb 更高效转换 页内偏移=帧内偏移 通常页号大小不等于 帧号大小,逻辑是连续的,但是物理帧不一定了
快表 缓存常用的表项 cpu中,不命中 内存中的页表 多级页表 间接引用 减少页表长度,通过简介引用将页号分成k级 反之页表 减少页表大小。
段页式
两者结合