精品资料(2021-2022年收藏的)第十讲存储管理.doc
《精品资料(2021-2022年收藏的)第十讲存储管理.doc》由会员分享,可在线阅读,更多相关《精品资料(2021-2022年收藏的)第十讲存储管理.doc(7页珍藏版)》请在三一文库上搜索。
1、第十讲 存储管理1. 在如下一段C语言程序的for循环中,void cycle(double* a) int i;double b65536;for(i=0; i3; i+) memcpy(a, b, sizeof(b);程序memcpy函数执行过程中可能发生哪些例外,各多少次。答:忽略外部中断(包括键盘,鼠标等输入),内部程序执行例外可能有: TLB例外(TLB Miss Exception) 缺页异常(Page Fault Exception)TLB例外和页大小有关,还和TLB表项以及替换算法有关(分表假设为4K、128项和最近未使用LUR,不考虑ITLB miss例外),则:65536*
2、8*2 =512*2=256*4k,也就是256次例外缺页异常具体次数和页大小有关,假设页大小为4K(假设页分配后不会被替换出去,且忽略临时变量i,以及指令代码段发生的缺页例外,假设内存足够大,页加载入主存后不会被替换):正常情况下a不会缺页,b缺页可以有128次。2. 对于指令Cache是否有必要考虑Cache别名问题?答:有必要,可能会由于cache别名导致取错指令,甚至导致Last level cache不能维护和一级指令cache之间的inclusion关系,从而导致死机。3. 假定在某一个CPU的Cache中需要64位虚拟地址,8位的进程标识,而其支持的物理内存最多有64GB。请问,
3、使用虚拟地址索引比使用物理地址作为索引的Tag大多少?这个值是否随着Cache块大小的变化而发生改变?答:由于虚拟地址有64位,进程标识为8位;而物理地址是64GB,即需要36位物理地址。这样,使用虚拟地址比使用物理地址总共增加的位数为8(6436)82836位;而保持页大小不变化,改变块的大小,增加的位数保持不变。4. 考虑一个包含TLB的当代处理器。(1)请阐述TLB、TLB失效例外、页表和Page fault之间的关系。(2)如果有这样一个机器设计:对于同样的虚拟地址,TLB命中和Page fault同时发生,这样的设计合理么?为什么?(3)现代计算机页表普遍采用层次化的方式,请解释原因
4、。答:1) TLB:Translation lookaside buffer,即旁路转换缓冲,或称为页表缓冲;里面存放的是一些页表文件(虚拟地址到物理地址的转换表)。TLB是页表的一个子集。TLB失效例外:假如某个虚地址VA,在TLB中没有找到对应的页表项,则发生TLB失效例外(TLB miss exception)。页表:简单的说,页表是内存块的目录文件,作用是实现从页号到物理块号的地址映射。用固定大小的页(Page)来描述逻辑地址空间,用相同大小的页框(Frame)来描述物理内存空间,从逻辑页到物理页框的页面映射,这些页面映射就是一张张页表(Page Table).Page Fault:缺
5、页,就是TLB中没有虚地址VA对应的页表,主存中也没有VA对应的物理地址。这时候发生Page Fault Exception(缺页例外),需要交给操作系统处理,通常需要消耗很多的时间来处理该例外。2) 不合理,因为Page Fault发生时意味着主存中没有虚地址VA对应的页表,这是TLB中也应该没有,因为TLB里的页表都是主存中换进去的,是主存中页表的子集,应该发生TLB miss。倘若没有发生,说明TLB不是主存页表的子集,这会导致存储不一致,也违背了层次化设计的基本要求。3) 多级页表可以减少页表所占用的存储空间。比如:一个32位逻辑地址空间的计算机系统,页大小为4KB,那么页表有一百万条
6、目。假设每个条目占4B,则需要4MB物理地址空间来存储页表本身。一个虚地址(32位系统,页大小 4K) 可以被分为 :一个20位的页号 +一个12位的偏移。如果对页表进行再分页,那么页号分解为:一个10位的页号 +一个10位的偏移。因此,一个逻辑地址表示如下 :p1 是用来访问外部页表的索引, p2 是外部页表的页偏移。5. 已知一台计算机的虚地址为48位,物理地址为40位,页大小为16KB,TLB为64项全相联,TLB的每项包括一个虚页号vpn,一个物理页号pfn,以及一个有效位valid,请根据如下模块接口写出一个TLB的地址查找部分的Verilog代码。module tlb_cam(vp
7、n_in, pfn_out, hit,);其中vpn_in为输入的虚页号,pfn_out为输出的物理页号,hit为表示是否找到的输出信号,“”表示与该TLB输入输出有关的其他信号。重复的代码可以用“”来简化。答:module tlb_cam(input_valid, vpn_in, pfn_out, hit, clock);input clock;input input_valid;input 33:0 vpn_in;output 25:0 pfn_out;output hit;reg 33:0 vpn_reg;always(posedge clock) beginif(input_reg)v
8、pn_reg = vpn_in;endreg60:0 cam_content 63:0;/60:60 valid 59:34 pfn 33:0 vpnwire 63:0 entry_hit;assign entry_hit0 = cam_content060 & (vpn_in=cam_content033:0);assign entry_hit1 = cam_content160 & (vpn_in=cam_content133:0);assign entry_hit63 = cam_content6360 & (vpn_in=cam_content6333:0);assign hit =
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精品 资料 2021 2022 收藏 第十 存储 管理
链接地址:https://www.31doc.com/p-14865444.html