当前位置:问答库>考研试题

2017年东华大学F1502C语言与数据结构算法上机测试之数据结构(C语言版)复试实战预测五套卷

  摘要

一、应用题

1. 某文件系统空间的最大容量为4TB 以磁盘块为基本分配单位,磁盘块大小为1KB 。文件控制块(FCB )包含一个512B 的索引表区。请回答下列问题。

(1)假设索引表区仅采用直接索引结构,索引表区存放文件占用的磁盘块号。索引表项中块号最少占多少字节? 可支持的单个文件最大长度是多少字节?

(2)假设索引表区采用如下结构:第0〜7字节采用<起始块号,块数>格式表示文件创建时预分配的连续存储空间,其中起始块号占6B ,块数占2B ; 剩余504字节采用直接索引结构,一个索引项占6B ,则可支持的单个文件最大长度是多少字节? 为了使单个文件的长度达到最大,请指出起始块号和块数分别所占字节数的合理 值并说明理由。

【答案】

(1)文件系统存储空间共有块数可存放

(2) 为表示个块号,索引表项占512B 个索引项,每个索引项对应一个磁盘块,故最大文件长度:块号占6字节,块数占2字节的情形下,最大文件长度

理由:合理的起始块号和块数所占字节数分别为

块数占4B 或以上,就可表示4TB 大小的文件长度,达到文件系统的空间上限。

2. 假定对有序表:(3,4,5,7,24,30,42,54,63,72,87,95)进行折半查找,试回答下列问题:

(1)画出描述折半查找过程的判定树;

(2)若查找元素54,需依次与哪些元素比较?

(3)若查找元素90,需依次与哪些元素比较?

(4)假定每个元素的查找概率相等,求查找成功时的平均查找长度。

【答案】(1)判定树如图所示:

图 判定树

(2)若查找元素54,需依次和元素30、63、42、54比较,查找成功。

(3)若查找元素90,需依次和元素30、63、87、95比较,查找失败。

(4)

3. 设依以下次序给出关键字:34,16,19,21,5,49,24,62,3,17,45,8,构造3阶树。要求从空树开始,每插入一个关键字,画出一棵树。

【答案】如图所示:

4. 某计算机存储器按字节编址,虚拟(逻辑)地址空间大小为16MB , 主存(物理)地址空间大小为1MB , 页面大小为4KB ; Cache 采用直接映射方式,共8行;主存与Cache 之间交换的块大小为32B ,系 统运行到某一时刻时,页表的部分内容和Cache 的部分内容分别如题a 图、题b 所示:图中页框号及标记字段的内容为十六进制形式。

图a

图b

请回答下列问题。

(1)虚拟地址共有几位,哪几位表示虚页号? 物理地址共有几位,哪几位表示页框号(物理页号)?

(2)使用物理地址访问Cache 时,物理地址应划分哪几个字段? 要求说明每个字段的位数及在物理地址中的位置。

(3)虚拟地址001C60H 所在的页面是否在主存中? 若在主存中,则该虚拟地址对应的物理地址是什么? 访问该地址时是否Cache 命中? 要求说明理由。

(4) 假定为该机配置一个4路组相联的TLB , 该TLB 共可存放8个页表项,若其当前内容

(十六进制)如题c 图所示,则此时虚拟地址024BACH 所在的页面是否在主存中? 要求说明理由。

题c 图TLB 的部分内容

【答案】(1)由于页面大小为4KB , 页内地址需要12位,所以虚拟地址24位,其中虚页号占12位;物理地址 20位,其中页框号(实页号)占8位。

(2)主存物理地址20位,从左至右应划分3个字段:标记字段、块号字段、块内地址字段。其中标记12 位,块号3位,块内地址5位。

(3)虚拟地址001C60H=0000 0000 0001 1100 0110 0000B,该虚拟地址的虚页号为001H ,查

,表明此页在主存中,页框号为04H , 对应的20位页表可以发现,虚页号1对应的有效位为“1”

物理地址是04C60H = OOOOOlOOllOOOllOOOOOB。

访问该地址时,Cache 不命中,因为Cache 采用直接映射方式,对应的物理地址应该映射到Cache 的第3行 中,其有效位为1,标记值

不命中。

(4) 虚拟地址024BACH = 000000100100101110101100B ,虚页号为024H ,TLB 中存放8个页表项,采用4路组相联,即TLB 分为2组,每组4个页表项。12位虚页号字段中最低位作为组索引,其余11位为标记位。 现在最低位为0, 表明选择第0组,11位的标记为012H ,根据标记可以知道TLB 命中,所在的页面在主存中。 因为如果在TLB 中查到了页表项,即TLB 命中,说明所在页一定命中

,(物理地址高12位)故访问该地址时Cache