nullnull
7.1 简介7.1 简介主存储器:
存放当前正在执行的程序和数据
由半导体存储器组成
可随机访问任一单元
辅助存储器:
存放主存的副本和当前不运行的程序和数据
由磁盘、磁带、光盘等组成
为串行访问存储器
null存储系统的层次结构
辅存
主存
Cache7.2 高速缓冲存储器(Cache)7.2 高速缓冲存储器(Cache)7.2.1 基本结构
工作模式:当CPU需要访问主存时,用访存地址访问主存同时,将访存地址变换成Cache地址(由专门硬件完成)。若Cache命中,则访问Cache,当不命中,从存储器中读出送入CPU,并且把包含该字的块送入Cache.
CPUCache主存字块nullCache的容量是主存的部分副本
容量比主存小,目前一般有数KB到数MB
快存的功能全部由硬件实现,并对程序员透明。
Cache的基本组成:
(A) Cache存储器
(B) Cache控制器
(a) 地址变换逻辑
(b) 替换逻辑组成。
Cache的全部功能是由硬件来实现的,对程序员透明
7.1.2 地址变换和映像方式7.1.2 地址变换和映像方式1、概念:
1)地址映象:为了把信息放到Cache中,必须应用某种函数把主存地址映象到Cache中定位,称作地址映象。
2)地址变换:在信息按这种映象关系装入Cache后,执行程序时,应将主存地址变换成Cache地址。这个变换过程叫作地址变换。地址映象和变换是密切相关的。
2、Cache的地址映象方式有直接映象、全相联映象和组相联映象。
null为了进行地址变换操作,将Cache和主存分成同样大小的块,每块包含一定数量的存储字。
比如:主存容量为1MB,Cache容量为8KB,若每1KB为一块,那么主存可分为1K块,Cache可分为8块。那么主存中最多有8块信息进入Cache。
主存地址:主存块号(A19~A11) 块内地址(A9~A0)
Cache地址: Cache块号(A13~A11)块内地址(A9~A0)
究竟主存中的某个块调用到Cache中的哪个块中?(地址映像)null1、全相连映像
定义:主存中任何一块信息都可以调入Cache的任何一块中。
工作方式:
1)CPU访问主存时,需将主存块号转变成Cache块号。所以要设置一个块号对照
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
。(含装入位即标记)
2)主存中任何一块调入Cache时,要填写对照表,并将标记记“1”,表示该Cache块被占用。
3)CPU给出访存地址时,去查对照表,找到对应的Cache号,表示Cache命中,那么就将Cache块号+块内地址去访问Cache.(地址变换)地址变换和映像方式地址变换和映像方式优缺点:
1)优点:使用灵活,利用率高
2)缺点:一是访问速度太慢,这是因为要与所有标记全部比较一遍,才能确定是否命中;二是成本太高
{0,1,2,3,4…………1023}
{0,1,2,3,4,5,6,7}
地址变换和映像方式地址变换和映像方式2、直接映像
定义:主存中的某些块只能固定调入Cache中的某一块。
工作原理:将主存分成与Cache块同样大小的区,每个区的第0块只能对应Cache的第0块,每个区的第1块只能对应Cache的第1块等等。
{ [0,1,2,3,4,5,6,7],[0~7]………..[0~7]}
[0,1,2,3,4,5,6,7]
地址变换和映像方式地址变换和映像方式主存和Cache之间的地址结构图
主存地址:
区号 块号 块内地址
(A19~A13)(A12~A10)(A9~A0)
Cache地址:
块号 块内地址
(A12~A10)(A9~A0)
地址变换:由于块号和块内地址相同,对照表中记录各个块对应的主存区号。CPU访问主存时,查区号是否在表中。(简化了变换过程)地址变换和映像方式地址变换和映像方式优缺点:
1)优点:简单
2)缺点:不灵活, Cache利用率低。直接映像举例直接映像举例设主存容量为1MB,有16KB的直接相连的Cache,假定该Cache的块为8个32位的字.问:1)写出Cache的地址格式
2)写出主存地址格式
3)对照表容量多大?
4)主存地址为ABCDE8F8的单元在Cache中的什么位置?直接映像举例直接映像举例Cache容量为16KB,地址为14位,块的大小为32B,块内地址为5位, Cache块地址为9位
主存容量1MB,地址为20位,块的大小32B,块内地址为5位,块号地址为9位,区号地址为6位.
对照表的单元数为29,对照表中存放区号,区号的字长为6位,所以容量为:29字*6位
1010 1011 1100 1101 1110 1000 1111 1000
块内地址=11000
Cache有512块,主存块号/512就是对应到Cache的块号101000111,则主存地址在Cache的对应地址为 101000111 11000.
地址变换和映像方式地址变换和映像方式3、组相连映像
定义:将主存和Cache分成同样大小的组,每个组内包含相同数量的块。组内采用全相连映像,组间采用直接映像。
比如:将上面Cache中8块分成两组,每组4块。同样主存中也是4块为一组(相当于一个区有两个组。
工作原理:主存中的任何一个区内的0组,只能调入Cache的第0组。任何一个区内的1组,只能调入Cache的第1组,实现组间直接映像;各个小组内实现全相连映像。地址变换和映像方式地址变换和映像方式组相连映像方式:
{ [(0~3),(4~7)],[(0~3),(4~7)]…….[(0~3),(4~7)]}
[(0,1,2,3),(4,5,6,7)]
地址变换和映像方式地址变换和映像方式主存和Cache的地址结构:
主存地址:
区号 组内块号 组号(r) 块内地址
A19~A13 A12 A11 A10 A9~A0
Cache地址:
组内块号 组号(r) 块内地址
A12 A11 A10 A9~A0
可以看出主存和Cache的组号和块内地址相同
对照表中记录了主存的哪个区中某一组的哪一块调入了Cache的同一组的哪一块.
地址变换和映像方式地址变换和映像方式组内块号的地址的位数(r)决定了映像方式,若r=0,表示是直接相连映像;r=1表示是2路组相连映像,r=2表示是4路组相连映像;r=c(c表示Cache的块号地址的位数)
表示是全相连映像.
组相连映像的复杂性介于两者之间
Cache的命中率不仅与映像方式有关,还和Cache的容量有关.组相连映像方式举例组相连映像方式举例例:一个组相连映像Cache由64个字块组成,每组包含4个字块。主存包括4096个存储块,每个字块有128个字节组成。
1)写出Cache地址位数和地址格式
2)写出主存地址位数和地址格式
3)主存地址48AB9H映射到Cache的哪几个字块?组相连映像方式举例组相连映像方式举例解答:1) Cache地址格式:
组内块号(A12~A11),组号(A10~A7)块内地址(A6~A0)
2)主存地址格式:
区号(A19~A13),组内块号(A12~A11)
组号(A10~A7),块内地址(A6~A0)
3)48AB9H=0100 1000 1 010 1 011 1001
组号为0101,表示主存地址可映射到Cache的第5组的(字块21、22、23、24)中的任一个
替换算法替换算法当需要将一个新的数据块装入Cache时,若Cache对应的位置写满数据了那么需要替换.(考虑:全相连映像和组相连映像.)为了使Cache获得最高的命中率,就是让Cache中总是保持着使用频率高的数据,从而使CPU访问Cache的成功率最高,有对应专门的替换算法:
①先进先出法(FIFO);这种算法是把最早进入Cache中的信息块给替换掉,这种命中率并不高。其原因是最先进来的信息块,或许就是经常要用的块,反而被替换掉了。
替换算法替换算法②近期最少使用算法(LRU),这种算法是把近期使用最少的信息块替换掉。这就要求随时记录Cache中各块的使用情况,以便确定哪个字块是最近期最少使用的。由于近期使用少,未必是将来使用最少的,所以,这种算法的命中率比FIFO有所提高,但并不最理想。
③优化替换算法(OPT)。这是一种理想算法,但实现起来难度大。因此,只作为衡量其它算法的
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
,这种算法需让程序运行两次,第一次
分析
定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析
地址流,第二次才真正运行程序。
虚拟存储器虚拟存储器来由:若需运行的程序比主存容量大,那么该程序无法在机内运行.要解决能够在计算机内运行比主存储器容量大的程序.
虚拟存储(基本概念)虚拟存储(基本概念)1、虚拟存储器与一般的主存--辅存系统的本质区别是:
(1)虚拟存储器允许人们使用比主存容量大得多的地址空间来访问主存,非虚拟存储器最多只允许人们使用主存的整个空间,一般只允许使用操作系统分配的主存中的某一部分空间。
(2)虚拟存储器每次访问主存时必须进行虚、实变换,而非虚拟存储器系统则不必变换。
2、虚拟存储器的结构null
虚拟存储系统中,虚拟空间的大小与实存,辅存无关,取决于机器提供的虚拟地址码的长度辅助软硬件主存辅存CPUnull3、虚拟存储系统运行原理:
程序运行时,CPU提供的是虚地址,由辅助部件判定该虚地址中的信息是否已经装入实存,如果已装入,表示主存“命中”,这是将虚地址变换成实地址去访问主存;若没命中,将包含该虚地址的信息块从辅存调入实存后CPU才能访问.
地址映像:辅存中的信息块是否装入实存上(同样采用全相连、直接映像和组相连等映像方式)
null4、主存外存层次的基本信息传送单位可采用三种不同的
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
:段、页或段页,这就形成了页式虚拟存储器、段式虚拟存储器、段页式虚拟存储器。
页式虚拟存储器页式虚拟存储器1、概念:
页式虚拟存储器是以页为信息传送单位的虚拟存储器,也就是说,在这种虚拟存储器中,不论是虚拟空间,还是主存空间都被分成大小相等的页,称为页面。
1) 逻辑页:虚存空间,虚拟地址分为两个字段:高位字段为逻辑页号,低位字段为页内行地址;
2) 物理页:主存空间,实存地址也分为两个字段:高位字段为物理页号,低位字段为页内行地址
页面大小都是相等的,所以页内行地址(位数)是相等的。
null比如:某系统中可提供虚地址为32位,实地址为20位,每4KB为一页。那么地址的结构:
虚地址:A31~A12 A11~A0
虚页号 页内地址
实地址:A19~A12 A11~A0
实页号 页内地址
所以地址变换:只需要将虚页号变换成实页号。
null2、页表
功能:完成虚拟地址到主存实地址的变换。(当命中时)
组成: 1)对应虚页号的实页号 2)控制信息
在页表中,对应每一个虚存逻辑页号有一个表目,表目内容至少要包含该逻辑页所在的主存页面地址(物理页号),用它作为主存地址的高字段,与虚存地址的页内行地址字段相拼接,就产生了完整的实主存地址
比如:某次访问的虚地址为2005B 15AH,地址变换过程:查表中虚页号2005B对应的实页号为56,则实地址为56 15AH。
null当 没有命中,那么需要将虚地址变换成辅存实际地址,在由辅存调出这一页写入实存中。变换的过程同前面一样。
页表存放的位置:既可以在主存中,也可以不在主存中。
缺点:页面的划分是机械的,不完全反映程序的逻辑结构。通常会产生“页内碎片”。造成空间的浪费。
null例1:某计算机的虚拟存储系统有40位虚拟地址,32位实际地址,虚页为1M,假设控制位用了4位,所有虚页都在使用
1)计算页表大小
2)计算页面大小
解答:虚地址:(20位虚页号+20位页内地址);实地址:(12位实页号+20位页内地址)
页表大小=1M*16(12+4)
页面大小=1M
null例2:某计算机的页式虚拟管理中采用长度为16字的页面。页表如下,当CPU程序按下列二进制虚拟字地址访存时产生的实际字地址是什么:
1)00101101 2)10100000 3)10001000]
页表:虚页号 实页号 装入位
0000 0101 1
0010 0010 1
1000 0100 1
1010 0111 1
段式虚拟存储器段式虚拟存储器1概念:
将程序按逻辑结构分成许多大小不同,相对独立的程序段,各个程序模块包含不同数量的段。
2、虚地址的组成
段号+段内地址
3、虚地址到实地址的转换(段表)
1)段表(段号、段起址,段长,控制信息等)
null比如:某用户程序已有4段调入实存,各段长分别为1KB,3KB,0.5KB和20KB,相应的段表:
段号 段长 装入位 段起点
1 1KB 1 02300
2 3KB 1 3A452
3 0.5KB 1 A0987
4 20KB 1 09865
null2)地址转换
实地址=段起址+段内地址
优点:段的逻辑独立性使它易于编译\管理\修改和保护.
缺点:当一个新段要调入时,替换算法必须检查段长是否够用.只有小于或等于该段的新段才能调入实存,也会出现碎片问题,比页式要好一些
段页式虚拟存储器段页式虚拟存储器1、概念
1)将虚存和实存机械划分成同样大小的页,程序按逻辑结构分成许多大小不同的段,每个段有多个页面构成。
2)为每个用户建立一个段表,每个段建立一个页表,段表中设置一个指针指向该段的页表在实存中的起始地址,由页表指向该页在实存中的页号。
虚地址结构:
用户号 段号 段内页号 页内地址
主存实地址结构:
实页号 页内地址
用户号:用来表明该用户程序的段表的起始地址(基址)
每道程序在实存中是由一个段表+一组页表定位的。主存-辅存和Cache- 主存比较主存-辅存和Cache- 主存比较1、相同点:
1)都是将程序划分成一个个信息块,运行时能自动把信息块从慢速存储器向快速存储器调度。信息块的调度都采用替换策略。
2)遵循访问局部性原理:在一个较短的时间间隔内,CPU对局部范围的存储器地址访问频繁,而对此地址范围之外的地址访问很少。
2、不同点
1)目的不同:主存-辅存:主要弥补主存容量的不足;主存-Cache:弥补主存和CPU的速度差距
2)实现不同:主存- Cache:存取信息过程、地址变换等都是用硬件实现,对程序员透明;主-辅:由操作系统的存储管理软件和辅助硬件进行信息划分和信息的调度。
nullnullnullnull