试题一答案
一、单项选择题(20分) 1.(d) 2.(b) 3.(d) 4.(c) 5.(d) 6.(a) 7.(b) 8.(a) 9.(b) 10.(b) 11.(c) 12.(c) 13.(a) 14.(a) 15.(d) 16.(c) 17.(b) 18.(b) 19.(a) 20.(a)。 二、多项选择题(20分) 1、(C E )。 2、(ACE )。 3、(ACE)。 4、(ACE)。 5、(ACD) 6、(ABD)。 7、(ADE)。 8、( BD )。 9、(cd) 10、(ABC)。 三、名词解释(10分) 1、 操作系统
答:操作系统是运行在计算机硬件系统上的最基本的系统软件。它控制和管理着所有的系统硬件(CPU、主存、各种硬件部件和外部设备等),也控制和管理着所有的系统软件(系统程序和用户进程等),操作系统为计算机用户提供了一种良好的操作环境,也为其他各种应用系统提供了最基本的支撑环境。
2、 脱机输入输出方式 答:为了解决低速输入/输出设备和CPU速度不匹配的问题,可将用户程序和数据在外围机的控制下,预先从低速输入设备输入到磁带上,当CPU需要这些程序和数据时,再直接从磁带机高速输入到内存;或当程序运行完毕后CPU需要输出时,先高速地把结果输出到磁带上,然后在外围机地控制下,再把磁带上的计算结果由输出设备输出。这种输入/输出方式称为脱机输入输出方式。 采用这种方式大大加快了程序的输入/输出过程,提高了效率。 3、 进程
答:进程是程序在一个数据集合上运行的过程,是系统进行资源分配和调度的一个独立单位。 4、 死锁
答:当多个进程因竞争资源而造成的一种僵局,在无外力作用下,这些进程将永远不能继续向前推进,我们称这种现象为死锁。 5、 设备独立性
答:设备独立性是指用户在编制程序时所使用的设备与实际使用的设备无关,即引入了逻辑设备和物理设备的概念。在用户程序中对I/O设备的请求采用逻辑设备名,而系统在实际执行时,则是通过逻辑设备表将设备名映射为物理设备名。 四、简答题(20分)
1.什么是多道程序设计?为何要引入多道程序设计?
答: 多道程序设计是指同时把多个作业(程序)放入内存并允许它们交替执行和共享系统中的各类资源;当一道程序因某种原因(如I/O请求)而暂停执行时,CPU立即转去执行另一道程序。操作系统在引入多道程序设计技术后,使得系统具有了多道、宏观上并行、微观上串行的特点。 引入多道程序设计是为了减少CPU时间的浪费,增加系统吞吐量,提高系统效率。 2.操作系统的设计目标有哪些?操作系统的特性是什么?
答:目标――(1)提供一个计算机用户与计算机硬件系统之间的接口,使计算机系统更易使用;(2)有效控制和管理计算机系统中的各种硬件和软件资源,使之得到更有效的利用;(3)合理地组织计算机系统地工作流程,以改善系统性能。
特性――(1)并发性 两个或两个以上事件在同一时间间隔内发生。(2)共享性 指系统中地硬件和软件资源不再为某个程序所独占,而是提供多个用户共同使用。 (3) 虚拟性 指把一个物力上的实体变为若干个逻辑上的对应物,前者是实际存在的,后者是虚的,只是给用户的一种感觉。(4) 不确定性 有两种含义:一是 程序执行结果是不确定的 二是 多道程序环境下程序的执行是以异步方式进行的,即程序的执行时间和多道程序的执行顺序是不确定的。 5. 何谓线程?试述虚拟处理机的概念。
答:线程是比进程更小的能够独立运行的基本单位。它的引入有效地提高了系统内程序并发执行的的程度,也进一步提高了系统的吞吐量。
虚拟处理机,是采用多道程序设计技术,使得计算机可以同时处理多个作业,使用户感觉到每一个作业在一个独立的CPU上运行,这个CPU是模拟出来的,称之为虚拟处理机。 6. 何谓临界区?给出临界区的使用准则。
答:进程在并发执行中可以共享系统中的资源,但对临界资源的访问必须互斥进行。我们把一个进程访问临界资源的那段代码称为临界区。临界区使用准则如下:
(1) 空闲让进――无进程处于临界区时,若由进程要求进入临界区应立即允许进入。
(2) 忙则等待――当已有进程进入临界区时,其他试图进入各自临界区的进程必须等待,以
保证诸进程互斥地进入临界区。
(3) 有限等待――有若干进程要求进入临界区时,应咱有限时间内使一进程进入临界区,即
它们不应相互等待而谁都不进入临界区。
(4) 让权等待――对于等待进入临界区地进程必须释放其占有地CPU。 5.何谓虚拟存储器?有何特征?
答:基于程序局部性原理,一个作业在运行之前没有必要全部装入内存,而仅将当前要运行地那部分页面或段先装入内存就可以启动运行,其余部分则存放在外存。当所访问地信息不在内存时,再由系统将所需要地那部分内容调入内存。从效果上看,计算机系统好像为用户提供了一个比实际内存大得多地存储器。这个存储器称为虚拟存储器。特点有四个
离散性:在内存分配时采用离散分配方式。 多次性:一个作业运行时分成多次装入内存。
对换性:作业在运行时可以将需要的内容调入内存,也可以将内存中暂时不需要的程序或数据
调至外存。
虚拟性:从逻辑上扩充了内存容量,使用户感觉到的存储容量远远大于实际的内存容量。 六、 综合题(30分) 1.解: 在本题中,应设置两个信号量SE,SF, 信号量 SF表示缓冲区中是否有可供打印的计算结果,其初值为0;信号量SE用于表示缓冲区有无空位置存放新的信息,其初值为1。
本题的同步描述如下: int Se=1; int Sf=0; main ()
{ cobegin get ( );
compute ( ); cdend } get ( )
{ while (采集工作未完成) {采集一个数据;
P(Se);
将数据送入缓冲区中; V (Sf ); } }
compute ( )
{ while (计算工作未完成) { P (Sf )
从缓冲区中取出数据;
V(Se )
进行数据计算; } }
2.解: 由题目条件可知,硬盘大小为540M,磁盘块大小为1K,所以硬盘共有盘块: 540M / 1K=540 K (个) 又 512K< 540K < 1024K
故 540K 个盘块号要用20位二进制表示,即文件分配表的每一个表目为2.5个自
节。FAT要占用的存储空间总数为: 2.5×540K=1350K 当硬盘大小为1.2G, 硬盘共有盘块 1.2G/ 1K = 1.2M(个) 又 1M< 1.2M <2M
故 1.2M 个盘块号要用31位二进制表示,为方便文件分配表的存取,每一个表目用32位二进制表示,即文件分配表的每个表目大小为4 个字节。 FAT 占用的存储空间总数为:4×1.2M=4.8M
3.解:相应的物理地址为:4096×7+100=28772 地址变换过程如下图:
控制寄存器 23 12 11 0
页表长度 页表地址 3 100 有效地址
页表 页号 块号 0 3 1 2 3 ···
4 9 7 ··· 7 100