一、选择题
1. 对线性表进行折半查找时,要求线性表必须( )。
A. 以顺序方式存储B. 以顺序方式存储,且数据元素有序
C. 以链接方式存储D. 以链接方式存储,且数据元素有序
【答案】B
【解析】二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。折半查找方法适用于对以顺序方式存储的有序表的查找,查找效率较高。
2. 线性表是具有n 个( )的有限序列(n >0)。
A. 表元素
B. 字符
C. 数据元素
D. 数据项E. 信息项
【答案】C
【解析】一个线性表是n 个数据元素的有限序列。至于每个数据元素的具体含义,在不同的情况下各不相同。
3. 为实现快速排序算法,待排序序列宜采用的存储方式是( )。
A. 顺序存储
B. 散列存储
C. 链式存储
D. 索引存储
【答案】A
【解析】对绝大部分内部排序而言,只适用于顺序存储结构,快速排序在排序过程中,既要从后向前查找,也要从前向后查找,因此宜采用顺序存储。
4. 下列关于管道(Pipe )通信的叙述中,正确的是( )
A. —个管道可实现双向数据传输
B. 管道的容量仅受磁盘容量大小限制
C. 进程对管道进行读操作和写操作都可以被阻塞
D. —个管道只能有一个读写进程或一个写进程对其操作
【答案】C
【解析】只有写进程才能对管道写入数据,读进程对管道进行读取数据,只能半双工通信,即某一时刻只能单向传输。管道为空,则读操作被堵塞,而如果有写操作对管道进行写的话那就要堵塞了。那么C 正确
5. 若一个用户进程通过read 系统调用读取一个磁盘文件中的数据,则下列关于此过程的叙述中,正确的是( )。
I. 若该文件的数据不在内存,则该进程进入睡眠等待状态;II. 请求read 系统调用会导致CPU 从用户态切换到核心态;III. read系统调用的参数应包含文件的名称
A. 仅 I 、II
B. 仅 I 、III
C. 仅 II 、III
D.I 、II 和III
【答案】A
,原进程【解析】对于I ,当所读文件的数据不再内存时,产生中断(缺页中断、缺段中断)
,直到所需数据从外村调入内存后,将该进程唤醒,使其变为就绪进入睡眠等待状态(阻塞状态)
状态。对于II , read系统调 用CPU 将从用户态切换到核心态,从而获取操作系统提供的服务。对于III ,在操作系统中,要读一个文件首先要open 系统调用将该文件打开。Open 系统调用的参数需要包含文件的路径名与文件名,而read 系统调用只需使用open 返回的文件描述符,并不使用
Read 系统调用要求用户提供三个输入参数:文件名作为参数。①文件描述 符;②buf 缓冲区首址;
③传送的字节数n 。read 系统调用的功能是试图从fd 所指示的文件中读入n 个字节的数据,并将它们送至由指针buf 所指示的缓冲区中。
6. 若某文件系统索引结点(inode )中有直接地址项和间接地址项,则下列选项中,与单个文件长度无关的因素是( )
A. 索引结点的总数
B. 间接地址索引的级数
C. 地址项的个数
D. 文件块大小
【答案】A
【解析】根据文件长度与索引结构的关系可知,只有选项A 是与单个文件长度无关的。
7. 将一个的三对角矩阵,按行优先存入一维数组中,A 中元素(即该元素下标
A.198
B.195
C.197
【答案】B 在B 数组中的位置K 为( )。
【解析】将对角矩阵存入三对角矩阵压缩地址计算公式如下:
8. 冯. 诺依曼计算机中指令和数据均以二进制形式存放在存储器中,CPU 区分它们的依据是( )。
A. 指令操作码的译码结果
B. 指令和数据的寻址方式
C. 指令周期的不同阶段
D. 指令和数据所在的存储单元
【答案】C
【解析】在冯•诺依曼结构计算机中指令和数据均以二进制形式存放在同一个存储器中,CPU 可以根据指令周期的不同阶段来区分是指令还是数据,通常在取指阶段取出的是指令,其他阶段(分析取数阶段、执行阶段)取出的是数据。所以,CPU 区分指令和数据的依据是指令周期的不同阶段。
9. 某磁盘的转速为10, 000转/分,平均寻道时间是为磁盘传输速率是磁盘控制器延迟
读取一个4KB 的扇区所需平均时间约为( )
A.9ms
B.9.4ms
C.12ms
D.12.4ms
【答案】B
【解析】磁盘转速是10 000转/分钟,平均转一转的时间是6ms ,因此平均查询扇区的时间是3ms ,平均寻道时间是6ms ,读取4KB 扇区信息的时间为0.2ms ,信息延迟的时间为0.2ms ,总时 间为
10.假定编译器将赋值语句“x=x+3; ”转换为指令” add xaddt, 3”,其中xaddt 是x 对应的存储单元地址,若执行该指令的计算机采用页式虚拟存储管理方式,并配有相应的TLB ,且Cache 使用直写(Write Through)方式,则完成该指令功能需要访问主存的次数至少是( )。
A.0
B.1
C.2
D.3
【答案】C
【解析】采用页式虚拟存储管理方式时,若页表全部放在内存中,则存取一个数据最少要访问两次内存:第一次是访问页表,得到所存取的数据或指令的物理地址;第二次根据该地址存取数据或指令。在配有TLB 的页式虚拟管理方式中,如果给出的地址在TLB 中,则直接根据该地址取数据或指令,仅需要一次访问内存。Cache 使用直写方式时,计算完需要将数据写回到内存中,因此完成整个指令功能至少需要访问主存2次。