计算机系统基础2模拟题答案.doc

计算机系统基础2模拟题答案.doc

ID:48614693

大小:334.65 KB

页数:6页

时间:2020-01-29

计算机系统基础2模拟题答案.doc_第1页
计算机系统基础2模拟题答案.doc_第2页
计算机系统基础2模拟题答案.doc_第3页
计算机系统基础2模拟题答案.doc_第4页
计算机系统基础2模拟题答案.doc_第5页
资源描述:

《计算机系统基础2模拟题答案.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、1.(a)在流水线处理器中,什么是冒险(hazard)?在什么情况下出现冒险?对于冒险一般如何处理?(b)什么是CISC?什么是RISC?它们各自有什么特点和区别?(c)什么是虚拟地址?虚拟地址有什么作用?(d)解释下列名词:大端(bigendian)、小端(littleendian)、主机序、网络序(a)流水线冲突:在流水线系统中,由于相关的存在,使得指令不能在指定的周期内完成。流水线冲突包括结构冲突、数据冲突和控制冲突三种。1)结构冲突:因为硬件资源满足不了指令重叠执行要求而产生的冲突。解决方法:设置独立的数据、指令cache;阻塞后面指令运行2)数据冲突:一条指令依赖于前面指令的运行结果

2、而产生的冲突。解决方法:定向、流水线互锁和编译器指令调度3)控制冲突:流水线遇到跳转指令或者其它更改pc值的指令。解决方法:预测指令运行、延迟跳转、尽快计算跳转目标地址。(b)CISC是“复杂指令集”的简称,复杂指令集指令数量很多,部分指令的延迟很长,编码是可变长度的。RISC是“精简指令集”的简称,精简指令集指令数量少得多,没有较长延迟的指令,编码是固定长度的。(c)虚拟地址是操作系统提供的对主存的抽象,它为每个进程提供了一个大的、一致的和私有的地址空间。它的作用是1)它将主存看成一个存储在磁盘上的地址空间的高速缓存,在主存中只保存活动区域,并根据需要在主存和磁盘之间来回传送数据,通过这种方

3、式,它高效的利用了主存2)它为每个进程提供了一致的地址空间,从而简化了存储器管理3)它保护了每个进程的地址空间不被其它进程破坏。(d)最低有效字节在最前面的方式,称为小端法,最低有效字节在最后面的方式,称为大端法。主机序是指机器CPU采用的字节表示方法。网络序是TCP/IP中规定的数据表示格式,与CPU类型和操作系统无关,网络序采用大端排列。2.有如下假设:(1)存储器是字节寻址的;(2)存储器访问的是1字节的字(不是4字节的字);(3)地址宽度为13位;(4)高速缓存是2路组相联的(E=2),块大小为4字节(B=4),有8个组(S=8);高速缓存的内容如下,所有数字都是以十六进制来表示的:(

4、a)下面的放开展示的是地址格式(每个小方框一个位)。指出(在图中标出)用来确定下列内容的字段:(1)CO高速缓存块偏移(2)CI高速缓存组索引(3)CT高速缓存标记(b)假设一个程序运行在上述机器上,它引用0xE34处的1个字节的字。指出访问的高速缓存条目和十六进制表示的返回的高速缓存字节值。指出是否会发生缓存不命中,如果出现缓存不命中,用“-”来表示“返回的高速缓存字节”。(a)由于块大小是4(22),那么需要两位来表示块内偏移;由于缓存一共有8(23)组,那么需要3位来表示组索引;由于地址一共13位,那么标记位为8(13–2-3)位;按照高速缓存地址划分的规则(从高位到低位依次是标记,组索

5、引,块内偏移),13位地址可标记为:(b)地址0xE34的二进制表示为:0b111000110100;根据上面的讨论,末两位为块内偏移0b00(0x0),末两位之前三位为组索引0b101(0x5),末五位之前是标记0b1110001(0x71);通过查表可以找到组号为5,标记为0x71的位置,该位置有效位为1,读取第一个字节得到数据0xB。3.(a)确定下面的malloc请求序列得到的块大小和头部值。假设:(1)分配器维持双字对齐,使用隐式空闲链表,格式如下图所示。(2)块大小向上摄入为最接近的8字节的倍数。(b)确定下面每种对齐要求和块格式的组合的最小块大小。假设:隐式空闲链表,不允许有效载

6、荷为零,头部和脚部放在4字节的字中。(a)块大小包括块头部大小(如果块有尾部的话,那么也包含尾部大小),当请求3字节大小的块时,需要3+4=7字节的内容,而根据条件的8字节倍数要求,块的大小确定为8字节(最后一字节虽然没有申请,但也分配了);根据图片显示的块结构,块头部值的最后三位为元数据,元数据头两位始终为0,最后一位为1表示已占用的块;块头部值可计算为块大小加上块元数据值,即0x8+0b001,即头部值为9。根据上面的方法,malloc(11)需要分配16字节的块,头部值为17(0x11);malloc(20)需要分配24字节的块,头部值为25(0x19);malloc(21)需要分配32

7、字节的块,头部值为33(0x21)(c)第一项,块对齐单字,已分配和空闲块都有头部和尾部,那么头部和尾部数据需要8字节;而有效载荷不允许为0,那么大于8且能被4整除的最小正整数为12,因此最小块大小为12。第二项,块对齐单字,已分配块可以省略脚部,那么仅考虑已分配块,头部数据需要4个字节;有小载荷不允许为0,那么大于4且能被4整除的最小正整数为8,因此最小块大小为8。第三项,大于8且能被8整除的最

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

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

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