1、软件水平考试(中级)数据库系统工程师上午(基础知识)试题章节练习试卷 23 及答案与解析 1 对于以下编号为 、 、 的正规式,正确的说法是 (5)。 (aa*|ab)*b (a|b)*b (a|b)*|aa)*b ( A)正规式 、 等价 ( B)正规式 、 等价 ( C)正规式 、 等价 ( D)正规式 、 、 互不等价 2 高级程序设计语言中用于描述程序中的运算步骤、控制结构及数据传输的是(6)。 ( A)语句 ( B)语义 ( C)语用 ( D)语法 3 “ title style=“italic“ science /title “,是 XML中一个元素的定义,其中元素的内容是 (9)
2、。 ( A) title ( B) stvle ( C) italic ( D) science 4 下面关于编程语言的各种说法中, (10)是正确的。 ( A)由于 C语言程序是由函数构成的,因此它是一种函数型语言 ( B) Smalltalk、 C+、 Java、 C#都是面向对象语言 ( C)函数型语言适用于编写处理高速计算的程序,常用于超级计算机的模拟计算 ( D)逻辑型语言是在 Client/Server系统中用于实现负载分散的程序语言 5 在面向对象的语言中, (11)。 ( A)类的实例化是指对类的实例分配存储空间 ( B)每个类都必须创建一个实例 ( C)每个类只能创建一个实例
3、 ( D)类的实例化是指对类进行初始化 6 给定 C语言的数据结构 struct T int w; union Tchar c; int I; double d; )U; ; 假设 char类型变量的存储区大小是 1字节, int类型变量的 存储区大小是 4字节, double类型变量的存储区大小是 8字节,则在不考虑字对齐方式的情况下,为存储一个 struct T类型变量所需要的存储区域至少应为 (12)字节。 ( A) 4 ( B) 8 ( C) 12 ( D) 17 7 若程序运行时系统报告除数为 0,这属于 (15)错误。 ( A)语法 ( B)静态语义 ( C)动态语义 ( D)运算
4、对象不匹配 8 程序设计语言引入 “类 ”的概念是为了解决数据保护问题。 C+语言将类的成员封装在类体之中,使之具有一定的存取规则,这些规则规定了存取类的成员的权利,其 中,对于用 private说明的成员,它 (62)。 ( A)既能被该类的成员函数访问,又能被外界直接访问 ( B)只能被该类的成员函数访问,外界不能直接访问 ( C)不能被该类的成员函数访问,只能被外界直接访问 ( D)既不能被该类的成员函数访问,也不能被外界直接访问 9 在一个单 CPU的计算机系统中,有两台外部设备 R1、 R2和三个进程 P1、 P2、P3。系统采用可剥夺方式优先级的进程调度方案,且所有进程可以并行使用
5、 I/O设备,三个进程的优先级、使用设备的先后顺序和占用设备时间如表 5-4所示。假设操作系统的 开销忽略不计,三个进程从投入运行到全部完成, CPU的利用率约为(4)%; R2的利用率约为 (5)%(设备的利用率指该设备的使用时间与进程组全部完成所占用时间的比率 )。 ( A) 60 ( B) 67 ( C) 78 ( D) 90 ( A) 70 ( B) 78 ( C) 80 ( D) 89 11 为了解决进程间的同步和互斥问题,通常采用一种称为 (6)机制的方法。若系统中有 5个进程共享若干个资源 R,每个进程都需要 4个资源 R,那么使系统不发生死锁的资源 R的最少数目是 (7)。 (
6、 A)调度 ( B)信号量 ( C)分派 ( D)通讯 ( A) 20 ( B) 18 ( C) 16 ( D) 15 13 某磁盘共有 10个盘面,每个盘面上有 100个磁道,每个磁道有 16个扇区,假定分配以扇区为单位。若使用位示图管理磁盘空间,则位示图需要占用 (9)字节空间。若空白文件目录的每个表项占用 5个字节,当空白区数目大于 (10)时,空白文件目录大于位示图。 ( A) 16000 ( B) 1000 ( C) 2000 ( D) 1600 ( A) 400 ( B) 380 ( C) 360 ( D) 320 15 某系统的进程状态转换如图 5-3所示,图中 1、 2、 3和
7、 4分别表示引起状态转换的不同原因,原因 4表示 (13);一个进程状态转换会引起另一个进程状态转换的是(14)。 ( A)就绪进程被调度 ( B)运行进程执行了 P操作 ( C)发生了阻塞进程等待的事件 ( D)运行进程的时间片到了 ( A) 12 ( B) 21 ( C) 32 ( D) 41 17 某虚拟存储系统采用最近最少使用 (LRU)页面淘汰算法,假定系统为每个作业分配 3个页面的主存空间,其中一个页面用来存放程序。现有某作业的部分语句如下: Var A: Array1 150, 1 100OF integer; i, j: integer; FOR i: =1 to 150 DO
8、 FOR j: =1 to 100 DO Ai, j: =0; 设每个页面可存放 150个整数变量,变量 i、 j放在程序页中。初始时,程序及变量 i、 j已在内存,其余两页为空,矩阵 A按行序存放。在上述程序片段执行过程中,共产生 (16)次缺页中断。最后留在内存中的是矩阵 A的最后 (17)。 ( A) 50 ( B) 100 ( C) 150 ( D) 300 ( A) 2行 ( B) 2列 ( C) 3行 ( D) 3列 19 假设磁盘上每个磁道划分成 9个物理块,每块存放 1个逻辑记录。逻辑记录R1, R2, , R9存放在同一个磁道上,记录的安排顺序如表 5-5所示。假定磁盘的旋转
9、速度为 27ms/周,磁头当前处在 R1的开始处,系统使用单缓冲区,当缓冲区内容处理完时才能再存放新的记录,且每个记录的处理时间为 3ms。若系统顺序处理这些记录,则处理这 9个记录的最长时间为 (18);若对信息存储进行优化分布后,处理 9个记录的最少时间为 (19)。 ( A) 243ms ( B) 246ms ( C) 254ms ( D) 280ms ( A) 30ms ( B) 36ms ( C) 54ms ( D) 60ms 21 某系统中有四种互斥资源 R1、 R2、 R3和 R4,可用资源数分别为 3、 5、 6和8。假设在 T0时刻有 P1、 P2、 P3和 P4四个进程,并
10、且这些进程对资源的最大需求量和已分配资源数如表 5-6所示,那么在 T0时刻系统中 R1、 R2、 R3和 R4的剩余资源数分别为 (20)。如果从 T0时刻开始进程按 (21)顺序逐个调度执行,那么系统状态是安全的。( A) 3、 5、 6和 8 ( B) 3、 4、 2和 2 ( C) 0、 1、 2和 1 ( D) 0、 1、 0和 1 ( A) P1P2P4P3 ( B) P2P1P4P3 ( C) P3P2P1P4 ( D) P4P2P3P1 23 在一单处理机中,若有 5个用户进程,在非管态的某一时刻,处于就绪状态的用户进程最多有 (37)个,最少有 (38)个。 ( A) 1 (
11、 B) 2 ( C) 3 ( D) 4 ( E) 5 ( A) 1 ( B) 2 ( C) 3 ( D) 4 ( E) 0 25 在 UNIX操作系统中,当用户执行如下命令: link(“/user/include/myfile.Sh”, “/usr/userwang/youfile.sh”) 则文件名 “/usr/userwang/youfile.sh”存放在 (44)。 2假设在系统中一个文件有两个名字,它与一个文件保存两个副本的区别是(45)。 ( A) user目录文件中 ( B) include目录文件中 ( C) userwang目录文件中 ( D) youfile.sh的文件内容
12、中 ( A)前者比后者所占用的存储空间更大 ( B)前者需要两个目录项,后者只需要一个目录项 ( C)前者存取文件的速度快,后者存取文件的速度慢 ( D)前者改变与某个名 字相联系的文件时,另一个名字相连的文件也改变;后者的另一个副本不改变 27 被操作数的最高位移入 “进位 ”位,其余所有位接收其相邻低位值,最低位移入0的操作是 (22)指令。被操作数的最高位保持不变,其余所有位接收其相邻高位值,最低位移到 “进位 ”位中的操作是 (23)指令。在程序执行过程中改变按程序计数器顺序读出指令的指令属于 (24)。相对寻址方式的实际地址是 (25)。特权指令在多用户、多任务的计算机系统中必不可少
13、,它主要用于 (26)。 ( A)逻辑左移 ( B)算术左移 ( C)乘 2运算 ( D)除 2运算 ( A)逻辑左移 ( B)算术左移 ( C)乘 2运算 ( D)除 2运算 ( A)特权指令 ( B)传送指令 ( C)输入 /输出指令 ( D)转移指令 ( A)程序计数器的内容加上指令中形式地址值 ( B)基值寄存器的内容加上指令中形式地址值 ( C)指令中形式地址中的内容 ( D)栈顶内容 ( A)检查用户的权限 ( B)系统硬件自检和配置 ( C)用户写汇编程序时调用 ( D)系统资源的分配和管理 32 现采用四级流水线结构分别完成一条指令的取指、指令译码和取数、运算,以及送回运算结果
14、四个基本操作,每 步操作时间依次为 60ns, 100ns, 50ns和 70ns。该流水线的操作周期应为 (27)ns。若有一小段程序需要用 20条基本指令完成 (这些指令完全适合于流水线上执行 ),则得到第一条指令结果需 (28)ns,完成该段程序需(29)ns。 在流水线结构的计算机中,频繁执行 (30)指令时会严重影响机器的效率。当有中断请求发生时,采用不精确断点法,则将 (31)。 ( A) 50 ( B) 70 ( C) 100 ( D) 280 ( A) 100 ( B) 200 ( C) 280 ( D) 400 ( A) 1400 ( B) 2000 ( C) 2300 (
15、D) 2600 ( A)条件转移 ( B)无条件转移 ( C)算术运算 ( D)访问存储器 ( A)仅影响中断响应时间,不影响程序的正确执行 ( B)不仅影响中断响应时间,还影响程序的正确执行 ( C)不影响中断响应时间,但影响程序的正确执行 ( D)不影响中断响应时间,也不影响程序的正确执行 37 RISC是指 (32)计算机。通常 CPU具有高时钟频率,尽量使用单周期操作,其采用 (33)控制方式。 RISC 机一般也采用 (34)结构,遇到转移指令时可以采用延迟转移等办法来解决转 移的相关性;并要求编译系统相配合。 RISC 机都采用了较大的 (35)结构,以减少访问主存的频度,访内通常
16、仅用 LOAD/STORE类指令。 RISC和 (36)技术相结合是当前高速计算机发展的一个重要方向。 ( A)冗余集成系统 ( B)可靠信息存储 ( C)精简指令系统 ( D)再定位指令系统 ( A)微码 ( B)固件 ( C)硬接线 ( D)软件 ( A)微程序 ( B)多处理机 ( C)微通道 ( D)流水线 ( A)寄存器堆 ( B)多处理机 ( C)微通道 ( D) RAS ( A)交叉存取 ( B)多处 理机 ( C)运算器 ( D)存储器模块 42 为了快速传送大量数据,微型计算机中采用存储器直接访问技术,简称DMA。用 DMA方式传送时,在存储器和 (37)之间直接建立高速传输
17、数据的通路,不需要 (38)的干预。 利用 DMA方式传送数据时,数据的传送过程完全由称为 DMA控制器的硬件控制。 DMA控制器具有下列功能: (1)向 CPU申请 (39)传送。 (2)在 CPU允许 DMA工作时,处理总线控制的转交。 (3)在 DMA期间管理 (40),控制数据传送。 (4)确定数据传送的起始 地址和 (41),并在传送过程中不断修正。 (5)数据传送结束时,给出表示 DMA操作完成的信号。 ( A)控制台 ( B)硬件 ( C)外部设备 ( D)数据长度 ( E) CPU ( A)控制台 ( B)硬件 ( C)外部设备 ( D)数据长度 ( E) CPU ( A)控制
18、台 ( B) DMA ( C)外部设备 ( D)数据长度 ( E) CPU ( A)控制台 ( B)硬件 ( C)外部设备 ( D)系统总线 ( E) CPU ( A)控制台 ( B)硬件 ( C)外部设备 ( D)数据长度 ( E) CPU 47 为了大幅度提高处理器的速度,当前处理器中都采用了指令级并行处理技术,如超级标量 (superscalar),它是指 (42)。流水线组织是实现指令并行的基本技术,影响流水线连续流动的因素除数据相关性、转移相关性外,还有 (43)和 (44);另外,要发挥流水线的效率,还必须重点改进 (45)。在 RISC设计中,对转移相关性一般采用 (46)方法解
19、决。 ( A)并行执行的多种处理安排在一条指令内 ( B)一个任务分配给多个处理机并行执行 ( C)采用多个处理部件多条流水线并行执行 ( D)增加流水线级数提高并 行度 ( A)功能部件冲突 ( B)内存与 CPU速度不匹配 ( C)中断系统 ( D)访内指令 ( A)功能部件冲突 ( B)内存与 CPU速度不匹配 ( C)中断系统 ( D)访内指令 ( A)操作系统 ( B)指令系统 ( C)编译系统 ( D)高级语言 ( A)猜测法 ( B)延迟转移 ( C)指令预取 ( D)刷新流水线重填 52 计算机执行程序所需的时间 P,可用 P=ICPIT来估计,其中 I是程序经编译后的机器指令
20、数, CPI是执行每条指令所需的平均机器周期数, T为每个机器周期的时间。 RISC计算机是采用 (47)来提高机器的速度。它的指令系统具有 (48)的特点。指令控制部件的构建, (49)。 RISC机器又通过采用 (50)来加快处理器的数据处理速度。 RISC的指令集使编译优化工作 (51)。 ( A)虽增加 CPI,但更减少 T ( B)虽增加 CPI,但更减少 T ( C)虽增加 T,但更减少 CPI ( D)虽增加 I,但更减少 CPI ( A)指令种类少 ( B)指令种类多 ( C)指令寻址方式多 ( D)指令功能复杂 ( A) CISC更适于采用硬布线控制逻辑,而 RISC更适于采
21、用微程序控制 ( B) CISC更适于采用微程序控制,而 RISC更适于采用硬布线控制逻辑 ( C) CISC和 RISC都采用微程序控制 ( D) CISC和 RISC都只采用硬布线控制逻辑 ( A)多寻址方式 ( B)大容量内存 ( C)大量的寄存器 ( D)更宽的数据总线 ( A)更简单 ( B)更复杂 ( C)不需要 ( D)不可能 57 利用并行处理技术可以缩短计算机的处理时间,所谓并行性是指 (55)。可以采用多种措施来提高计算机系统的并行性,它们可分成三类,即 (56)。提供专门用途的一类并行处理机 (亦称阵列处理机 )以 (57)方式工作 ,它适用于 (58)。多处理机是目前较
22、高性能计算机的基本结构,它的并行任务的派生是 (59)。 ( A)多道程序工作 ( B)多用户工作 ( C)非单指令流单数据流方式工作 ( D)在同一时间完成两种或两种以上的工作 ( A)多处理机,多级存储器和互联网络 ( B)流水结构,高速缓存和精简指令集 ( C)微指令,虚拟存储和 I/O通道 ( D)资源重复,资源共享和时间重叠 ( A) SISD ( B) SIMD ( C) MISD ( D) MIMD ( A)事务处理 ( B)工业控制 ( C)矩阵运算 ( D)大量浮点 计算 ( A)需要专门的指令来表示程序中并发关系和控制并发执行 ( B)靠指令本身就可以启动多个处理单元并行工
23、作 ( C)只执行没有并发约束关系的程序 ( D)先并行执行,事后再用专门程序去解决并发约束 62 Object-oriented DBMS integrated a variety of(81)data types-such as business procedures, graphics, pictures, voice and annotated text.Object orientation also makes a(82)to application development efficiency. It makes the data, functions, attributes, a
24、nd relationships an integral part of the(83). In this way, objects can be reused and replicated.Some leading RDBMS vendors support the concept of integrating object management capabilities with their current line of relational products. That capability enable users to the development cycle, since in
25、tegrity logic and business roles no longer need to be programmed(84)each application. ( A) tool ( B) in ( C) idea ( D) contribution ( E) real-world ( A) tool ( B) in ( C) idea ( D) contribution ( E) joke ( A) tool ( B) in ( C) object ( D) contribution ( E) joke ( A) tool ( B) into ( C) idea ( D) con
26、tribution ( E) joke 一、填空题 66 ( )是指现实世界事物的存在方式或运动状态的反映; ( )是描述现实世界事物的符号记录。 67 数据的独 立性包括 ( )和 ( ) 68 数据库理论的研究主要集中于 ( )、 ( )等。 69 数据库 3个模式之间存在两级映射,一是 ( )间的映射,另一种是 ( )间的映射。 70 关系操作能力可用两种方式来表示: ( )和 ( )。 71 数据库的数据完整性是指数据库中数据的 ( )和 ( )。 72 被参照关系与参照关系是通过 ( )相联系的,这种联系通常是 ( )的联系。 73 关系数据操作的最大特点是:以 ( )为处理单位,处
27、理后的结果是 ( )。 74 自然连接是 ( )的 一个重要特殊例子,它要求被连接的两关系 ( )。 75 ( )是实际存储在数据库中的表: ( )是从一个或几个基本表或其他视图导出的表,它本身不独立存储在数据库中。 76 SQL用户可以是 ( ),也可以是 ( )。 77 对宿主式数据语言 SQL, DBMS可采用两种方式处理,一种是 ( ),另一种是 ( )。 78 关系中,元组的每个分量必须是不可分的数据项,这叫做 ( ),简称 ( )。 79 如果模式只是 BCNF,则 R必是 ( ):反之,则 ( )成立。 80 面向对象方法的基 本思想是从现实世界客观存在的事物 (对象 )出发,以
28、尽可能接近人类思维的方式建立模型,对客观事物进行 ( )和 ( )。 81 ( )是用来描述对象静态特征的一个数据项: ( )是用米描述对象动态特征的一个操作序列。 软件水平考试(中级)数据库系统工程师上午(基础知识)试题章节练习试卷 23 答案与解析 1 【正确答案】 C 【试题解析】 由正规式 产生的字串为 a*b或 (ab)*b; 产生的字串为 a*b或b*b、 产生的字串为 a*b 或 b*b。因此,正规式 、 等价。 2 【正确答案】 A 【试题解析】 程序设计语言的基本成分:包括数据、运算、控制和传输。数据成分是程序操作的对象,具有存储类别、类型、名称、作用域和生存期等属性,使用时
29、要为它分配内存空间。数据包括常量、变量、全局量、局部量。运算成分指明允许使用的运算符号及运算规则。函数:函数的定义,函数的声明,函数的调用。函数的定义包括函数首部和函数体。函数应先声明后引用。函数调用时实参与形参间交换信息的方法有传值调用和引用调用两种。传值调用中,若函数调用时以实参向形参传递相应类型的值,则这种方式下,形参将不能向实参返回信息;除非使用指针作形 参,在调用时先对实参进行取址运算,然后将实参地址传递给指针形参,这样才可以实现被调用函数对实际参数的修改。程序设计语言是用于编写计算机程序的语言。它的基础是一组记号和一组规则。根据规则由记号构成的记号串的总体就是语言。在程序设计语言中
30、,这些记号串就是程序。程序设计语言包含三个方面,即语法、语义和语用。语法表示程序的结构或形式,即表示构成程序的各个记号之间的组合规则,但不涉及这些记号的特定含义,也不涉及使用者。语义表示程序的含义,即表示按照各种方法所表示的各个记号的特定含义,但也不涉及使用者,语用表示程序与使 用者的关系。在高级程序设计语言中,语句用于描述程序中的运算步骤、控制结构及数据传输。 3 【正确答案】 D 【试题解析】 “ title style=“italic“ science /title ”是一个 XML 元素的定义,其中 title是元素标记名称: style是元素标记属性名称; italic是元素标记属性
31、值; science是元素内容。 4 【正确答案】 B 【试题解析】 函数是一种对应规则 (映射 ),它使定义域中每个元素和值域中唯一的元素相对应。函数式语言是一 类以 -演算为基础的语言,其代表为 LISP,主要用于人工智能领域。逻辑型语言是一类以形式逻辑为基础的语言,其代表是建立在关系理论和一阶谓词理论基础上的 PROLOG。 PROLOG有很强的推理功能,适用于书写自动定理证明、专家系统和自然语言理解等问题的程序。 5 【正确答案】 A 【试题解析】 本题考查面向对象程序设计语言中类的实例化概念。类是用户定义的类型。与语言定义的基本类型一样,有了类型后,就可以定义 (创建 )该类型的变量
32、,其含义是系统为变量分配存储空间。对于程序中定义的类,并不要求一定要创建其实 例,对实例的数目也没有限制。创建类的实例时,系统需要为该实例分配存储空间。 6 【正确答案】 C 【试题解析】 union T 定义 T为一个共用体,它所占用的存储空间的大小是它所包含的元素中占用存储空间最多的那个,即 d 的存储空间 8字节, int w要占用存储空间 4字节,所以存储一个 struct T类型变量所需要的存储区域至少应为4+8=12字节。 7 【正确答案】 C 【试题解析】 在程序执行期间,会有许多意外的事件发生。例如,程序申请内存时没有申请到、对象还未创建就被使用、死循环等,称为运 行错误。根据
33、错误的性质将运行错误分为错误与异常两种类型。程序进入了死循环或内存溢出,这类现象称为错误或致命性错误。错误只能在编程阶段解决,运行时程序本身无法解决,只能依靠其他程序干预,否则会一直处于一种不正常的状态。运算时除数为0,或操作数超出数据范围,打开一个文件时发现文件不存在,网络连接中断等,这类运行错误现象称为异常。对于异常情况,可在源程序中加入异常处理代码,当程序出现异常时,由异常处理代码调整程序运行流程,使程序仍可正常运行直到正常结束。由于异常是可以检测和处理的,所以产生了相应的异常处理机制。而 错误处理一般由系统承担。对于一个应用软件,异常处理机制是不可缺少的。 该题中出现的是语义错误,但不
34、是编译的时候出现的,是运行的时候出现的,所以是动态语义错误。 8 【正确答案】 B 【试题解析】 在 C+语言中,共有三个存取规则规定存取类的成员的权利,分别为 public, protected 和 private。其中 public表示既能被该类的成员函数访问,也能被派生类的成员函数访问,且能被外界直接访问: protected 表示既能被该类的成员函数访问,也能被派生类的成员函数访问,但不能被外界直接 访问;ptivate则表示只能被该类的成员函数访问,不能被派生类的成员函数访问,也不能被外界直接访问。 9 【正确答案】 D 10 【正确答案】 A 【试题解析】 根据题目的描述,可以把系
35、统运行的时空图画出,如图 5-2所示。 那么这个图是怎么来的呢,下面详细介绍。 首先, P1 进程使用只:资源 30ms,所以 P1 的前 30ms 注明为 R2。与此同时 P2 使用 R1资源 20ms, P3 同时申请使用 CPU 40ms,当 P3 申请使用 CPU时,没有其他进程申请使用 CPU,所以 P3 顺利得到了 CPU的使用权 (如果此时P1或 P2 也申请 CPU 的话,则 P3 得不到 CPU使用权,因为 P3 的优先级最低 )。 当系统时间到 20ms 时, P3 失去了 CPU资源,这是为什么呢 ?因为此时 P2 已经使用完 R1,它开始申请使用 CPU了, P2 的优
36、先级比 P3 高,所以系统从 P3 手中收回 CPU的使用权 (因为系统采用可剥夺方式调度方案 ),把 CPU分配给 P2 使用,当系统时间到 30ms 时,系统又从 P2 手中收回了 CPU的使用权,把 CPU分配给了 P1 使用,因为系统中 P1 的优先级比 P2 高。依次类推,便完成了系统时空图。 从图 5-2我们可以看出,三个进程运行完毕需要 100ms, CPU工作了 90ms,所以 CPU的利用率为 90%, R2工作了 70ms 所以, R2的利用率为 70%。 11 【正确答案】 B 12 【正确答案】 C 【试题解析】 在系统中,多个进程竞争同一资源可能会发生死锁,若无外力作
37、用,这些进程都将永远不能再继续运行。信号量是最早出现的用来解决进程同步与互斥问题的机制,在操作系统的进程管理中最常用的方法是采用信号量机制,信号量是表示资源的实体,它包括一个称为信号量的变量及对它进行的两个原语P、 V操作, “P操作 ”检测信号量是否为正值,若不是,则阻塞调用进 程: “V操作 ”唤醒一个阻塞进程恢复执行。根据用途不同,信号量分为公用信号量和私有信号量,公用信号量用于实现进程间的互斥,初值通常设为 1,它所联系的一组并行进程均可对它实施 P、 V操作;私有信号量用于实现进程间的同步,初始值通常设为 0或 n。本题系统中有 5个进程共享若干个资源 R,每个进程都需要 4个资源R
38、,若系统为每个进程各分配了 3个资源,即 5个进程共分配了 15 个单位的资源R,这时只要再有 1个资源 R,就能保证有一个进程运行完毕。因此,使系统不发生死锁的资源 R的最少数目是 16。 13 【正确答案】 C 14 【正确答案】 A 【试题解析】 本题考查的是操作系统文件管理的基本知识。外存具有容量大,被多用户共享等特点,因此,文件系统必须对磁盘空间进行管理。位示图就是用来管理磁盘存储空间的,每一位对应文件存储器上的一个物理块,当该位为 1时表示该位所对应的存储空间不空闲,为 0则表示空闲。根据题意,磁盘共有 10个盘面,每个盘面上有 100个磁道,每个磁道有 16 个扇区,以扇区为分配
39、单位,这意味着磁盘盘组共有 1010016等于 16 000个物理块。因此,如果使用位示图管理磁盘空间,则位示图需要占用 160008等于 2000字节空间。若空白文件目录的每个表项占用 5个字节,空白区数目为 400时,则空白文件目录大小为4005=2000个字节。可见当空白区数目大于 400时,空白文件目录大于位示图。 15 【正确答案】 C 16 【正确答案】 B 【试题解析】 本题考查的是计算机操作系统进程管理方面的基础知识。 一个进程的生命期可以划分为一组状态,这些状态刻划了整个进程。系统根据PCB结构中的状态值控制进程。 执行状态:一个进程在并发执行中,由于资源共享与竞争,处于执行
40、状态。 (1)用户 执行状态 (用户态 ):进程的用户程序段在执行时所处的状态。 (2)系统执行状态 (系统态或核心态 ):进程的系统程序段在执行时所处的状态。 等待状态:进程则因等待某种事件发生而处于等待状态。 就绪状态:进程得到了除 CPU之外的其他资源,只要由调度得到处理机,便可立即投入执行。 (1)内存就绪状态:可以立即投入执行。 (2)外存就绪状态:只有先成为内存就绪状态后,才可能被调度执行。 图 5-3中原因 1是由于调度程序的调度引起的;原因 2是由于时间片用完引起的;原因 3是由于 I/O请求引 起的,例如进程执行了 P操作,由于申请的资源得不到满足进入阻塞队列;原因 4是由于
41、 I/O完成引起的,例如某进行执行了 V操作将信号量值减 1,若信号量的值小于 0,则意味着有等待该资源的进程,将该进程从阻塞队列中唤醒使其进入就绪队列。 试题 (24)选项 A“12” 不可能,因为调度程序从就绪队列中调度一个进程投入运行,不会引起另外一个进程时间片用完;选项 B“21” 可能,因为当现运行进程的时间片用完,会引起调度程序调度另外一个进程投入运行:选项 C“32” 不可能,因为现运行进程由于等待某事件被阻塞,使得 CPU空闲 ,此时调度程序会从处于就绪状态的进程中挑选一个新进程投入运行;选项 D“41” 不可能,一般一个进程从阻塞状态变化到就绪状态时,不会引起另一个进程从就绪
42、状态变化到运行状态。 17 【正确答案】 B 18 【正确答案】 C 【试题解析】 采用了三个页面来存储,由于第一个页面用来存放程序及 i、 j。所以只有两个页面用来存放数组。整个数组有 150100=15000个整数,而每一页可存放 150个整数变量,所以整个程序执行完,共产生 1500050=100次缺页。每一行 100个整数,最后保留在两个内存页面 的内容是矩阵 A的最后 3行的数值。 19 【正确答案】 B 20 【正确答案】 C 【试题解析】 因为在同一个磁道上,所以处理完记录的时间处理时间 +旋转延迟时间。 要想处理这 9个记录的时间最长,则应该先处理 R9,磁头从 R1旋转到 R
43、9的时间为 27-27(1/9)=24ms,然后处理 R9记录的时间为 3ms,再处理 R8、 R7、 R6、R5、 R4、 R3、 R2、 R1,则处理完 9个记录的最长时间为 9(24+3)=246ms。 对信息存储进行优化分布后,要想使处理 9个记录的时间最少,则应该 先处理 R1,需要 3ms,由于系统使用单缓冲区,当缓冲区内容处理完时才能再存放新的记录,这样存放新的记录需要时间,磁头不能直接取 R2,继续旋转, 3ms后可直接处理 R3,同理,接下来处理 R5, R7, R9, R2, R4, R6, R8,共需时间为 9 (3+3)=54ms。 21 【正确答案】 D 22 【正确
44、答案】 C 【试题解析】 互斥资源 R1,可用资源数为 3,已分别分了 1个资源给 P1、 P3、P4,所以在 T0时刻系统中 R1的剩余资源数为 3-1-1-1=0,同理,在 T0时刻系统中 R2的剩余资源数为 1, R3的剩余资源数为 0, R4的剩余资源数为 1。 要想系统状态是安全的,可以采用银行家算法,分析详见第 3题。 先算出各进程还需要的资源数。在 T0时刻各进程还需要的资源数见表 5-7。 根据前面求出的各资源剩余数,此时只能将资源分配给 P3,让 P3 先运行,系统才是安全的。只有答案 C的第一个进程是 P3,后面的分析就不用做了。23 【正确答案】 D 24 【正确答案】
45、E 【试题解析】 在一个单处理机中,处理器只有一个,非管态 (即用户进程执行状态 )的某一时刻,处于运行态的进程最多只有一个,系统中处于就绪态 或阻塞的进程可能有多个,这样处于就绪态的进程数最多只能是进程总数减 1,本题为 5-1,因此最多可有 4个就绪进程。如果除了运行态的一个进程外,其余进程均处于阻塞态,则就绪态进程个数为 0。 25 【正确答案】 C 26 【正确答案】 D 【试题解析】 在本题中, Link命令的功能是为一个文件创建链接文件。在 UNIX系统中,不同进程可以用系统调用 Link 原语来链接非目录文件,从而可以直接共享该非目录文件。而且不同的用户还可以对此文件使用不同的文
46、件名。 调用格式: Link oldname, newname 调用描述:为一个已存在的文件 oldname创建一个名为 newname 的链接 (别名 )。与此相对应的还有取消链接原语 Unlink。 一个文件有两个名字,实际上一个为文件,另一个为文件的快捷方式;一个文件保存有两个副本,实际上是一个文件的两份拷贝。 27 【正确答案】 A 28 【正确答案】 D 29 【正确答案】 D 30 【正确答案】 A 31 【正确答案】 D 【试题解析】 算术移位中左移则在空位补 0,右移则补符号位。逻辑移位中无论左移右移都补 0。循环移位是指把移动 空位由移出的位来填补的移位,又分带符号位移动的大
47、循环和不带符号位移动的小循环。其中算术左移等于做乘 2的操作,而算术右移等于做除 2的操作。 程序计数器是一个指针,控制器从这里取得指令的地址,再从内存中得到指令。只有改变程序顺序执行的指令才会改变程序计数器的值,在提供的中只有转移指令符合要求。 相对寻址、基址寻址、变址寻址这几种寻址方式有类似的地方,都是一个寄存器内的地址加上指令中的地址值和作为需要的地址。不同的地方在于使用的寄存器不同,如表 1-3所示。为保护系统资源的正确分配和利用,把 “启动 I/O”等的一类 可能影响系统安全的指令定义为特权指令。一些高级 (现在已经很常见了 )的微处理器有不同的工作状态,在不同的状态下可以执行不同的
48、指令和使用不同的微处理器资源,这样才能保证系统的稳定性。 32 【正确答案】 C 33 【正确答案】 D 34 【正确答案】 C 35 【正确答案】 A 36 【正确答案】 B 【试题解析】 有关流水线执行时间的问题,请读者参考第 2题的分析。 在流水线结构的计算机中,影响流水线效率的因素主要有以下几个方面。 1条件转移指令(转移相关性 ) 在存在转移指令的情况下,下 一条需要执行的指令未必是程序计数器所指定的指令。只有在这条转移指令执行完成后,才能判断下一条指令是什么。 如果在遇到转移指令时,关闭流水线的进入端口,防止错误发生,那么这种方法无疑会降低流水线的效率,而且程序中的条件转移是大量存
49、在的,这势必使得流水线在很多时间内闲置,影响计算机的性能。 为了解决这个问题,有的计算机采用猜测法,当发现条件转移指令时则系统猜测可能会跳转到的语句,如果猜测正确,则流水线正常运行,如果猜测错误,则需要清空当前流水线的内容。如图 1-6(a)所示。 还有一种需要编译系统的支持的方法,如 图 1-6(b)所示。方法是这样的:将必须执行的 D指令提前执行,在 D指令执行之后,条件转移指令的结果出来后,再判断是 B 或者 C进入流水线。同样也可以把 A指令前的指令滞后到 A指令执行后执行,这样能保持流水线闲置的时间尽可能少。但是必须在 D和 B、 C指令不存在前后依存关系的情况下采用。统计的结果还是不错的, 50%的条件转移指令能够进行这样的优化。 2资源共享 (数据相关性 ) 由于使用流水线,因此当相邻的两条指令都对同一个资源进行操作时,或者前一条指令的输出是后一条指令的输入时,在没有流水线的情况下是正常的,在有流水 线时就可能出现错误。例如:前一条指令是写,后一条指令是读,当前一条指令保存结果没有完成时,后一条指令的读操作数就已经开始