预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共36页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Lecture11:存储管理(2)段式管理 段式管理的特点:按作业的自然段将其逻辑空间分成若干段,作业以段为单位分配内存。 空间安排: 用户作业逻辑空间为二维空间,由若干自然段组成。 逻辑地址:段号.段内偏移,记作S,d。编译及装配时把所有地址记成(S,d)的形式。 物理内存空间管理:与多道可变划分法一样,系统以段为单位分配物理内存。段式存储管理动态地址转换 段式存储管理段号段式存储管理分页式管理和分段式管理的比较 对于用户而言,段页式管理与段式相同,用户逻辑地址只涉及段号与段内位移。 对于物理内存管理而言,它与页式系统相同。 系统内的逻辑地址:段号·段内位移-->段号·页号·页内位移。记作:S,P,W.作业空间的内部表示动态地址转换保护与共享 保护与段式管理相同。 共享则可以以段或页为单位,也可以共享页表。 改进的页式管理 将段存放于线性逻辑空间,但是不同段不放在同一页面内,解决了页跨段的问题。总结“放” 连续存放 单道连续划分 多道连续固定划分 多道连续可变划分 不连续存放 页式存储 段式存储 段页式存储 改进的页式存储内存扩充技术覆盖技术的优缺点 优点 有效利用内存空间,提高系统的并发性。 缺点 覆盖结构需要程序员在程序编写的时候精心安排,并用覆盖描述语言描述,增加编程复杂度; 从外存装入覆盖文件,是以时间延长来换取空间节省的; 覆盖区仍然存在着碎片。交换技术的优缺点 优点: 增加并发运行的程序数目 可以提供优先级服务 缺点: 对换入和换出的控制增加处理机开销; 程序换入时的重定位问题。 交换技术和覆盖技术的区别虚拟存储技术虚存的基本思想虚拟存储技术虚拟存储技术实现页式虚空间的基本方法是: 在页式管理的基础上,仅将进程的一部分页放于主存。页表项中注明该页是否在主存。 程序执行时,如果访问的页不存主存,根据页表项的指示,将其从外存调入主存,如果此时无可用的内存空间,则先淘汰若干页帧。交换区(SWAP): 进程刚建立时,进程页面所在辅存即程序文件所在的辅存位置。 程序文件中一般包含有程序的二进制目标码及数据初始值和初值为0的工作区。后两者在回写时不能写入程序文件,在需要让其让出内存时将内存原数据写入交换区中。页表项结构:页表建立 复制父进程的数据区和栈区,为数据区和栈区分配swap空间,复制并修改数据区和栈区页表项内容; 继承父进程对其他资源的访问接口; 用父进程PCB中现场区初始化子进程的现场区,且保证子进程恢复现场从fork()返回处开始运行,且fork()返回值为0; 将子进程挂到就绪队列; 返回子进程pid给父进程。 为执行程序页面建页表项,保护码为可执行,外存块号即该页所在的文件的外存块号。(不必回写) 为所有初始数据页建页表项,保护码为可读写,页类型说明成回写swap页,外存块号即该页所在文件的物理块号,待该页回写时,再分配swap区空间,改外存块号栏并清除页类型。 为所有临时数据页建页表项,保护码为可读写,页类型说明成零页,外存块号栏空,当第一次访问该页时,分配页帧并清0页帧,回写时,再分配swap区空间,填外存块号栏并清除页类型。 在执行虚存访问指令时,由硬件合成物理地址: 首先若能在联想存储器中获得该虚页的物理页帧号,则访问之(联想存储器中的页表项都是合法页的页表项)。 若要查当前进程页表,须先检查该页页表项的合法位,若置上,则从页表项中获得页帧号,得物理地址访问之。 否则要发一个页故障(pagefault)或叫缺页中断(异常),当缺页中断处理完后,返回。 重新执行访存指令。根据发生页故障的虚地址得到页表项; 申请一个可用的页帧(根据所采用的替换策略可能需要引起淘汰某一页); 检查页类型,若为零页,则将页帧清0,将页帧号填入页表项的页帧号一栏,置合法位为1。若非零页,则调用I/O子系统将外存块号所指的数据读到可用页帧,将页帧号填入页表项中,合法位置1,结束。页淘汰 页淘汰可以发生在申请页帧时,而现代OS一般都定时进行页淘汰。选取被淘汰的页由页面替换策略决定,若已决定淘汰页P,则淘汰一页的主要工作有: 查P页表项的修改位,若未修改,则清0合法位,将页帧送回空闲页帧队列。 若已修改,则检查类型栏。 若是零页或回写swap区页,则申请一块swap区空间,将P的外存块号置上并清除页类型。 调用I/0子系统将页帧上的数据写到外存块号所指的外存空间。清0合法位,将页帧送回空闲页帧队列。