2018年863回忆版一、单选题(共80分)1.下列选项中,()可以执行特权指令A.普通用户的程序B.设备驱动程序C.动态库函数D.管理员用户的程序2.下列选项中,导致创建新进程的操作是()1)管理员启动Web服务2)用户启动浏览器程序3)用浏览器访问新的网页A.仅1和2B.仅2和3C.仅1和3D.1、2、33.以下关于进程死锁的表述,错误的是()A.如果每个进程只能同时申请或拥有一个资源,则死锁就不会发生B.如果所有资源多个进程都可以无冲突共享访问,则死锁就不会发生C.如果所有进程的执行严格区分优先级,则死锁就不会发生D.如果进程资源请求之间不存在循环等待,则死锁就不会发生4.对于采用虚拟内存的系统,下列哪种做法无法提高虚拟内存的平均访问性能?()A.增加内存总容量B.提高磁盘读写速度C.提高内存读写速度D.增加磁盘的交换分区容量5.设备驱动程序在读写磁盘数据时一般采用下列哪种I/O方式?()A.DMAB.可编程I/OC.中断I/OD.消息传递6.已知某计算机系统虚拟内存系统采用硬件支持的二级页表,页表项位64bit,页面大小为4KB,假设程序连续访问长度为1MB的数组且过程中未发生中断,那么这个过程中最多会访问多少次内存中的页表?()A.128B.256C.512D.10247.下列关于独立冗余磁盘阵列(RAID)的说法,正确的是()A.相比于单块磁盘,RAID5能减少单次读操作延迟B.相比于单块磁盘,RAID0能提高读写带宽C.相比于单块磁盘,RAID0能减少单次写操作延迟D.RAID5能容忍多块磁盘同时失效8.日志文件系统(JournalingFileSystem)相对于传统的文件系统,其优点是()A.对文件系统操作进行严格的审计和记录,提升安全性B.可以提高对存在大量文件的目录的查询性能C.可以尽量把属于同一文件的磁盘块和索引节点安排在临近的区域,提高I/O性能D.可以支持文件系统元数据的事务性修改,减少对磁盘的同步操作9.通常用户通过密码验证登陆一个计算机系统,那么操作系统下列保存验证密码信息最安全的方式是()A.明文保存在只有root可以读的文件中B.以单向函数生成的密文的方式保存在文件中C.保存在一个需要身份验证的数据库系统中D.明文保存在只有每个用户自己可读的文件中10.下列哪种机制不能用于分布式系统中不同节点的信息交互?()A.远程过程调用B.TCP/IPC.共享内存D.网络文件系统11.下列有关冯·诺依曼计算机结构的叙述,正确的是()A.指令和数据可以从形式上加以区分B.按地址访问指令并自动按序执行程序C.运算器用来完成算术运算D.指令用二进制表示,数据可以用十进制表示12.假定某基准测试程序在时钟频率为800MHz的机器A上的执行时间为15s。现在欲设计机器B使同一程序在B上的执行时间缩短为10s,设计时B的时钟频率获得大幅提高,但在B上执行该程序所需的时钟周期变为A的1.5倍。那么,机器B的时钟频率至少应为()。A.800MHzB.1.2GHzC.1.5GHzD.1.8GHz13.在以下情况中,不会引起指令流水线阻塞的是()A.外部中断B.指令数据相关C.条件转移D.数据旁路14.采用周期挪用方式进行数据传送时,每传送一个数据要占用一个()的时间。A.指令周期B.机器周期C.时钟周期D.存取周期15.考虑以下C语言代码:shortarg=-8197;inti=arg;执行上述程序段后,i的机器数表示为()A.00009FFBHB.0000DFFBHC.FFFF9FFBHD.FFFFDFFBH16.某计算机字长为8位,其CPU中有一个8位加法器。已知有符号数x=-69,y=-38,现要在该加法器中完成x-y的运算,则该加法器的两个输入端信息和输入的低位进位信息分别是()A.10111011,11011010,0B.01000101,11011010,1C.10111011,00100101,1D.10111011,00100110,117.假定主存按字节编址,Cache共有64行,采用直接映射方式,主存块大小为32字节,主存块编号从0开始,则主存第2601号单元所在主存块对用的Cache行号为()A.1B.17C.34D.8118.假定一个磁盘存储器有4个盘片,全部盘面都可用于记录信息,柱面数为1024,每个磁道上有3072个扇区,每个扇区512字节,则该磁盘存储器的容量该为()A.12MBB.12GBC.6MBD.6GB19.设置中断屏蔽字可以动态地改变()的优先级A.中断查询B.中断响应C.中断返回D.中断处理20.某机器的指令字长为两个字节,其中第一个字节是操作码,第二个字节是相对位移量,则该指令可转移的地址范围是()A.255B.256C.128D.12721.交换机能够识别()地址。A.域名B.IP地址C.MAC地址D.UDP端口号22.能从数据信号波形中提取同步信号的典型编码是()A.归零码B.非归零码C.差分码D.曼彻斯特编码23.一个频带宽度为3KHz的信道,其信噪比为30dB,采用8相位对信号进行调制,可以取得的最大数据速率是()A.14.86kbpsB.29.90kbpsC.89.70kbpsD.118.90kbps24.如果本地域名服务器无缓存,当采用递归查询方法解析另一网络中的某主机域名时,用户主机和本地域名服务器发送的域名请求条数分别为()A.1,1B.1,多C.多,1D.多,多25.下列关于CSMA/CD的表述,正确的是()A.站点在发送完帧之后再对冲突进行坚持B.站点在发送期间,同时对冲突进行检测C.发生帧和检测冲突并不是在同一个站点上进行D.同一个站点上发送的帧,只有当另一个站点没有收到时,才进行冲突检测26.以下关于IPv6地址的表述,错误的是()A.一个拥有多个网络接口的节点可以具有多个IPv6地址B.一个单个的接口可以分配多个相同类型或者不同类型的地址C.一个单播地址可以同时分配给多个网络接口D.一个节点接口的单播地址可用来唯一地标识该接口或该节点27.以下关于信道传输速率的表述,正确的是()A.信道的码元传输速率是有上限的B.频带宽度越宽的信道,其信息传输速率越大C.信噪比越大的信道,其信息传输速率越大D.在信道频带宽度和信噪比不变的情况下,可以通过调制方式提高码元极限传输速率28.以下关于分组交换原理的表述,正确的是()A.分组交换需要把较长数据划分为较短数据包进行传输B.分组交换可降低数据传送延时C.分组交换能够以更快的速度将数据传送出去D.分组交换中各数据包按照相同的路径传送给目的节点29.以下关于IP数据包在网络中逐跳传输过程的表述,正确的是()A.传输过程中IP报头中的校验和保持不变B.传输过程中IP报头的源IP地址和目的IP地址保持不变C.传输过程中数据包的MAC地址保持不变D.传输过程中数据包长度保持不变30.TCP是面向字节流的传输协议,关于TCP报文段长度的表述,正确的是()A.TCP报文段长度根据每次应用进程需要传输的数据块长度决定B.TCP报文段长度根据路径上能够传送的最大数据块长度决定C.TCP报文段长度根据对端的接受能力和网络状况决定D.TCP报文段长度确定后,在本应用进程通信过程中保持不变31.将两个长度为len1和len2的升序链表,合并为一个长度为len1+len2的降序列表,采用归并算法,在最坏情况下,比较操作的次数与()最接近A.len1+len2B.len1*len2C.min(len1,len2)D.max(len1,len2)32.若用一个大小为5的数组实现循环队列,且当前rear和front的值分别为0和3,当从队列中删除一个元素,再加入两个元素,再删除一个元素后,rear和front的值分别为()A.2和4B.3和0C.2和0D.4和133.现有字符串s为aabaabaabaac,模式串t为aabaac,那么,采用KMP算法,在第()趟匹配时,串t在串s中匹配成功A.3B.4C.6D.734.设某二叉树的先序遍历序列为ABDGCEFH,中序遍历序列为DGBAECHF,则其后序遍历序列是()A.GDBEFHCAB.GDEFHBCAC.GDBEHFCAD.GBDEFCHA35.对下图进行拓扑排序,()序列不是该图的拓扑序列A.123546B.125346C.231546D.21354612435636.设有n个关键字(n=2^h-1)构成二叉排序树,假设查找每个关键字的概率相同,那么查找成功的平均搜索长度最大是()A.nB.(n+1)/2C.n/2D.n+137.下列关于图的说法正确的是()A.存储稀疏图,用邻接矩阵比邻接表更省空间B.用邻接表存储图,所占用的空间大小只与图中边数有关,与顶点数无关C.对有向图G,如果以任一顶点出发进行一次深度优先或广度优先搜索能访问到每个顶点,则该图一定是完全图D.可以用拓扑排序或者深度优先遍历判断有向图是否有回路38.设哈希表长M=14,哈希函数H(key)=keymod11,表中已有4个元素,其关键字分别是4、27、61、84,如果用二次探测再散列处理冲突,关键字为49的结点的地址是()A.9B.8C.3D.239.快速排序在最坏情况下的时间复杂度与下面()算法最坏情况下的时间复杂度相同。A.堆排序B.Shell排序C.冒泡排序D.基数排序40.一组关键字为(46,79,56,28,40,88),利用堆排序建立大顶堆的初始堆为()A.79,46,56,28,40,88B.88,56,79,40,46,28C.88,79,56,46,40,28D.88,79,56,28,40,46二、问答题(共70分)41.某多处理器计算机的操作系统需要记录日志信息到一个缓冲区中。假设缓冲区是一个连续的足够大的字节数组,初始位置为0,同时可能有多个线程并发向缓冲区以追加方式顺序写入日志,且每个日志是一段连续且长度不固定的记录。试设计写日志的接口函数,并编写该函数伪代码程序。要求保证缓冲区不丢失信息、不浪费空间且执行效率高。同时请给出必要的分析。(可采用C/C++/Java语言)(7分)42.某文件系统的磁盘块大小为1KB,在文件的索引节点中存放直接索引指针16个,一级间接索引指针4个,二级间接索引指针1个,每个索引指针占4个字节。用户进程欲访问/home/student/course/os/homework/bitmap.dat文件字节偏移量为第1280和1280000处的各128字节的记录。假设当前除了根目录索引节点在内存外,相关目录和文件数据都不在内存中,且每个目录和索引节点只占一个磁盘块,那么完成数据访问一共需要读取多少个磁盘块?给出相应的描述过程。(8分)43.某机器主频为500MHz,平均指令执行速度时100MIPS。假定某外设的数据传输率为0.5MB/S,采用中断方式与主机进行数据传送,传送单位为32位,对应的中断服务程序包含16条指令,中断响应等其他开销相当于4条指令的执行时间,请回答下列问题,并给出必要的计算过程(10分)。(1)若该机器采用独立编址对外设端口进行编号,则CPU需要增加什么支持来访问I/O端口?(2)在中断方式下,CPU用于该外设I/O的时间与整个CPU的时间的百分比是多少?(3)当该外设的数据传输率达到5MB/S时,改用DMA方式来传送数据。假定每次DMA传送的块大小为5000B,DMA预处理和后处理的总开销为400个时钟周期,则CPU用于该外设的I/O的时间占整个CPU时间的百分比又变为多少?(假设DMA与CPU之间没有访存冲突)44.以下是计算两个向量点积的C语言程序段,假定数据Cache采用2-路组相联映射方式,数据区容量为64字节,每个主存块大小为16字节;编译器将变量sum和i分配再寄存器中,数组a存放在00000040H开始的48字节的连续存储区中,数组b则紧跟在a后进行存放。请回答下列问题。(10分)floatdotmultiply(floata[12],floatb[12]){floatsum=0.0;inti;for(i=0;i12