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

在线预览结束,喜欢就下载吧,查找使用更方便

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

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

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

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

自考工学类“操作系统原理”复习资料(7)四、页式存储管理(领会)1、如何分页和分块页式存储管理中有两个名词:“页”和“块”,其中的“块”是针对硬件来说的,就是把存储器分成若干相等大小的区,每个区就称为一个块。对应的,在程序中,逻辑地址进行“分页”,其大小和每个块相一致。事实上,页面的大小是由块的大小自然决定的。对于程序来说,其逻辑地址还是和原来一样采用连续的地址。只是按照块的位数取其前面数位做为页号.分配空间时,根据作业长度可以确定它的页面数,根据这个页面数在主存中分配相应的块数,只要是空闲块就可以放入,即使不是相邻的。并把分配情况记在“页表”中,根据页表可以找到相对应的页号与块号,就得出绝对地址了。2、采用页式管理,使主存空间充分利用,页不必为了得到连续空间而进行移动。可以提高系统效率。3、页表的构造与作用每个被装入主存的作业都有一张页表,指出该作业逻辑地址中的页号与所占用的主存块号之间的对应关系。页表的长度由作页拥有的页面数决定,行号对应为页号,行中记录的是主存中的块号。页表是硬件进行地址转换的依据,每执行一条指令时按逻辑地址中的页号查找页表并转换成绝对地址。在多道程序设计系统中,进入主存的每个作业都有一张页表,由一个硬件“页表控制寄存器”来记录每个作业的页表所在位置和长度以便作业转换时同时转换页表。4、快表的构造与作用快表就是页表的一部分克隆,每行中有页号及其对应的块号,整个快表存放在一个小容量的高速缓存中,访问时快表和内存同时进行查找,因为快表速度很快,而常用的页都登记在快表中,因此可以大大加快执行速度。5、采用页式管理的地址转换过程(为什么不直接用块分配表来记录而要用位示图呢,因为主存块很多,这样可以节省空间,提高效率。位示图就是用一个位(0或1)来表示一个块的使用状态,一个字32位,可以表示32块。按顺序排列,只需一小段内存就可以记录主存中大量的块状态)6、利用位示图实现页式存储空间的分配和回收页式存储管理把主存空间分成大小固定的许多块,在装业作业时,如何知道主存中哪些块已使用,哪些还未用,可以用位示图来表示。块号=字号×字长+位号字号=[i/字长](即块号i除以字长取整)位号=imod字长(即块号i除以字长取余)。五、段式存储管理(领会)1、段式存储中段的划分段式管理是根据人们对程序中需要分段编制的要求出发而提供的。它提供给用户编程时使用的逻辑地址由“段号”和“段内地址”两部分组成,其形式和页式管理相同。但是实际上是不同的:页式存储管理提供连续逻辑地址由系统自动分页,段式存储管理中的作业分段是由用户决定的,每段独立编程,因此段间的逻辑地址是不连续的。2、段式存储空间的分配这种分配方法和可变分区管理方式的分配方法相同,所不同的是:可变分区管理方式中是为每个作业分一个区,而段式管理是为一个作业中的每个段分一个连续的空间。(段式管理更细)。3、段表的构造与作用段表由段号、本段限长和起始地址三部分组成,由于每一行记录的行号可以对应程序的段号,因此段号实际上被省略,不占存储空间。与其他管理方式一样,段表记录的信息用于地址转换和存储保护。段表的表目起到了基址/限长寄存器的作用。4、段式存储管理的地址转换这个转换过程如同可变分区方式的地址转换,但是由段表的表目替代了基址/限长寄存器。绝对地址=根据段号找到段表中的起始地址+段内地址(如果段内地址超过限长则产生“地址越界”程序性中断事件达到存储保护)多道程序设计系统中,每个进入主存的作业都建立了段表,因此还有一个硬件“段表控制寄存器”来记录每个作业的段表在主存中的位置和长度。六、虚拟存储器(领会)1、什么是虚拟存储器虚拟存储器是为“扩大”主存容量而采用的一种设计技巧,它利用作业在只装入部分信息时就可以执行的特性和程序执行中表现出来的局部性特性,借助于大容量的辅助存储器实现小主存空间容纳大逻辑地址空间的作业。虚拟存储器的容量由计算机的地址结构(总线位数)决定。2、虚拟存储器的实现原理它的工作原理如下:首先把作业信息保留在磁盘上,当作业请求装入时,只将其中一部分先装入主存,作业执行中若要访问的信息不在主存中,则再设法将这些信息装入主存。3、分页式虚拟存储器的实现页式虚拟存储管理是在页式存储管理的基础上实现的。首先把作业信息作为副本存放在磁盘上,作业执行时,把作业信息的部分页面装入主存储器,作业执行时若所访问的页面已经在主存中,则进行地址转换,得到绝对地址,否则产生“缺页中断”由操作系统把当前所需的页面装入主存。4、常用的页面调度算法:FIFO、LRU、LFU当主页中无空闲块时,为了装入一个页面,就必须按某种算法将主存中某个页调出,调入所需装入的页面。这就是页面调度。常用的算法有:先进先出调度算法(FIFO)、最近最少使用调度算法(LRU)和最近最不常用调度算法(LFU)。特别要注意掌