编号0-1048575 相对地址0-4095页表将页号和页内地址转换成内存地址,必须要有一个数据结构,用来登 记页号和块的对应关系和有关信息。这样的数据结构称为页表。页表的作用就是实现从页号到物理块号的地址映射。页表内容页表包含以下几个表项:页号:登记程序地址空间的页号。块号:登记相应的页所对应的内存块号其它:登记与存储信息保护有关的信息。地址变换机构地址变换机构的任务是实现从逻辑地址到物理地址的转换。即把程序地址转换成内存地 址,这个转换过程是在程序执行过程中完成的,是动态地址映射。在现代计算机系统中,由系统提供的地址映射硬件机构来完成地址映射工作。计算时要注意:若给出的地址字为16进制,则将其转换为二进制,然后,根据页长及程序地址字的长 度,分别取出程序地址字的高几位和低几位就得到页号及页内地址。如页长为2K,程序 地址字为16位,则高5位为页号,低11位为页内地址。(如09C4)若给出的地址字为10进制,则用公式:程序地址字/页长商为页号,余数为页内地址。如程序地址为8457,页长为4KB,则8457/4096可得:商为2,余数为256。快表和联想存储器在前述的页地址变换过程中有一个严重的问题,那就是每一次对内存的访问都要访问页 表,页表是放在内存中的,也就是说每一次访问内存的指令至少要访问两次内存,运行 速度要下降一半。第一次访问内存中的页表,从中找到指定页的物理块号,再将块号与页内偏移量W拼接, 形成物理地址第二次访问内存时,才是从第一次所得地址中获得所需数据(获向此地址中写入数据) 解决这个问题的一种方法是把页表放在一组快速存储器中(Cache),从而加快访问内存 的速度。我们把这种快速存储器组成的页表称为快表,把存放在内存屮的页表称为慢表。快表又叫联想存储器(associative memory)或 TLB (Translation 1 ookaside buffers) 用以存放当前访问的那些页表项□ □ □
两级页表和多级页表当页表项很多时,仅采用一级页表需要大片连续空间,可将页表也分页,并对页表所占 的空间进行索引形成外层页表。由此构成二级页表。更进一步可形成多级页表。页式存储管理方案小结优点:解决了碎片问题便于管理可以使程序和数据存放在不连续的主存空间缺点:不易实现共享不便于动态连接页表都有可能占用较大的存储空间。要求有相应的硬件支持,从而增加了系统成本,也增加了系统开销(2)分段管理方式引入段式管理方式主要是为了满足用户和程序员的需要方便用户:用户希望逻辑分段信息共享、信息保护、动态增长、动态连接分段系统基本原理分段用户程序划分按程序自身的逻辑关系划分为若干个程序段,每个程序段都有一个段名,且有一个 段号。段号从0开始,每一段段内也从0开始编址,段内地址是连续的。段的长度由相 应的逻辑信息组的长度决定,因而各段长度不等。逻辑地址:由段号和段内地址组成内存划分内存空间被动态的划分为若干个长度不相同的区域,称为物理段,每个物理段由起 始地址和长度确定内存分配以段为单位分配内存,每一个段在内存中占据连续空间(内存随机分割,需要多少 分配多少),但各段Z间可以不连续存放段表段映射表。每个程序有一个段表程序的每个段在表中占有一个表项,其中记录了该段在内存中的起始地址和段的长 度。可放在内存中,也可放在寄存器中。段表是用于实现从逻辑段到物理内存区的映射。段号 段首址 段长度0 58K 20K1 100K 110Ko 260K 140K3、地址变换机构段地址映射过程为:系统中设置了段表寄存器,用于存放段表始址和段表长度TL。取出段号S和段内位移Wo若S>TL,段号太大一越界。根据段表始址找到段表,查找段号为S的表目,得到该段在内存的起始地址。检查段内地址d是否起过该段的段长SL。若超过越界。把段首地址与段内位移相加,形成内存物理地址。8K82928692主存同页地址变换一样,在段地址变换过程屮,也有两次访问内存的问题。为了加快访问内存的速度也 可采用快速存储器组成快表。段式存储管理方案小结优点:便于动态申请内存管理和使用统一化便于共享便于动态链接缺点:产生外部碎片(3)段页式存储管理方式产生背景:结合页式段式优点,克服二者的缺点基本原理地址变换过程基本原理用户程序划分
按段式划分(对用户来讲,按段的逻辑关系进行划分;对系统讲,按页划分每一段)
[单选题]用页式方法来分配和管理内存空间,即把内存划分为若干大小相等的页面;用段式方法对用户程序按照其内在的逻辑关系划分成若干段;再按照划分内存页面的大小把每一段划分成若干大小相等的页面,这种存储管理是A.段式存储管理B.页式存储管理C.段页式存储管理D.页面式存储管理
[单选题]某程序将256×256的矩阵置初值0。现假定分给这个矩阵的内存块为1页,页面大小为每页256个整数字。矩阵按行存放,开始时内存为空。若程序和有关变量已放在内存其他处,并常驻内存,且程序按如下编制: VAR A:ARRAY [1...256,1... 256]OF INTEGER; FOR I:=1 TO 256 FOR J:=1 TO 256 A [I, J]:=0; 则程序运行完毕共发生多少缺页中断( )。A.255B.256C.2562-1D.2562
[单选题]在一个虚拟存储系统中,分配给某个进程3页内存,开始时这3页内存为空。页面访问序列是1、2、3、4、2、1、5、6、2、1、2、 3、7、6、3。若采用最近最久未使用(LRU)页面淘汰算法,缺页次数为A.10B.12C.14D.16
[单选题]请求页式管理中,缺页中断率的相关因素有:进程所分得的内存页面数、进程页面大小和 ( )。A.页表的位置B.置换算法C.分区管理方式D.进程调度算法
[单选题]虚拟页式存储管理中页表中有若干项,当内存中某一页面被淘汰时,是否将该页写回外存可根据A.是否在内存标志B.外存地址C.修改标志D.访问标志
[单选题]请求页式管理中,缺页中断率与进程所分得的内存页面数、______和进程页面流的走向等因素有关。A.页表的位置B.置换算法C.页面的大小D.进程调度算法
[单选题]请求页式管理中,缺页中断率与进程所分得的内存页面数,______和进程页面流的走向等因素有关。A.页表的位置B.置换算法C.页面的大小D.进程调度算法
24 假设某虚存的用户空间为1O24KB ,页面大小为4KB ,内存空间为512KB 。已知用户的虚页10 、11 、12 、13 页分得内存页框号为62 、7
[单选题]虚拟页式存储管理中页表有若干项,当内存中某一页面被淘汰时,可根据什么决定是否将该页写回外存?A.内存标志B.外存地址C.修改标志D.访问标志
[单选题]下表是某页式内存分配的情况,页面大小为0x1000B,有效位为1表示该页在内存。系统将逻辑地址0x088B、0x01F3C、0x2220、0x0356F、0x441C转换为物理地址时,会产生几次缺页中断?A.A.1个B.B.2个C.C.3个D.D.4个