计算机系统结构4.ppt
- 文档编号:2159928
- 上传时间:2022-10-27
- 格式:PPT
- 页数:108
- 大小:1.69MB
计算机系统结构4.ppt
《计算机系统结构4.ppt》由会员分享,可在线阅读,更多相关《计算机系统结构4.ppt(108页珍藏版)》请在冰豆网上搜索。
第四章存储体系4.1基本概念4.2虚拟存储器4.3高速缓冲存储器4.4三级存储体系4.5存储系统的保护4.6本章小结4.1基本概念4.1.1存储体系及其分支从应用程序员来看,主、辅存构成了一个完整的整体,速度接近于主存的,容量是辅存的,每位价格接近于廉价慢速的辅存。
称它是一个存储体系或存储层次。
即存储层次对应用程序员是透明的。
第四章4.1基本概念-4.1.1存储体系及其分支从CPU看,速度是接近于主存的,容量是辅存的,每位价格是接近于辅存的。
从速度上看,主存的访问时间约为磁盘的访问时间的10-5,即快10万倍。
从价格上看,主存的每位价格约为磁盘的每位价格的103,即贵1000倍。
如果存储层次能以接近辅存的每位价格去构成等于辅存容量的快速主存,就会大大提高存储器系统的性能价格比。
第四章4.1基本概念-4.1.1存储体系及其分支Cache存储器不仅对应用程序员是透明的,对系统程序员也是透明的,完全由辅助硬件实现。
第四章4.1基本概念-4.1.1存储体系及其分支由二级存储层次依次可组合成如下图所示的多级存储层次。
希望从CPU看是一个整体,有接近于最高层M1的速度、最低层Mn的容量,并有接近于最低层Mn的每位价格。
第四章4.1基本概念-4.1.1存储体系及其分支访问速度越来越快通用寄存器堆指令和数据缓冲Cache(SRAM)主存储器(DRAM)联机外部存储器脱机外部存储器每位的价格越来越便宜存储容量越来越大CPU内部第四章4.1基本概念-4.1.1存储体系及其分支在一般计算机系统中主要有两种存储系统Cache存储系统:
由Cache和主存储器构成主要目的:
提高存储器速度虚拟存储系统:
由主存储器和磁盘存储器构成主要目的:
扩大存储器容量第四章4.1基本概念-4.1.1存储体系及其分支4.1.2存储体系的构成依据为了使存储体系能有效地工作,当CPU要用到某个地址的内容时,总希望它已在速度最快的M1中,这就要求未来被访问信息的地址能预知,这对存储体系的构成是非常关键的。
这种预知的可能性是基于计算机程序具有局部性,它包括时间上的局部性和空间上的局部性。
时间上的局部性:
在最近的未来要用到的信息很可能是现在正在使用的信息,这是因为程序存在循环。
空间上的局部性:
在最近的未来要用到的信息很可能与现在正在使用的信息在程序空间上是邻近的。
第四章4.1基本概念-4.1.2存储体系的构成依据这样,层次的M1级不必存入整个程序,只需将近期用过的块或页(根据时间局部性)存入即可。
在从M2级取所要访问的字送M1时,一并把该字所在的块或页整个取来(根据空间的局部性),就能使要用的信息已在M1的概率显著增大。
这是存储层次构成的主要依据第四章4.1基本概念-4.1.2存储体系的构成依据4.1.3存储体系的性能参数以二级体系(M1,M2)为例来分析设ci为Mi的每位价格,SMi为Mi的以位计算的存储容量,TAi为CPU访问到Mi中的信息所需的时间。
为评价存储层次性能,引入存储层次的每位价格c、命中率H和等效访问时间TA。
第四章4.1基本概念-4.1.3存储体系的性能参数存储层次的每位价格c式中并未把采用存储体系所增加的辅助软、硬件价格计算在内第四章4.1基本概念-4.1.3存储体系的性能参数命中率H为CPU产生的逻辑地址能在M1中访问到(命中到)的概率。
H=R1/(R1+R2)R1为逻辑地址流的信息能在M1中访问到的次数为,在M2中还未调到M1的次数为R2。
显然命中率H与程序的地址流,所采用的地址预判算法及M1的容量都有很大关系。
不命中率(失效率)对二级存储层次,失效率为1-H。
第四章4.1基本概念-4.1.3存储体系的性能参数存储层次的等效访问时间TA:
TA=HTA1+(1-H)TA2存储层次的访问效率e:
e=TA1/TA相邻二级的访问时间比r:
r=TA2/TA1第四章4.1基本概念-4.1.3存储体系的性能参数第四章4.1基本概念-4.1.3存储体系的性能参数存储系统的设计设计原则相邻级的容量差、速度差较大(减少c)存储系统具有较高的命中率(减少T)存储系统的辅助软、硬件开销较小涉及问题映像规则:
块从低层调入高层时放在何位置查找算法:
如何在本系统中查找需访问的块替换算法:
发生失效时,替换哪个块写策略:
进行写访问时,应进行哪些操作第四章4.1基本概念-4.1.3存储体系的性能参数4.2虚拟存储器1961年英国曼彻斯特大学Kilbrn等人提出70年代广泛地应用于大中型计算机系统中目前许多微型机也开始使用虚拟存储器4.2.1虚拟存储器的管理方式将程序分割成若干个段或页,用相应的映像表指明该程序的某段或页是否已装入主存。
若已装入,同时指明其在主存中的起始地址;若未装入,就去辅存中调段或调页,装入主存后在映像表中建立好程序空间和实存空间的地址映像关系。
这样,程序执行时通过查映像表将程序(虚)地址变换成实主存地址再访主存。
根据所用的映像算法,将虚拟存储器管理方式分成段式、页式和段页式3种。
第四章4.2虚拟存储器-4.2.1虚拟存储器的管理方式三种地址空间:
虚拟地址空间,主存储器地址空间,磁盘地址空间其中,虚拟地址空间指的是程序员用来编写程序的空间,非常大;主存储器地址空间指实用地址空间,对应实地址。
磁盘地址空间即为辅存地址空间,对应辅存地址。
第四章4.2虚拟存储器第四章4.2虚拟存储器-4.2.1虚拟存储器的管理方式1段式管理段:
按程序的逻辑功能来划分,一个用户的程序(或一个进程)可以包含多个功能不同的程序段。
地址映象方法:
每个程序段都从0地址开始编址,长度可长可短,可以在程序执行过程中动态改变程序段的长度。
第四章4.2虚拟存储器第四章4.2虚拟存储器-4.2.1虚拟存储器的管理方式地址变换方法:
由用户号找到基址寄存器从基址寄存器中读出段表的起始地址把起始地址与多用户虚地址中段号相加得到段表地址把段表中给出的起始地址与段内偏移D相加就能得到主存实地址第四章4.2虚拟存储器第四章4.2虚拟存储器-4.2.1虚拟存储器的管理方式第四章4.2虚拟存储器第四章4.2虚拟存储器-4.2.1虚拟存储器的管理方式0段表长度段表基址6As段名起始地址装入位段长访问方式用户号U段号S段内偏移D多用户虚地址主存实地址432101N-1As段表基址寄存器一个用户(一道作业)的段表第四章4.2虚拟存储器第四章4.2虚拟存储器-4.2.1虚拟存储器的管理方式主程序(0段)1k1段2段3段0500020002000段号段长起址01k8k150016k22009k320030k08k9k16k30k程序空间主存储器段表第四章4.2虚拟存储器第四章4.2虚拟存储器-4.2.1虚拟存储器的管理方式段式虚拟存储器的主要优点:
(1)程序的模块化性能好
(2)便于程序和数据的共享(3)程序的动态链接和调度比较容易(4)便于实现信息保护段式虚拟存储器的主要缺点:
(1)地址变换所花费的时间比较长,做两次加法运算
(2)主存储器的利用率往往比较低(3)对辅存(磁盘存储器)的管理比较困难2页式管理主要优点:
(1)主存储器的利用率比较高
(2)页表相对比较简单(3)地址变换的速度比较快(4)对磁盘的管理比较容易主要缺点:
(1)程序的模块化性能不好
(2)页表很长,需要占用很大的存储空间。
例如:
虚拟存储空间4GB,页大小1KB,则页表的容量为4M字,16MB第四章4.2虚拟存储器-4.2.1虚拟存储器的管理方式第四章4.2虚拟存储器-4.2.1虚拟存储器的管理方式Pa虚页修改实页号装入用户号U虚页号P页内偏移D页内偏移d2pPa页表基址页表实页号p1第四章4.2虚拟存储器-4.2.1虚拟存储器的管理方式0页1页2页3页页号主存页号0123用户程序主存储器页表页式虚拟存储器的地址映象3段页式管理用户按照程序段来编写程序,每个程序段分成几个固定大小的页。
基本思想:
将虚拟存储空间按段式管理,而主存空间按页式管理,存在虚空间的程序按逻辑关系分段,每一段又可分成固定大小的页。
主存则只分成若干相同大小的页。
u地址变换方法:
需要三层表记录相关信息,包括段表基地址表、段表基地址表、段表、页表。
段表、页表。
(1)先查段表,得到该程序段的页表起始地址和页表长度,
(2)再查页表找到要访问的主存实页号,(3)最后把实页号p与页内偏移d拼接得到主存的实地址。
第四章4.2虚拟存储器-4.2.1虚拟存储器的管理方式第四章4.2虚拟存储器-4.2.1虚拟存储器的管理方式装入修改实页号标志用户号U段号S页内偏移页内偏移0/11pA实页号p虚页号PAs装入1修改0/1页表地址ApAs4.2.2页式虚拟存储器的构成1.地址的映像和变换它将主存空间和程序空间都按相同大小机械等分成页,并让程序的起点总是处在页的起点上。
程序员用指令地址码Ni来编写每道程序,Ni由用户虚页号Nv和页内地址Nr组成。
主存地址则分成实页号nv与页内位移nr两部分,其中nr总是与Nr一样。
大多数虚拟存储器中每个用户的程序空间可比实际主存空间大得多,即一般有Nvnv。
这样,虚拟存储器系统总的多用户虚地址Ns就由用户标志u、用户的虚页号Nv及页内地址Nr三部分构成,总的虚存空间是2u+Nv个页。
可将u和Nv合并成多用户虚页号Nv,则2Nv2nv。
第四章4.2虚拟存储器-4.2.2页式虚拟存储器的构成第四章4.2虚拟存储器-4.2.2页式虚拟存储器的构成全相联映像:
由于虚存空间远大于实存空间,页式虚拟存储器一般都采用让每道程序的任何虚页可以映像装入到任何实页位置的。
仅当一个任务要求同时调入主存的页数超出2nv时,两个虚页才会争用同一个实页位置,这种情况是很少见的。
因此,全相联映像的实页冲突概率最低。
第四章4.2虚拟存储器-4.2.2页式虚拟存储器的构成第四章4.2虚拟存储器-4.2.2页式虚拟存储器的构成整个多用户虚存空间可对应2u个用户(程序),但主存最多同时只对其中N个用户(N道程序)开放。
由基号b标识N道程序中的每一道都有一个最大为2Nv行的页表,而主存总共只有2nv个实页位置,因此N道程序页表的全部N*2Nv行中,装入位为“1”的最多只有2nv行。
由于N*2Nv2nv,使得页表中绝大部分行中的实页号nv字段及其他字段都成了无用的了,这会大大降低页表的空间利用率。
第四章4.2虚拟存储器-4.2.2页式虚拟存储器的构成一种解决办法是将页表中装入位为“0”的行用实页号nv字段存放该程序此虚页在辅存中的实地址,以便调页时实现用户虚页号到辅存实地址的变换。
另一种方法是把页表压缩成只存放已装入主存的那些虚页(用基号b和Nv标识)与实页位置(nv)的对应关系,该表最多为2nv行。
我们称它为相联目录表法,简称目录表法。
该表采用按内容访问的相联存储器构成。
第四章4.2虚拟存储器-4.2.2页式虚拟存储器的构成目录表法基本思想:
用一个小容量高速存储器存放页表。
地址变换过程:
把多用户虚地址中b与Nv拼接起来,相联访问目录表。
读出主存实页号nv,把nv与多用户虚地址中的Nr拼接得到主存实地址。
如果相联访问失败,发出页面失效请求。
主要优点:
与页表放在主存中相比,查表速度快。
主要缺点:
可扩展性比较差。
主存储器容量增加时,目录表的造价高,速度降低。
第四章4.2虚拟存储器-4.2.2页式虚拟存储器的构成第四章4.2虚拟存储器-4.2.2页式虚拟存储器的构成装入磁盘实地址用户号页内偏移1虚页号外部地址变换(软件实现)磁盘号柱面号磁头号块号多用户虚地址外页表2页面替换算法页面替换发生时间:
当发生页面失效时,要从磁盘中调入一页到主存。
如果主存所有页面都已经被占用,必须从主存储器中淘汰掉一个不常使用的页面,以便腾出主存空间来存放新调入的页面。
评价页面替换算法好坏的标准:
一是命中率要高二是算法要容易实现第四章4.2虚拟存储器-4.2.2页式虚拟存储器的构成
(1)随机算法(RANDRandomalgorithm)算法简单,容易实现;没有利用历史信息,没有反映程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机系统 结构