段式虚拟存储器的主要缺点 (1)地址变换所花费的时间比较长,做两次加法运算 (2)主存储器的利用率往往比较低。 (3)对辅存(磁盘存储器)的管理比较困难。 2、页式虚拟存储器 由用户号U直接找到相对应的基址寄存器 从基址寄存器中读出页表起始地址 把页表起始地址与多用户虚地址中虚页号相加得到页表地址 从页表中读出主存页号p与虚地址中的页内偏移D拼接得到主存实地址 (书第152页)图3.20页式虚拟存储器的地址映象 (书第152页〕图3.21页式虚拟存储器的地址变换 页式虚拟存储器的主要优点: (1)主存储器的利用率比较高 (2)页表相对比较简单,节省了页表的存储容量 (3)地址映象和变换的速度比较快。 (4)对辅存(磁盘存储器)的管理比较容易。 页式虚拟存储器的主要缺点: (1)程序的模块化性能不好 (2)页表很长,需要占用很大的存储空间。 例如:虚拟存储空间4GB,页大小1KB,则页表的容量为4M字,16MB。 3、段页式虚拟存储器 用户按照程序段来编写程序,每个程序段分成几个固定大小的页。 地址映象方法: 每个程序段在段表中占一行 在段表中给出该程序段的页表长度和页表的起始地址, 页表中给出这个程序段的每一页在主存储器中的实页号 (书第154页)图3.22段页式虚拟存储器的地址映象 地址变换方法 先查段表,得到该程序段的页表起始地址和页表长度, 再查页表找到要访问的主存实页号, 最后把实页号p与页内偏移d拼接得到主存的实地址3—5 段式虚拟存储器的主要缺点: (1) 地址变换所花费的时间比较长,做两次加法运算。 (2) 主存储器的利用率往往比较低。 (3) 对辅存(磁盘存储器)的管理比较困难。 2、页式虚拟存储器 由用户号 U 直接找到相对应的基址寄存器 从基址寄存器中读出页表起始地址 把页表起始地址与多用户虚地址中虚页号相加得到页表地址, 从页表中读出主存页号 p 与虚地址中的页内偏移 D 拼接得到主存实地址 (书第 152 页)图 3.20 页式虚拟存储器的地址映象 (书第 152 页)图 3.21 页式虚拟存储器的地址变换 页式虚拟存储器的主要优点: (1) 主存储器的利用率比较高。 (2) 页表相对比较简单,节省了页表的存储容量。 (3) 地址映象和变换的速度比较快。 (4) 对辅存(磁盘存储器)的管理比较容易。 页式虚拟存储器的主要缺点: (1) 程序的模块化性能不好。 (2) 页表很长,需要占用很大的存储空间。 例如:虚拟存储空间 4GB,页大小 1KB,则页表的容量为 4M 字,16MB。 3、段页式虚拟存储器 用户按照程序段来编写程序,每个程序段分成几个固定大小的页。 地址映象方法: 每个程序段在段表中占一行。 在段表中给出该程序段的页表长度和页表的起始地址, 页表中给出这个程序段的每一页在主存储器中的实页号。 (书第 154 页)图 3.22 段页式虚拟存储器的地址映象 地址变换方法: 先查段表,得到该程序段的页表起始地址和页表长度, 再查页表找到要访问的主存实页号, 最后把实页号 p 与页内偏移 d 拼接得到主存的实地址