计算机存储器的层次结构

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

起始地址 8K 16K 9K 30K
段表
段式虚拟存储器的地址映象
0 8K 9K 16K
30K 主存储器
2003.3.1
A
5
段式虚拟存储器的优点如下:
1. 程序的模块性能好。对于大程序,可以划分成多个程 序段,每个程序 段赋予不同的名字,由多个程序员并行编写,分别编译和调试。由于 各个程序段在功能上是相互独立的,因此,一个程序段的修改和增删 等不会影响其他程序段,从而可以缩短程序的编制和调试时间。
号是在虚地址空间中编排的;实地址空间按页的大小划分得到的一个长度 单位称为“实页”。
页式管理方法的主要缺点是按固定长度分出来的同一页内常有不同属 性的信息,不便于信息保护的实现。
页式管理方法的虚实变换算法是查页表(P152)。
0页
页号 主存页号
0
1页
1
2页
2
3
3页
页表
用户程序
页式虚拟存储器的地址映象 主存储器
的序号。物理地址的取值范围称为物理地址空间、实空间或实存。 从M1到Mn各层都有自己的物理地址空间,而对当前执行的程序模块来说,逻
辑地址空间只有一个。
地址映象方式指的是虚页集合与实页集合的对应规则,或者说是约束关系。 地址变换(又叫虚实变换)指逻辑地址到物理地址的变换过程或者算法。
页失效指当前被访问存储级中没有所需的信息,也就是不命中现象。 实页争用又叫实页冲突,指虚页调入时,根据地址映象方式划定的实空间范 围内已没有空闲实页的状况。
2. 主存储器的利用率往往比较低。由于每个程序段的长度不同的,一个 程序段通常要装在一个连续的主存空间中,程序段在主存储器中不断 地调入调出,有些程序段在执行过程中还要动态增加长度,从而使得 主存储器中有很多的空隙存在。当然,也可以采用一些好的算法来减 少空隙的数量,或者通过定时运行回收程序来合并着这些空隙,但这 无疑增加了系统的开销。
2003.3.1
A
8
页式虚拟存储器的优点是:
1. 主存储器的利用率比较高。每个用户程序只有不到一页(平均为半页) 的浪费,与段式虚拟存储器每两个程序段之间都有浪费相比要节省许多。
2. 页表相对比较简单。它需要保存的字段数比较少,一些关键字段的长度 要短许多,因此,节省了页表的存储器容量。
3. 地址映象和变换的速度比较快。在把用户程序装入到主存储器的过程中 ,只要建立用户程序的虚页号与主存储器的实页号之间的对应关系即可 不必使用整个主存的地址长度,也不必考虑页号的长度等。
2. 页表很长,需要占用很大的存储空间。通常,虚拟存储器中的每一页在 页表中都需要占用一个存储字。
2003.3.1
A
9
(3)段页式管理(P153)。 它把上述两种管理方式结合起来,首先将整个文件分段,然后在各段
内分页,所以有一个段表和若干个页表。 其虚实变换算法是先查段表,查出该段的页表起始地址再查相应的页
4. 对辅存(磁盘存储器)的管理比较容易。因为页的大小一般取磁盘存储 器物理块的大小(512字节)的整数倍。
页式虚拟存储器的缺点主要有两个:
1. 程序的模块化性能不好。由于用户程序是强制按照固定大小的页来划分 的,而程序段的实际长度一般是不固定的。因此,页式虚拟存储器中一 页通常不能表示一个完整的程序功能。
3.1.2 存储器的层次结构
第一层

通用寄存器M1
容度第二层量源自提高速缓冲存储器M2


主存储器M3
第三层

辅助存储器M4
第四层
脱机大容量存储器M5
第五层
每级存储器的性能参数可以表示为Ti,Si,Ci。存储系统的 性能可表示为:Ti<Ti+1;Si<Si+1;Ci>Ci+1。
2003.3.1
A
1
• Data location • Data identifacation • Data replacement • Data Write policy
3. 对辅存(磁盘存储器)的管理比较难。磁盘存储器通常是按固定大小 的块来访问的,如何把不定长度的程序段映象到固定长度的磁盘存储
器中,需要做一次地址变换。
2003.3.1
A
7
(2)页式管理(P151)。 页是系统规定的固定长度单位。按页划分用户文件可以避免上述零碎
空间浪费。 我们把用户文件划分得到的一个长度单位称为“虚页”,因为它的页
4. 便于实现信息保护。在一般情况下,一段程序是否需要保护是根据这 个程序的功能来决定的。因此,只有在段表中设置一个信息保护字段, 就能根据需要很方便地实现对该程序的保护。
2003.3.1
A
6
段式虚拟存储器的缺点:
1. 地址变换所花费的时间比较长。从多用户虚地址变换到主存实地址需 要查两次,做两次加法运算。
2. 便于程序和数据的共享。由于程序段是按功能来划分的,如子程序段、 数据段、表格段等。每个程序段有比较完整的功能,因此,被共享的 可能性很大。
3. 程序的动态链接和调试比较容易。由于每个程序段都是一组有独立意 义的数据块或具有完整功能的程序段,因此,在程序运行过程中,可 以根据需要一次就把一个程序段或数据块都装入到主存储器中,并且 在装入时才实行动态链接。
2003.3.1
A
2
基本术语:
地址映象与变换(P174)
逻辑地址(又称为相对地址、虚地址)是程序员在编写和编译一个程序模块 时分配指令和数据的空间单位序号,总是从0开始(可以按字节编址、按CPU字
编址等)。逻辑地址的取值范围称为逻辑地址空间、虚空间或虚存。
物理地址(又称为绝对地址、实地址)是任一级存储器为全部存储单元分配
每段使用独立的逻辑地址空间,即都从0开始计算地址。 段式管理方法的主要缺点是各段长短不一,调进调出之后容易形成 大量不规则的零碎空间。 段式管理方法的虚实变换算法是查段表(P150)。
2003.3.1
A
4
0
主程序(0段)
1K
0
1段
500
0
2段
200
0
3段
200
程序空间
段号 0 1 2 3
段长 1K 500 200 200
2003.3.1
A
3
存储层次的管理方式(P147)
根据程序的局部化性质,存储层次机构对用户文件的管理应该划分 成较小的基本调度单位来进行。依划分标准不同,存在3种存储层次管理 方式。
(1)段式管理(P148) 段是程序中的一个逻辑单位,可以是一个程序模块,或者是一个数
据结构。段的长度不一,但段内所有数据的信息属性一般是相同的,便 于统一进行信息保护。
相关文档
最新文档