1、模拟试题模拟试题(一)一、判断改错题(判断命题的正误,并对错误命题说明理由,每小题2分,共10分)1. 一个作业由若干作业步组成,在多道程序系统中这些作业可以并发执行。2. 多道程序的引入主要是为了提高CPU的利用率。3. 不同进程所包含的程序必定相同。4. P、V操作中信号值永远代表着某类可用资源的数量。5. 操作系统对进程的管理和控制主要是通过PCB来实现的。二、单项选择题(每小题1分,共10分)1. 实时操作系统必须在 内处理完来自外部的事件。A)响应时间 B) 周转时间C)被控对象规定时间 D)调度时间2. 操作系统提供给程序员的接口是 。A)进程 B)系统调用 C)库函数 D)系统调
2、用和库函数3. 操作系统是对 进行管理的软件。A)软件 B)硬件 C)计算机资源 D)应用程序4. 联想存储器在计算机系统中是用于 的。A)存储文件信息 B)与主存交换信息C)内存地址交换 D)内存管理信息5. 响应比高者优先作业调度算法是以计算机时间和 来考虑的。 A)输入时间 B)完成时间 C)周转时间 D)等待时间6. 在消息缓冲通信中,消息队列属于 资源。A)临界 B)共享 C)永久 D)可剥夺7. 进程间同步是指进程间在逻辑上的相互 关系。A)联接 B)制约 C)继续 D)调用8. 采用资源剥夺法可解除死锁,还可以采用 方法解除死锁。A)执行并行操作 B)撤消进程C)拒绝分配新资源
3、D)修改信号量9. 实现虚拟存储的目的是 。A)实现存储保护 B)实现程序浮动C)扩充外存容量 D)扩充内存容量10. 为了解决不同用户文件的“命名冲突”问题,通常在文件系统中采用 。A)约定的方法 B)多级目录 C)路径 D)索引三、填空(每空1分,共20分)1. 多道程序环境下的各道程序,宏观上它们是在 运行,微观上则是 执行。2. 并发和 是操作系统的两个最基本的特怔,两者之间互为存在条件。3. 所谓系统调用,就是用户在程序中调用 所提供的一些子功能。4. 确定作业调度算法时应注意系统资源的均衡使用,使 作业和 作业搭配运行。5. 临界资源的概念是 ,而临界区是指 。6. 进程是一个 态
4、概念,而程序是一个 态概念。7. 处理死锁的方式有 、 、和 。8. 重定位的方式有 和 两种。9. UNIX操作系统中进程控制块分别为 和 两部分。10. 从资源管理(分配)的角度出发,I/O设备可分为 、 和 三种类型。四、简答题(每小题5分,共30分)1. 什么叫多道程序设计?多道程序设计的主要特点是什么?2. 什么是线程?线程与进程的区别是什么?3. 什么是系统功能调用?系统调用与一般用户程序有什么区别?与库函数和实用程序又有什么区别?4. 什么是设备驱动程序?其功能是什么?用户进程怎么使用驱动程序?5. 为什么引进缓冲区?UNIX系统V的缓冲区有哪几种?6. 提高内存利用率的途径有哪
5、些?五、综合题(每小题10分,共30分)1. 某个采用段式存储管理的系统为装入主存的一个作业建立了段表SMT,如表9-1所示。表 9-1 段表段 号段 长主存起始地址01234660140100580960221933009012371959(1) 给出段式地址转换过程。(2) 计算该作业访问的内存地址(0,432),(1,10),(2,500),(3,400)时的绝对地址。2. 假设系统有同类资源10个,供P、Q、R三个进程共享,P、Q、R所需资源总数分别为8、4、9,它们申请资源的次序和数量如表9-2所示:表 9-2 进程资源申请表次序进 程申 请 量123456.RPQPRQ.24221
6、2.按银行家算法为它们分配资源:(1)写出执行完序号为6的申请时,各进程的状态和己占的资源数。 (2)请估计系统是否会出现死锁,并简要说明理由。3进程A1,A2,.,An1通过m个缓冲区向进程B1,B2,.,Bn2不断地发送消息。发送和接受工作遵循如下规则:(1)每个发送进程一次发送一个消息,写入一个缓冲区,缓冲区大小等于消息长度。(2)对每一个消息,B1,B2,.,Bn2都须各接收一次,读入各自的数据区内。(3)m个缓冲区都满时,发送进程等待;没有可读的消息时,接收进程等待。试用P、V操作组织正确的发送和接收工作。模拟试题(一)答案一、判断改错题1错,原因:按顺序执行2对。3错,原因:只有共
7、享的可再入程序相同。4错,原因:信号量为负值时,绝对值表示等待队列中的进程个数。5对。二、单项选择题1. C 2. B 3. C 4. C 5. D6. A 7. B 8. B 9. D 10.B三、填空1并行 串行2共享3操作系统4I/O繁忙 CPU繁忙5一次仅允许一个进程访问的资源 程序中访问临界资源的那段程序代码6动态 静态7死锁预防 死锁避免 死锁检测与解除8静态重定位 动态重定位9PROC结构 USER结构10. 独享 共享 虚拟四、简答题1. 多道程序设计是指把一个以上的程序放在内存中,并且同时处于运行状态,这些程序共享CPU和其他计算机资源。其主要特点是:(1) CPU的利用率高
8、。在单道环境下,程序独占资源,当程序等待I/O操作时,CPU空闲,造成CPU资源的浪费;在多道环境下,多个程序共享计算机资源,当某个程序等待I/O操作时,CPU可以执行其他的程序,提高了CPU的利用率。(2) 设备利用率高。在多道环境下,内存和外设也由多个程序共享,这样也会提高内存和外设的利用率。(3) 系统吞吐量大。由于资源利用率的提高,减少了程序的等待时间,提高了系统的吞吐量。2. 线程是在进程内用于调度和占用处理机的基本单位,它由线程控制表、存储线程上下文的用户栈以及核心栈组成。线程可分为用户级线程、核心级线程以及用户/核心混合型线程等类型。其中,用户级线程在用户态下执行,CPU调度算法
9、和各线程优先级都由用户设置,与操作系统内核无关;核心级线程的调度算法及线程优先级控制权在操作系统内核中;混合型线程的控制权在用户和操作系统内核。线程与进程的主要区别如下:(1) 进程是资源管理的基本单位,它拥有自己的地址空间和各种资源,例如内存空间、外设等;线和只是处理机调度的基本单位,它只和其他线程一起共享进程资源,但自己没有任何资源。(2) 以进程为单位进行处理机调度和切换时,由于涉及到资源转移以及现场保护等问题,将导致处理机切换时间变长,资源利用率降低。以线程为单位进行处理机调度和切换时,由于不发生资源变化,特别是地址空间的变化,处理机切换的时间较短,处理机效率高。(3) 就用户而言,多
10、线程可以减少用户的等待时间,提高系统的响应速度。例如:当一个进程需要对两个不同服务器进行远程过程调用时,对于无线程的操作系统,就需要顺序等待两个不同调用返回结果后才能继续执行,而且等待中可能发生进程调度。对于多线程系统,则可以在一同一进程中使用不同的线程同时进行远程过程调用,从而缩短进程的等待时间。(4) 线程和进程一样,都有自己的状态和相应的同步机制,但是,由于线程没单独的数据和程序空间。因此,线程不能像进程的程序和数据一样,交换到外存上,因此线程没有挂起状态。 进程的调度、同步控制大多由操作系统内核完成,而线程的控制可以由操作系统内核完成,也可以由用户控制完成。3. 系统调用是操作系统提供
11、给编程人员的唯一接口。编程人员利用系统调用,在源程序一级动态请求和释放系统资源,调用系统中己有的系统功能来完成那些与机器硬件部分相关的工作以及控制程序的执行速度等。因此,系统调用像一个黑箱子那样,对用户屏蔽了操作系统的具体动作而只提供相关的功能。它与一般用户程序、库函数和实用程序的区别是:系统功能调用是在程序核心态执行,调用它们需要一个类似于硬件中断处理的中断处理机制来提供系统服务。4. 设备驱动程序是驱动外部物理设备和相应的DMA控制器或I/O控制器等设备,使之能直接在 内存进行I/O操作的子程序集合。它们负责设置相应设备的有关寄存器,启动I/O操作,指定操作类型和数据流向等。设备驱动程序屏
12、蔽了直接对硬件操作的细节,为程序员提供了操作设备的良好接口。用户进程通过调用设备驱动程序提供的接口来使用设备驱动程序。5. 引进缓冲区的目的是为了匹配外设与CPU之间的处理速度,减少中断次数和中断处理时间,解决DMA和通道方式的数据传输瓶颈。缓冲区分为自由buf队列、空设备队列、设备缓冲区队列、设备I/O请求队列。6. 内存利用率不高,主要表现为以下四种形式:(1) 内存中存在着大量的、分散的、难以利用的碎片。(2) 暂时或长期不能运行的程序和数据,占据了大量的存储空间。(3) 当作业较大时,内存中只能装入少量作业,当它们被阻塞时,将使CPU空闲,从而也就降低了内存的利用率。(4) 内存中存在
13、着重复的拷贝。针对上述问题,可分别采下下述方法提高内存的利用率:(1) 改连续分配为离散分配方式,以减少内存中的碎片。(2) 增加对换机制,将那些暂时不能运行的进程或暂时不需要的程序和数据,换出至外存,以腾出内存来装入可运行的进程。(3) 引入动态链接机制,当程序在运行中需要调用某程序时,才将程序由外存装入内存。这样可以避免装入一些本次运行中不用的程序。(4) 引入虚拟存储器机制,使更多的作业能装入内存,并使CPU更加忙碌,还可以人避免装入本次运行中不会用到的那部分程序和数据。(5) 引入存储器机制,允许一个正文段或数据段被若干个进程共享,以消减内存中重复的拷贝。五、综合题 1(1)A. 根据
14、程序编译后形成的逻辑地址,取出段号s,w。 B. 根据s在段变换表中查找相应的段起始地址p和该段长l。 C检查wl是否成立,若成立则执行E,否则进入D执行。 D产生地址越界错,程序终止。 E计算:物理地址=p+w,这就是所要的指令物理地址。 (2)(0,432)物理地址=2219+432=3651 (1,10) 物理地址=3300+10=3310 (2,500)因为段内偏移500段长100,故报地址越界错。 (3,400)物理地址=1237+400=1637 2(1)执行完序号为6的申请时,各进程的状态和己占的资源数如表9-3所示:表 9-3 进程状态表P等待己占用资源4个Q就绪或运行己占用资
15、源4个R等待己占用资源2个根据单项银行家算法,过程为: R申请2个资源时,剩余资源可使各进程运行结束,所以这个分配是安全的,故将2个资源分给R。 同理,P、Q分别申请4、2个资源时,剩余资源可使各进程运行结束,所以这个分配也是安全的,故将4、2个资源分配给P、Q。 申请2个资源时,系统此刻剩余资源数为2,如果将这两个资源分配给P,系统就没有资源了。这时的P、Q、R都不需要资源才可运行完,这样,P、Q、R将进入阻塞状态。所以P申请的这两个资源不能分配。 同理,接下来R欲申请1个资源也是不安全的分配,故不能分给。 Q申请2个资源时,假定操作系统分给它。Q进程将运行结束,Q释放的资源又可使P运行结束
16、;P运行结束,释放的资源又可使R运行结束。所以这个分配是安全的,故将2个资源分给Q。(2) 不会死锁,因为银行家算法在任何时候均保证至少有一个进程能得到所需的全部资源,这样,得到资源的进程及时归还资源供其他进程使用。3. 本题是生产者-消费都问题的一个变形,一组生产者A1,A2,An1和一组消费者B1,B2,Bn2共用m个缓冲区,每个发送者需要同时写n2组缓冲区中相应的n2个缓冲区,而每一个接收者只需读它自己对应的那组缓冲区中的对应单元。在本题中,应设置一个信号量mutex实现诸进程对缓冲区的互斥访问;两个信号数组emptyn2和fulln2描述n2组缓冲区的使用情况。Mutex的初值为1,数
17、组emtpy元素初值为m,数组full中元素初值为0。其同步关系描述如下:int mutex,emptyn2,fulln2;int 1;mutex=1;for(i=0;in2-1;i+)emptyi=m;fulli=0; main() cobegin A1(); A2(); An1(); B1(); B2(); Bn2(); Coend send() /*发送消息*/ int i; for (i=0;in2-1;i+)p(emptyi); p(mutex); 将消息放入缓冲区; v(mutex); for(i=0;in2-1;i+) v(fulli); receive(i) /*进程Bi接收消
18、息*/ p(fulli; p(mutex); 将消息从缓冲区取出; v(mutex); v(emptyi);Ai() /*因发送进程A1,A2,An1的程序类似,这里只给出进程Ai的描述。*/ while(l) send(); Bi() /*因接收进程B1,B2,Bn2的程序类似,这里只给出进程Bi的描述*/ while(l) receive(i); 模拟试题(二)一、判断改错题(判断命题的正误,并对错误命题说明理由,每小题2分,共10分)1. 可以将操作系统看作是一个资源分配器,用来控制I/O设备和用户的程序。 ( )2. 死锁的形成只与资源分配策略有关,而与并发进程的执行速度无关。 ( )
19、3. 在引入线程的操作系统中,线程是资源分配和调度的基本单位。 ( )4. 分页存储管理方案易于实现用户使用内存空间的动态扩充。 ( )5. 特权指令只能在管态下执行,不能在算态下执行。 ( )二、单项选择题(每小题1分,共10分)1在下列语言中属于脱机作业控制语言的是 。 A)作业控制语言 B)汇编语言C)会话式程序设计语言 D)解释BASIC2操作系统中 采用了以空间换时间的技术。A)SPOOLing技术 B)覆盖技术 C)通道技术 D)虚拟存储技术3 是进程调度算法。A)时间片轮转法 B)先来先服务方法C)响应比高者优先法 D)均衡调度算法4在UNIX系统中,为了对盘空间的空闲块进行有效
20、的管理,采用的方法是 。A)空白文件目录法 B)FAT C)空闲块成组链接法 D)位示图法5资源的静态分配法破坏了产生死锁的必要条件中的 。 A)互斥控制 B)非剥夺控制 C)逐次请求 D)环路条件6在批处理操作系统中, 反映了作业的运行情况,并且是作业存在的唯一标志。 A)作业状态 B)作业类型 C)作业控制块 D)作业优先级7临界区是 。A)一段共享数据区 B)一个缓冲区C)一段互斥执行的程序段 D)一个互斥资源8在请求分页存储管理中,当所访问的页面不在内存时,便产生缺页中断,缺页中断是属于 。A)I/O中断 B)程序中断 C)访管中断 D)外中断9时钟中断是属于 。A)硬件故障中断 B)
21、程序中断 C)I/O中断 D)外部中断10操作系统通过 对进程进行管理。A)进程 B)进程控制块 C)进程启动程序 D)进程控制区三、填空(每空1分,共20分)1操作系统提供给用户的接口主要有 、 和 。2为了实现地址变换,在分页系统中设置了页表寄存器,其中存放了 和 ;当进程未执行时,上述信息将存放在 中。3在中断驱动方式中,CPU是以 为单位对I/O进行干预的;DMA方式时,是以 为单位进行干预的;I/O通道方式是以 为单位进行干预的。4文件存储空间的分配可采用多种方式,其中, 方式可使文件顺序访问的效率最高; 方式则可解决文件存储空间中的碎片问题,但却不支持对文件的随机访问;而UNIX采
22、用的则是 方式。5进程的最基本的特征是 和 。在UNIX 系统中,可通过系统调用 来创建进程。6使用共享文件进行进程通信的方式被称为 ;而发送进程利用操作系统提供的发送命令,直接将格式化的消息发送给目标进程的通信方式则称为 。7在用信号量实现对临界资源的互斥访问时,若信号量的初值为2,当前值为-1,表示有 个进程等待使用该资源8引入进程的主要目的是 ,进程存在的唯一标志是 。四、简答题(每小题5分,共30分)1什么是多道程序技术?在操作系统中引入该技术,带来了哪些好处?2虚拟存储器具有哪些基本特征?实现虚拟存储器的几个关键技术是什么?3一个比较完善的文件系统应该具有哪些功能?4RAID是通过什
23、么方法来提高磁盘的I/O速度和可靠性的?5. 什么是死锁?为什么将所有资源赋予不同的序号,并规定所有的进程按资源号递增的顺序申请资源后,系统便不会产生死锁?6. 试说明访管指令特权指令和系统功能调用之间的区别和联系。五、综合题(每小题10分,共30分)1计算进程PC和打印进程P01、P02共享一个单缓冲区,计算进程负责计算,并把计算结果放入单缓冲中;打印进程P01、P02则负责从单缓冲中取出计算结果进行打印,而且对每一个计算结果,P01和P02都需分别打印一次。请用记录型信号量上述进程间的同步关系。2假设磁盘有200个磁道,磁盘请求队列中是一些随机请求,它们按照到达的次序分别处于98、183、
24、37、122、14、124、65、67号磁道上,当前磁头在53号磁道上,并向磁道号减小的方向上移动。请给出按FCFS、SSTF、SCAN及CSCAN算法进行磁盘调度时满足请求的次序,并计算出它们的平均寻道长度。3假设某多道程序设计系统中有供用户使用的内寸100KB,打印机1台。系统采用可变分区方式管理内存;对打印机采用静态分配,并假设输入输出操作的时间忽略不计;采用最短剩余时间优先的进程调度算法,进程剩余执行时间相同时采用先来先服务算法;进程调度时机选择在执行进程结束时或有新进程到达时。现有一个进程序列如表9-4所示:表9-4 进程序列表进程号进程到达时间/s要求执行时间/s要求主存量/B申请
25、打印机数/台10815K124430K1310160K04112020K15161410K1假设系统优先分配内存的低地址区域,切不许移动已在主存中的进程,请问:(1) 给出进程调度算法选中进程的次序,并说明理由。(2) 全部进程执行结束所用的时间是多少?模拟试题(二)答案一、判断题改错题1对2错,原因:与进程执行速度有关。3错,线程是调度的基本单位,进程是资源分配的基本单位。4错,原因:分段存储管理易于实现0用户使用内存空间的动态扩充。5对二、单项选择题1A 2A 3A 4C 5C6C 7C 8B 9D 10B三、填空1命令接口 图形接口 程序接口2页表长度 页表在内存中的起始地址 该进程的进
26、程控制块3字节 数据块 一组数据块4连续分配 隐式链接分配 混合索引分配5动态性 并发性 fork6管道通信 直接通信718使程序能够正确地并发执行 进程控制块PCB四、简答题1多道程序技术是指在内存中同时存放若干作业,并使它们共享系统的资源,同时运行的技术。在操作系统中引入多道程序技术带来了以下好处:(1)提高CPU的利用率。当内存中仅放一道程序时,每逢该程序运行中发出I/O请求后,CPU空闲,必须在其I/O完成后才能继续执行;尤其是I/O设备的低速性,更使CPU的利用率显著降低。在引入多道程序设计技术后,由于可同时把若干道程序装入内存,并可使它们交替地执行,这样,当正在运行的程序因I/O而
27、暂停执行时,系统可调度另一道程序执行,从而可保持CPU处于忙状态,使CPU的利用率提高。(2)可提高内存和I/O设备的利用率。为了能运行较大的作业,通常内存都具有较大的容量,但由于80%以上的作业都属于中、小型作业,因此在单道程序的环境下也必定造成内存的浪费。类似地,系统中所配置的多种类型的I/O设备,在单道程序环境下,也不能充分利用。如果允许在内存中装入多道程序,并允许它们并发执行,则无疑会有效提高内存和I/O设备的利用率。(3)增加系统吞吐量。在保持CPU、I/O设备不断忙碌的同时写也必然会大幅度地提高系统的吞吐量,从而降低作业加工所需费用。2虚拟存储器的基本特征有:(1)多次性:作业只要
28、部分装入内存后便可启动执行;其余部分可待需要时再调入内存,即一个作业将分成多次装入内存。(2)对换性:在进程运行期间,允许将那些暂不使用的程序和数据从内存换至外存的对换区(换出),待以后需要时再将它们从外存调入内存(换入)。(3) 离散性:实现虚拟存储器必须采用离散的分配技术,而连续的分配技术无法实现虚拟存储器的功能。(4) 虚拟性:虚拟存储器只是在逻辑上扩充内存容量,而实际的内存容量并没有真正扩大实现虚拟存储器的关键技术有以下两个:(5)请求调页/段技术:这是指及时将进程所要访问的、不在内存中的页(段)调入内存。该功能是由硬件(缺页/段中断机构发现缺页/段)和软件(将所需页/段调入内存)配合
29、实现的。(6)置换页/段技术:当内存中已无足够空间用来装入即将调入的页/段时,为了保证进程能继续运行,系统必须换出内存中的部分页/段,以腾出足够的空间,将所蓄的页/段调入内存。具体的置换操作并不复杂,其关键是应将哪些页/段换出,即采取什么置换算法。3一个比较完善的文件系统应具备以下功能:(1)文件存储空间的管理:通过文件存储空间的管理,使文件“各得其所”,并且尽量提高文件存储空间的利用率。(2)目录管理:通过目录管理,实现对文件的按名存取,提高对文件的检索速度,解决文件的命名问题(允许文件重名),并实现多个文件的共享。(3)文件的读写管理:通过对文件的读写管理,能快速地从磁盘上读出文件中的数据
30、,或快速地将数据写入磁盘。(4)文件的安全性管理:采用一系列措施(如多级文件保护措施)对系统中的文件进行保护,以防文件被盗窃、修改和破坏。(5)提供用户接口:向用户提供一个统一的、使用方便的接口,使用户可通过该接口方便地取得文件系统的服务(如文件存取服务,创建文件、删除文件、修改文件等文件管理服务)4RAID利用一台磁盘阵列控制器来统一管理和控制一组(几台到几十台)磁盘驱动器,用户数据和系统数据可分布在阵列的所有磁盘中,而阵列中的所有磁盘驱动器可并行交叉地进行数据传输,因此它可大大地提高数据传输的速度。RAID方案可分成RAID07这几级,除了RAID0外,其他各级都采用了容错技术。如RAID1采用了磁盘镜像功能,阵列中的每个磁盘都有一个镜像盘:RAID3则专门使用了一台奇偶校验盘,其中每位用来存放根据其他磁盘中同一位置的数据位计算出来的奇偶校验码,从而使得某个磁盘发生故障时,RA
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1