虚拟存储技术原理

虚拟存储技术原理

ID:42220197

大小:549.00 KB

页数:6页

时间:2019-09-11

虚拟存储技术原理_第1页
虚拟存储技术原理_第2页
虚拟存储技术原理_第3页
虚拟存储技术原理_第4页
虚拟存储技术原理_第5页
资源描述:

《虚拟存储技术原理》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、虚拟存储技术原理虚拟存储器是根据程序的逻辑地址转换来的,也称线性地址空间。一般每个进程,其至每个段都冇一个,以32位为例,则每个最大可达4G。而主存目前-•般为百Mo因此程序中所指的存储单元并不能都放到主存中,也就是并不是每个程序所用的存储单元,都有具体的物理的存储器单元与之对应。虚拟存储器是根据程序的逻辑地址转换来的,也称线性地址空间。一般每个进程,其至每个段都有一个,以32位为例,则每个最人可达4G。而主存冃前一般为百Mo因此程序中所指的存储单元并不能都放到主存中,也就是并不是每个程序所用的

2、存储单元,都有具体的物理的存储器单元与之对应。应有一个位子上课(一万个虚拟位子),而学校只有一千个(物理)位子。但实际上,学校也不会一万个人同时上课,只要让上课的同学有位子(在主存屮),而其它同学只要留下联系方法能找到就好。为了降低管理的复杂性,我们采用按学号分班(页)管理。每个班要么一起上课(主存),要么一起呆在寝室(磁盘)。而在学校保留一个动态表(页表)表明每个班在哪儿(物理地址)上课,或者没上课(不在主存)。现在假设我们想按学号找一个同学,而且是女同学,只能在教室说话,呵呵。那么:先算出來

3、是哪个班的,查动态表,看该班是否在教室。在,直接按位置找到(hit);不在(pagefault),耍先找个不上课的班赶回寝室,把耍找女生所在的班调到教室,再按位置找那个同学。动态表(页表)的大小=表项数衣每个表项所需的位数。农项数=虚拟班数=虚拟人数(虚拟地址空间)/每班人数(每页人小)每个表项的位数=Log(教室数)+适当控制位数教室数=实际可以上课的人数(物理地址空间)/每班人数(每页大小)虚拟地址换算:虚拟地址(36位)TLBmiss:4G(32-bit)的存储空间,如果按4K分页,则可分

4、1M页。每个页表项为4B,则一个页表大小为4MB。由于页表太大,只能放在主存中。这样每次读内存都要读主存,大大影响读写速度。而同样基于局部性原理,整个页表在某一时刻,所用的也仅仅几页ifULlo所以我们把某段时间经常用的几个页表项,即常用的虚拟页号和其对应的物理页地址,存在Cache中,即TLB。这样,当程序需要调用某个存储单元的内容时,先根据它的线性地址,算出其所在的页。先查TLB(比较虚拟页号),如果有相同的虚拟页号,则就可以马上知道其所在的物理地址,根据物理地址进行存取。如果没有相同的虚拟

5、页号,则说明该页没有记录在TLB屮,那再去查页表,按pagefault中所说的进行。TLB像我们随身记录电话的小纸片,当要杳一个电话时,我们先看小纸片。有,我们可以直接打电话。如果没有,我们再回家查详细的电话号码簿(页表),再打电话。VIRTUAL313029ADDRESS][Uirtualpagenumber3[Pageoffset121110...020100VDirtyPhysicalpagenumberTLBhitPhysicalpagenumberPhyslealPhysicaladd

6、resstag722IPageoffsetaddressCacheindexByteoffsetindexVTagDataoVTagDataVTagDataVTag2f253I22u4-wayCache4-to-1multiplexor254255HitDataVirtualaddressProcessingareadorwritethroughtheDECStation3100TLBandcache

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。