操作系统习题分析

合集下载

操作系统习题解答

操作系统习题解答

操作系统习题解答1.存储程序式计算机的主要特点是什么?答:主要特点是以顺序计算为基础,根据程序规定的顺序依次执行每一个操作,控制部件根据程序对整个计算机的活动实行集中过程控制,即为集中顺序过程控制。

这类计算是过程性的,实际上这种计算机是模拟人们的手工计算的产物。

即首先取原始数据,执行一个操作,将中间结果保存起来;再取一个数,和中间结果一起又执行一个操作,如此计算下去。

在遇到多个可能同时执行的分支时,也是先执行完一个分支,然后再执行第二个分支,直到计算完毕。

2.批处理系统和分时系统各具有什么特点?答:批处理系统是在解决人—机矛盾以及高速度的中央处理机和低速度的I/O设备这两对矛盾的过程中发展起来的。

它的出现改善了CPU和外设的使用情况,其特点是实现了作业的自动定序、自动过渡,从而使整个计算机系统的处理能力得以提高。

在多道系统中,若采用了分时技术,就是分时操作系统,它是操作系统的另一种类型。

它一般采用时间片轮转的办法,使一台计算机同时为多个任务服务。

对用户都能保证足够快的响应时间,并提供交互会话功能。

它与批处理系统之间的主要差别在于,分时系统是人机交互式系统,响应时间快;而批处理系统是作业自动定序和过渡,无人机交互,周转时间长。

3.实时系统的特点是什么?一个实时信息处理系统和一个分时系统从外表看来很相似,它们有什么本质的区别呢?答:实时系统对响应时间的要求比分时系统更高,一般要求响应时间为秒级、毫秒级甚至微秒级。

将电子计算机应用到实时领域,配置上实时监控系统,便组成各种各样的专用实时系统。

实时系统按其使用方式不同分为两类:实时控制系统和实时信息处理系统。

实时控制是指利用计算机对实时过程进行控制和提供监督环境。

实时信息处理系统是指利用计算机对实时数据进行处理的系统。

实时系统大部分是为特殊的实时任务设计的,这类任务对系统的可靠性和安全性要求很高。

与分时系统相比,实时系统没有那样强的交互会话功能,通常不允许用户通过实时终端设备去编写新的程序或修改已有的程序。

操作系统练习题_及答案解析

操作系统练习题_及答案解析

操作系统练习题第一章引言(一单项选择题1 操作系统是计算机系统的一种( 。

A.应用软件B. 系统软件c. 通用软件D.工具软件2.操作系统目的是提供一个供其他程序执行的良好环境,因此它必须使计算机( A.使用方便B. 高效工作C.合理使用资源D.使用方便并高效工作3.允许多个用户以交互方式使用计算机的操作系统是( 。

A.分时操作系统B. 批处理单道系统C.实时操作系统D.批处理多道系统4.下列系统中( 是实时系统。

A.计算机激光照排系统B. 办公自动化系统C.化学反应堆控制系统D.计算机辅助设计系统5.操作系统是一种系统软件,它( 。

A.控制程序的执行B. 管理计算机系统的资源C.方便用户使用计算机D.管理计算机系统的资源和控制程序的执行6.计算机系统把进行( 和控制程序执行的功能集中组成一种软件,称为操作系统A.CPU 管理B.作业管理C.资源管理D.设备管理7.批处理操作系统提高了计算机系统的工作效率,但( 。

A.不能自动选择作业执行B. 无法协调资源分配c.不能缩短作业执行时间D 在作业执行时用户不能直接干预8.分时操作系统适用于( 。

A.控制生产流水线B.调试运行程序c.大量的数据处理D.多个计算机资源共享9.在混合型操作系统中,“前台”作业往往是指( 。

A.由批量单道系统控制的作业B.由批量多道系统控制的作业c.由分时系统控制的作业D.由实时系统控制的作业10.在批处理兼分时的系统中,对( 应该及时响应,使用户满意。

A.批量作业B.前台作业c.后台作业D.网络通信11.实时操作系统对可靠性和安全性要求极高,它( 。

A.十分注重系统资源的利用率B.不强调响应速度c.不强求系统资源的利用率D.不必向用户反馈信息12.分布式操作系统与网络操作系统本质上的不同之处在于( 。

A.实现各台计算机之间的通信B.共享网络个的资源c.满足较大规模的应用D.系统中若干台计算机相互协作完成同一任务13.SPOOL技术用于( 。

(完整版)操作系统第五版费祥林_课后习题答案解析参考

(完整版)操作系统第五版费祥林_课后习题答案解析参考

第一章操作系统概论1、有一台计算机,具有IMB 内存,操作系统占用200KB ,每个用户进程各占200KB 。

如果用户进程等待I/O 的时间为80 % ,若增加1MB 内存,则CPU 的利用率提高多少?答:设每个进程等待I/O 的百分比为P ,则n 个进程同时等待刀O 的概率是Pn ,当n 个进程同时等待I/O 期间CPU 是空闲的,故CPU 的利用率为1-Pn。

由题意可知,除去操作系统,内存还能容纳4 个用户进程,由于每个用户进程等待I/O的时间为80 % , 故:CPU利用率=l-(80%)4 = 0.59若再增加1MB 内存,系统中可同时运行9 个用户进程,此时:cPu 利用率=l-(1-80%)9 = 0.87故增加IMB 内存使CPU 的利用率提高了47 % :87 %/59 %=147 %147 %-100 % = 47 %2 一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A 先开始做,程序B 后开始运行。

程序A 的运行轨迹为:计算50ms 、打印100ms 、再计算50ms 、打印100ms ,结束。

程序B 的运行轨迹为:计算50ms 、输入80ms 、再计算100ms ,结束。

试说明(1 )两道程序运行时,CPU有无空闲等待?若有,在哪段时间内等待?为什么会等待?( 2 )程序A 、B 有无等待CPU 的情况?若有,指出发生等待的时刻。

答:画出两道程序并发执行图如下:(1)两道程序运行期间,CPU存在空闲等待,时间为100 至150ms 之间(见图中有色部分)(2)程序A 无等待现象,但程序B 有等待。

程序B 有等待时间段为180rns 至200ms 间(见图中有色部分)3 设有三道程序,按A 、B 、C优先次序运行,其内部计算和UO操作时间由图给出。

试画出按多道运行的时间关系图(忽略调度执行时间)。

完成三道程序共花多少时间?比单道运行节省了多少时间?若处理器调度程序每次进行程序转换化时lms , 试画出各程序状态转换的时间关系图。

操作系统课后习题及答案

操作系统课后习题及答案

第一章1.下面不属于操作系统的是(C )A、OS/2B、UCDOSC、WPSD、FEDORA2.操作系统的功能不包括(B )A、CPU管理B、用户管理C、作业管理D、文件管理3.在分时系统中,当时间片一定时,(B ),响应越快。

A、内存越大B、用户越少C、用户越多D、内存越小4.分时操作系统的及时性是指( B )A、周转时间B、响应时间C、延迟时间D、A、B和C5.用户在程序设计的过程中,若要得到系统功能,必须通过(D )A、进程调度B、作业调度C、键盘命令D、系统调用6.批处理系统的主要缺点是( C )A、CPU使用效率低B、无并发性C、无交互性D、都不是第二章1、若信号量的初值为2,当前值为-3,则表示有(C )个进程在等待。

A、1B、2C、3D、52、在操作系统中,要对并发进程进行同步的原因是(B )A、进程必须在有限的时间内完成B、进程具有动态性C、并发进程是异步的D、进程具有结构性3、下列选项中,导致创进新进程的操作是(C )I用户成功登陆II设备分配III启动程序执行A、仅I和IIB、仅II和IIIC、仅I和IIID、I,II,III4、在多进程系统中,为了保证公共变量的完整性,各进程应互斥进入临界区。

所谓的临界区是指(D )A、一个缓冲区B、一个数据区C、一种同步机构D、一段程序5、进程和程序的本质区别是(B )A、内存和外存B、动态和静态特征C、共享和独占计算机资源D、顺序和非顺序执行计算机指令6、下列进程的状态变化中,(A )的变化是不可能发生的。

A、等待->运行B、运行->等待C、运行->就绪D、等待->就绪7、能从1种状态变为3种状态的是(D )A、就绪B、阻塞C、完成D、执行8、下列关于进程的描述正确的是(A )A、进程获得CPU是通过调度B、优先级是进程调度的重要依据,一旦确定就不能改变C、在单CPU系统中,任何时刻都有一个进程处于执行状态D、进程申请CPU得不到满足时,其状态变为阻塞9、CPU分配给进程的时间片用完而强迫进程让出CPU,此时进程的状态为(C )。

操作系统习题解答

操作系统习题解答

《操作系统》习题解答习题11.术语解释裸机虚拟机操作系统程序接口命令接口非特权指令特权指令核心态用户态系统调用微内核批处理系统分时实时指令的执行周期中断中断源中断请求中断屏蔽中断禁止GPL POSIX 时间片答案:·未配置任何软件的计算机称为“裸机”。

·在裸机上安装一层软件,使机器的功能得以扩展,这时展现在用户面前的“机器”,就是所谓的虚拟机。

·操作系统是控制和管理计算机硬件和软件资源、合理地组织计算机工作流程以及方便用户使用计算机的一个大型系统软件。

·在用户编写的程序中,可使用系统调用命令获得操作系统提供的各种功能服务,这是操作系统在程序一级给予用户的支持,称其为程序接口。

·用户可使用操作系统提供的各种操作命令,通过键盘(或鼠标)控制和完成程序的运行,这是操作系统在作业控制一级给予用户的支持,称为命令接口。

·操作系统和用户程序都能使用的硬指令,称为非特权指令。

·只能由操作系统使用的硬指令,称为特权指令。

·所谓核心态,是指CPU处于可执行包括特权指令在内的一切机器指令的状态。

·所谓用户态,是指CPU处于只能执行非特权指令的状态。

·操作系统里预先编制了很多不同功能的子程序。

用户在自己的程序里调用这些子程序,以求得操作系统提供的功能服务。

就把这些功能服务子程序称为“系统功能调用”程序,简称“系统调用”。

·微内核即是把操作系统的内核分为基本功能和非基本功能两部分,在内核里只保留基本功能部分,在核心态下运行;非基本功能部分则从内核剥离下来,让它们以各种服务的形式,在用户态下运行。

这一的操作系统内核,称为微内核。

·若在某系统中,用户作业被分批处理,在处理一批的过程中不允许用户与计算机发生交互作用,即使作业在运行中出现错误,也只能等到整批作业处理完毕后在机下修改。

这样的系统,就是所谓的“批处理系统”。

操作系统习题解析

操作系统习题解析
试从交互性、及时性以及可靠性三个方面,比较分时系统与实时系统。P11
已知一个求值公式(A2+3B)/(B+5A),若A,B已赋值,试画 出该公式求值过程的前趋图,并用信号量解决公式的求解过程。 开始 S1:x1=A*A S2:x2=3*B S3:x3=5*A S1 S4:x4=x1+x2 S5:x5=B+x3 S4 S6:x6=x4/x5 结束 S5 S2 S3
A:1
B:2
C:4 D:2
7.下面8个系统中,必须是实时操作系统的有( ) A计算机辅助设计系统;B 航空定票系统;C 过程控制系统;D 机器翻译系统;E 办公自动化 系统;F 计算机激光照排系统;G情报检索系统;H导弹的制导系统
ABCGH
二、 简答题 在操作系统中实现虚拟的关键技术是什么?并加以说明。
操作系统中所谓的”虚拟“,是指通过某种技术把一个物理实体变为若干个逻辑上 的对应物,相应的用于实现虚拟的技术称为虚拟技术。在操作系统中利用了多种虚拟技 术分别用来实现虚拟处理机、虚拟内存、虚拟外设和虚拟信道等。虚拟的实现主要是通 过分时技术,例如,多道程序系统中,通过分时技术来实现虚拟处理机;将一台物理处 理机虚拟为多台逻辑上的处理机,是靠多道程序分时地使用同一台物理处理机来实现的。 微观上,该处理机在每一时刻只运行一道程序,它们分时地运行;然而在宏观上,系统 中确有几道程序在同时运行,从而给用户的感觉是系统中同时同时有多台处理机在为其 中的每一道程序服务,显然用户所感觉到的处理机并不实际存在。
A:4 B:5
5.采用(A)结构时,将OS分成用于实现OS最基本功能的内核和提供各种服务的服 务器两个部分。通常,下列模块中必须包含在操作系统内核中的是(B)模块。 A:(1)整体式;(2)模块化;(3)层次式;(4)微内核。 B:(1)内存分配;(2)中断处理;(3)文件处理;(4)命令处理。 A:4 B:2

操作系统第九版部分课后作业习题答案分析解析

操作系统第九版部分课后作业习题答案分析解析

CHAPTER 9 Virtual Memory Practice Exercises9.1 Under what circumstances do page faults occur? Describe the actions taken by the operating system when a page fault occurs.Answer:A page fault occurs when an access to a page that has not beenbrought into main memory takes place. The operating system veri?esthe memory access, aborting the program if it is invalid. If it is valid, a free frame is located and I/O is requested to read the needed page into the free frame. Upon completion of I/O, the process table and page table are updated and the instruction is restarted.9.2 Assume that you have a page-reference string for a process with m frames (initially all empty). The page-reference string has length p;n distinct page numbers occur in it. Answer these questions for anypage-replacement algorithms:a. What is a lower bound on the number of page faults?b. What is an upper bound on the number of page faults?Answer:a. nb. p9.3 Consider the page table shown in Figure 9.30 for a system with 12-bit virtual and physical addresses and with 256-byte pages. The list of freepage frames is D, E, F (that is, D is at the head of the list, E is second,and F is last).Convert the following virtual addresses to their equivalent physicaladdresses in hexadecimal. All numbers are given in hexadecimal. (Adash for a page frame indicates that the page is not in memory.)? 9EF? 1112930 Chapter 9 Virtual Memory? 700? 0FFAnswer:? 9E F - 0E F? 111 - 211? 700 - D00? 0F F - EFF9.4 Consider the following page-replacement algorithms. Rank thesealgorithms on a ?ve-point scale from “bad” to “perfect” according to the page-fault rate. Separate those algorithms that suffer from Belady’sanomaly from those that do not.a. LRU replacementb. FIFO replacementc. Optimal replacementd. Second-chance replacementAnswer:Rank Algorithm Suffer from Belady’s anomaly1 Optimal no2 LRU no3 Second-chance yes4 FIFO yes9.5 Discuss the hardware support required to support demand paging. Answer:For every memory-access operation, the page table needs to be consulted to check whether the corresponding page is resident or not and whetherthe program has read or write privileges for accessing the page. These checks have to be performed in hardware. A TLB could serve as a cache and improve the performance of the lookup operation.9.6 An operating system supports a paged virtual memory, using a central processor with a cycle time of 1 microsecond. It costs an additional 1 microsecond to access a page other than the current one. Pages have 1000 words, and the paging device is a drum that rotates at 3000 revolutionsper minute and transfers 1 million words per second. The following statistical measurements were obtained from the system:page other than the? 1 percent of all instructions executed accessed acurrent page.?Of the instructions that accessed another page, 80 percent accesseda page already in memory.Practice Exercises 31?When a new page was required, the replaced page was modi?ed 50 percent of the time.Calculate the effective instruction time on this system, assuming that the system is running one process only and that the processor is idle during drum transfers.Answer:(2 sec)(1sec + 0.008 ×effective access time = 0.99 ×(10,000 sec + 1,000 sec)+ 0.002 ×(10,000 sec + 1,000 sec)+ 0.001 ×9.7 Consider the two-dimensional array A:int A[][] = new int[100][100];where A[0][0] is at location 200 in a paged memory system with pages of size 200. A small process that manipulates the matrix resides in page 0 (locations 0 to 199). Thus, every instruction fetch will be from page 0. For three page frames, how many page faults are generated bythe following array-initialization loops, using LRU replacement andassuming that page frame 1 contains the process and the other two are initially empty?a. for (int j = 0; j < 100; j++)for (int i = 0; i < 100; i++)A[i][j] = 0;b. for (int i = 0; i < 100; i++)for (int j = 0; j < 100; j++)A[i][j] = 0;Answer:a. 5,000b. 509.8 Consider the following page reference string:1, 2, 3, 4, 2, 1, 5, 6, 2, 1, 2, 3, 7, 6, 3, 2, 1, 2, 3, 6.How many page faults would occur for the following replacement algorithms, assuming one, two, three, four, ?ve, six, or seven frames? Remember all frames are initially empty, so your ?rst unique pages will all cost one fault each.?LRU replacement? FIFO replacement?Optimal replacement32 Chapter 9 Virtual MemoryAnswer:Number of frames LRU FIFO Optimal1 20 20 202 18 18 153 15 16 114 10 14 85 8 10 76 7 10 77 77 79.9 Suppose that you want to use a paging algorithm that requires a referencebit (such as second-chance replacement or working-set model), butthe hardware does not provide one. Sketch how you could simulate a reference bit even if one were not provided by the hardware, or explain why it is not possible to do so. If it is possible, calculate what the cost would be.Answer:You can use the valid/invalid bit supported in hardware to simulate the reference bit. Initially set the bit to invalid. On ?rst reference a trap to the operating system is generated. The operating system will set a software bit to 1 and reset the valid/invalid bit to valid.9.10 You have devised a new page-replacement algorithm that you thinkmaybe optimal. In some contorte d test cases, Belady’s anomaly occurs. Is thenew algorithm optimal? Explain your answer.Answer:No. An optimal algorithm will not suffer from Belady’s anomaly beca an optimal algorithm replaces the page that will not—by de?nition—be used for the longest time. Belady’s anomaly occurs when a pagereplacement a lgorithm evicts a page that will be needed in theimmediatefuture. An optimal algorithm would not have selected such a page.9.11 Segmentation is similar to paging but usesnevariable-sized“pages.”De?two segment-replacement algorithms based on FIFO and LRU pagereplacement s chemes. Remember that since segments are not thesamesize, the segment that is chosen to be replaced may not be big enoughto leave enough consecutive locations for the needed segment. Considerstrategies for systems where segments cannot be relocated, and thosefor systems where they can.Answer:a. FIFO. Find the ?rst segment large enough to accommodate theincoming segment. If relocation is not possible and no one segmentis large enough, select a combination of segments whose memoriesare contiguous, which are “closest to the ?rst of the list” and which can accommodate the new segment. If relocation is possible,rearrange the memory so that the ?rstNsegments large enough forthe incoming segment are contiguous in memory. Add any leftoverspace to the free-space list in both cases.Practice Exercises 33b. LRU. Select the segment that has not been used for the longestperiod of time and that is large enough, adding any leftover spaceto the free space list. If no one segment is large enough, selecta combination of the “oldest” segments that are contiguous inmemory (if relocation is not available) and that are large enough.If relocation is available, rearrange the oldest N segments to becontiguous in memory and replace those with the new segment.9.12 Consider a demand-paged computer system where the degree of multiprogramming is currently ?xed at four. The system was recentlymeasured to determine utilization of CPU and the paging disk. The resultsare one of the following alternatives. For each case, what is happening?Can the degree of multiprogramming be increased to increase the CPU utilization? Is the paging helping?a. CPU utilization 13 percent; disk utilization 97 percentb. CPU utilization 87 percent; disk utilization 3 percentc. CPU utilization 13 percent; disk utilization 3 percentAnswer:a. Thrashing is occurring.b. CPU utilization is suf?ciently high to leave things alone, andincrease degree of multiprogramming.c. Increase the degree of multiprogramming.9.13 We have an operating system for a machine that uses base and limit registers, but we have modi?ed the ma chine to provide a page table.Can the page tables be set up to simulate base and limit registers? How can they be, or why can they not be?Answer:The page table can be set up to simulate base and limit registers provided that the memory is allocated in ?xed-size segments. In this way, the base of a segment can be entered into the page table and the valid/invalid bit used to indicate that portion of the segment as resident in the memory. There will be some problem with internal fragmentation.9.27.Consider a demand-paging system with the following time-measured utilizations:CPU utilization 20%Paging disk 97.7%Other I/O devices 5%Which (if any) of the following will (probably) improve CPU utilization? Explain your answer.a. Install a faster CPU.b. Install a bigger paging disk.c. Increase the degree of multiprogramming.d. Decrease the degree of multiprogramming.e. Install more main memory.f. Install a faster hard disk or multiple controllers with multiple hard disks.g. Add prepaging to the page fetch algorithms.h. Increase the page size.Answer: The system obviously is spending most of its time paging, indicating over-allocationof memory. If the level of multiprogramming is reduced resident processeswould page fault less frequently and the CPU utilization would improve. Another way toimprove performance would be to get more physical memory or a faster paging drum.a. Get a faster CPU—No.b. Get a bigger paging drum—No.c. Increase the degree of multiprogramming—No.d. Decrease the degree of multiprogramming—Yes.e. Install more main memory—Likely to improve CPU utilization as more pages canremain resident and not require paging to or from the disks.f. Install a faster hard disk, or multiple controllers with multiple hard disks—Also animprovement, for as the disk bottleneck is removed by faster response and morethroughput to the disks, the CPU will get more data more quickly.g. Add prepaging to the page fetch algorithms—Again, the CPU will get more datafaster, so it will be more in use. This is only the case if the paging actionis amenableto prefetching (i.e., some of the access is sequential).h. Increase the page size—Increasing the page size will result in fewer page faults ifdata is being accessed sequentially. If data access is more or less random, morepaging action could ensue because f ewer pages c an be kept in memory and moredata is transferred per page fault. So this change is as likely to decrease utilizationas it is to increase it.10.1、Is disk scheduling, other than FCFS scheduling, useful in a single-userenvironment? Explain your answer.Answer: In a single-user environment, the I/O queue usually is empty. Requests g enerally arrive from a single process for one block or for a sequence of consecutive blocks. In these cases, FCFS is an economical method of disk scheduling. But LOOK is nearly as easy to program and will give much better performance when multiple processes are performing concurrent I/O, such as when aWeb browser retrieves data in the background while the operating system is paging and another application is active in the foreground.10.2.Explain why SSTF scheduling tends to favor middle cylindersover theinnermost and outermost cylinders.The center of the disk is the location having the smallest average distance to all other tracks.Thus the disk head tends to move away from the edges of the disk.Here is another way to think of it.The current location of the head divides the cylinders into two groups.If the head is not in the center of the disk and a new request arrives,the new request is more likely to be in the group that includes the center of the disk;thus,the head is more likely to move in that direction.10.11、Suppose that a disk drive has 5000 cylinders, numbered 0 to 4999. The drive is currently serving a request at cylinder 143, and the previous request was at cylinder 125. The queue of pending requests, in FIFO order, is86, 1470, 913, 1774, 948, 1509, 1022, 1750, 130Starting from the current head position, what is the total distance (in cylinders) that the disk arm moves to satisfy all the pending requests, for each of the following disk-scheduling algorithms?a. FCFSb. SSTFc. SCANd. LOOKe. C-SCANAnswer:a. The FCFS schedule is 143, 86, 1470, 913, 1774, 948, 1509, 1022, 1750, 130. The total seek distance is 7081.b. The SSTF schedule is 143, 130, 86, 913, 948, 1022, 1470, 1509, 1750, 1774. The total seek distance is 1745.c. The SCAN schedule is 143, 913, 948, 1022, 1470, 1509, 1750, 1774, 4999, 130, 86. The total seek distance is 9769.d. The LOOK schedule is 143, 913, 948, 1022, 1470, 1509, 1750, 1774, 130, 86. The total seek distance is 3319.e. The C-SCAN schedule is 143, 913, 948, 1022, 1470, 1509, 1750, 1774, 4999, 86, 130. The total seek distance is 9813.f. (Bonus.) The C-LOOK schedule is 143, 913, 948, 1022, 1470, 1509, 1750, 1774, 86, 130. The total seek distance is 3363.12CHAPTERFile-SystemImplementationPractice Exercises12.1 Consider a ?le currently consisting of 100 blocks. Assume that the?lecontrol block (and the index block, in the case of indexed allocation)is already in memory. Calculate how many disk I/O operations are required for contiguous, linked, and indexed (single-level) allocation strategies, if, for one block, the following conditions hold. In the contiguous-allocation case, assume that there is no room to grow atthe beginning but there is room to grow at the end. Also assume thatthe block information to be added is stored in memory.a. The block is added at the beginning.b. The block is added in the middle.c. The block is added at the end.d. The block is removed from the beginning.e. The block is removed from the middle.f. The block is removed from the end.Answer:The results are:Contiguous Linked Indexeda. 201 1 1b. 101 52 1c. 1 3 1d. 198 1 0e. 98 52 0f. 0 100 012.2 What problems could occur if a system allowed a ?le system to be mounted simultaneously at more than one location?Answer:4344 Chapter 12 File-System ImplementationThere would be multiple paths to the same ?le, which could confuse users or encourage mistakes (deleting a ?le with one path deletes the?le in all the other paths).12.3 Why must the bit map for ?le allocation be kept on mass storage, ratherthan in main memory?Answer:In case of system crash (memory failure) the free-space list would not be lost as it would be if the bit map had been stored in main memory.12.4 Consider a system that supports the strategies of contiguous, linked, and indexed allocation. What criteria should be used in deciding which strategy is best utilized for a particular ?le?Answer:?Contiguous—if ?le is usually accessed sequentially, if ?le isrelatively small.?Linked—if ?le is large and usually accessed sequentially.? Indexed—if ?le is large and usually accessed randomly.12.5 One problem with contiguous allocation is that the user must preallocate enough space for each ?le. If the ?le grows to be larger than thespace allocated for it, special actions must be taken. One solution to this problem is to de?ne a ?le structure consisting of an initial contiguousarea (of a speci?ed size). If this area is ?lled, the operating system automatically de?nes an over?ow area that is linked to the initial contiguous area. If the over?ow area is ?lled, another over?ow areais allocated. Compare this implementation of a ?le with the standard contiguous and linked implementations.Answer:This method requires more overhead then the standard contiguousallocation. It requires less overheadthan the standard linked allocation.12.6 How do caches help improve performance? Why do systems not use more or larger caches if they are so useful?Answer:Caches allow components of differing speeds to communicate moreef?ciently by storing data from the slower device, temporarily, ina faster device (the cache). Caches are, almost by de?nition, moreexpensive than the device they are caching for, so increasing the numberor size of caches would increase system cost.12.7 Why is it advantageous for the user for an operating system to dynamically allocate its internal tables? What are the penalties to the operating system for doing so?Answer:tablesDynamic tables allow more ?exibility in system use growth —are never exceeded, avoiding arti?cial use limits. Unfortunately, kernel structures and code are more complicated, so there is more potentialfor bugs. The use of one resource can take away more system resources (by growing to accommodate the requests) than with static tables.Practice Exercises 4512.8 Explain how the VFS layer allows an operating system to support multiple types of ?le systems easily.Answer:VFS introduces a layer of indirection in the ?le system implementation. In many ways, it is similar to object-oriented programming techniques. System calls can be made generically (independent of ?le system type). Each ?le system type provides its function calls and data structuresto the VFS layer. A system call is translated into the proper speci?c functions for the target ?le system at the VFS layer. The calling program has no ?le-system-speci?c code, and the upper levels of the system call structures likewise are ?le system-independent. The translation at the VFS layer turns these generic calls into ?le-system-speci?c operations.。

操作系统习题与解答(含答案)

操作系统习题与解答(含答案)

操作系统习题与解答(含答案)第⼀章操作系统引论⼀、选择题1.在计算机系统中配置操作系统的主要⽬的是(),操作系统的主要功能是管理计算机系统中的(),其中包括()管理和()管理,以及设备管理和⽂件管理。

这⾥的()管理主要是对进程进⾏管理。

(1)A.增强计算机系统的功能;B.为了使⽤系统的资源;C.提⾼系统的运⾏速度;D.提⾼系统使⽤效率,合理地组织系统的⼯作流程,以提⾼系统吞吐量。

(2)A.程序和数据;B.进程;C.资源;D.作业;E.任务。

(3)(4)A.存储器;B.虚拟存储器;C.运算器;D.处理机;E.控制器。

2.操作系统有多种类型:(1)允许多个⽤户以交互⽅式使⽤计算机的操作系统,称为();(2)允许多⽤户将若⼲个作业提交给计算机系统集中处理的操作系统称为();(3)在()的控制下,计算机系统能及时处理由过程控制反馈的数据,并做出响应。

A.批处理操作系统;B.分时操作系统;C.实时操作系统;D.微机操作系统;E.多处理机操作系统。

3.在下列性质中,哪⼀个不是分时系统的特征。

()A.交互性B.多路性C.成批性D.独占性4.实时操作系统追求的⽬标是()。

A.⾼吞吐率B.充分利⽤内存C.快速响应D.减少系统开销5. 现代操作系统的两个基本特征是()和资源共享A.多道程序设计B.中断处理C.程序的并发执⾏D.实现分时与实时处理6.引⼊多道程序的⽬的在于()。

A.有利于代码共享,减少主、辅存信息交换量。

B.提⾼实时响应速度。

C.充分利⽤CPU,减少CPU等待时间D.充分利⽤存储器7.操作系统是⼀组().A.⽂件管理程序B.中断处理程序C.资源管理程序D.设备管理程序8.()不是操作系统关⼼的主要问题.A.管理计算机裸机B.设计、提供⽤户程序与计算机硬件系统的界⾯C.管理计算机系统资源D.⾼级程序设计语⾔的编译器9.⽤户在⼀次计算机过程中,或者⼀次事物处理中,要求计算机完成所做的⼯作的集合,这是指().A.进程B.程序C.作业D.系统调⽤10.订购机票系统处理各⾃各个终端的服务请求,处理后通过终端回答⽤户,所以它是⼀个()。

操作系统课后习题总结(清华大学出版社)

操作系统课后习题总结(清华大学出版社)

习题二参考答案4、答:在生产者—消费者问题中,Producer进程中P(empty)和P(mutex)互换先后次序。

先执行P(mutex),假设成功,生产者进程获得对缓冲区的访问权,但如果此时缓冲池已满,没有空缓冲区可供其使用,后续的P(empty)原语没有通过,Producer阻塞在信号量empty 上,而此时mutex已被改为0,没有恢复成初值1。

切换到消费者进程后,Consumer进程执行P(full)成功,但其执行P(mutex)时由于Producer正在访问缓冲区,所以不成功,阻塞在信号量mutex上。

生产者进程和消费者进程两者均无法继续执行,相互等待对方释放资源,会产生死锁。

在生产者和消费者进程中,V操作的次序无关紧要,不会出现死锁现象。

5、答:6、答:设信号量sp用于控制对盘子的互斥操作,信号量sg1用于计数,表示盘子中的苹果数目,信号量sg2用于计数,表示盘子中的桔子数目。

Semaphore sp=1,sg1=0,sg2=0dad(){while(1){ prepare an apple;p(sp);put an apple on the plate;v(sg2);}}mom(){while(1){prepare an orange;p(sp);put an orange on the plate;v(sg1);}}son(){while(1){p(sg1);take an orange from the plate;v(sg);eat the orange;}}daughter(){while(1){p(sg2);take an apple from the plate;v(sg);eat the apple;}}7、答:为了使写者优先,在原来的读优先算法基础上增加一个初值为1的信号量S,使得当至少有一个写者准备访问共享对象时,它可使后续的读者进程等待写完成;初值为0的整型变量writecount,用来对写者进行计数;初值为1的互斥信号量wmutex,用来实现多个写者对writecount的互斥访问。

操作系统-第3章习题解析

操作系统-第3章习题解析

操作系统-第3章习题解析第三章习题解析1.⾼级调度不低级调度的主要任务是什么?为什么要引⼊中级调度?答:⾼级调度的主要任务是根据某种算法,把外存上处于后备队列中的那些作业调⼊内存。

低级调度是保存处理机的现场信息,按某种算法先取进程,再把处理器分配给进程。

引⼊中级调度的主要⽬的是为了提⾼内存利⽤率和系统吞吐量。

使那些暂时不能运⾏的进程不再占⽤内存资源,将它们调⾄外存等待,把进程状态改为就绪驻外存状态或挂起状态。

2.处理机调度算法的共同⽬标是什么?批处理系统的调度⽬标⼜是什么?答:共同⽬标:资源利⽤率,公平性,平衡性,策略强制执⾏。

批处理系统的调度⽬标:平均周转时间短,系统吞吐量⾼,处理机利⽤率⾼。

3.何谓作业、作业步和作业流?答:作业包含通常的程序和数据,还配有作业说明书。

系统根据该说明书对程序的运⾏进⾏控制。

批处理系统中是以作业为基本单位从外存调⼊内存。

作业步是指每个作业运⾏期间都必须经过若⼲个相对独⽴相互关联的顺序加⼯的步骤。

作业流是指若⼲个作业进⼊系统后依次存放在外存上形成的输⼊作业流;在操作系统的控制下,逐个作业进程处理,于是形成了处理作业流。

4.在什么情况下需要使⽤作业控制块JCB?其中包含了哪些内容?答:每当作业进⼊系统时,系统便为每个作业建⽴⼀个作业控制块JCB,根据作业类型将它插⼊到相应的后备队列中。

JCB包含的内容通常有:1)作业标识 2)⽤户名称 3)⽤户账户 4)作业类型(CPU繁忙型、I/0芳名型、批量型、终端型) 5)作业状态 6)调度信息(优先级、作业已运⾏) 7)资源要求 8)进⼊系统时间 9)、开始处理时间 10)作业完成时间 11)作业退出时间 12)资源使⽤情况等5.在作业调度中应如何确定接纳多少个作业和接纳哪些作业?答:作业调度每次接纳进⼊内存的作业数,取决于多道程序度。

应将哪些作业从外存调⼊内存,取决于采⽤的调度算法。

最简单的是先来服务调度算法,较常⽤的是短作业优先调度算法和基于作业优先级的调度算法。

最新操作系统第九版部分课后作业习题答案分析解析

最新操作系统第九版部分课后作业习题答案分析解析

CHAPTER 9 Virtual Memory Practice Exercises9.1 Under what circumstances do page faults occur? Describe the actions taken by the operating system when a page fault occurs.Answer:A page fault occurs when an access to a page that has not beenbrought into main memory takes place. The operating system verifiesthe memory access, aborting the program if it is invalid. If it is valid, a free frame is located and I/O is requested to read the needed page into the free frame. Upon completion of I/O, the process table and page table are updated and the instruction is restarted.9.2 Assume that you have a page-reference string for a process with m frames (initially all empty). The page-reference string has length p;n distinct page numbers occur in it. Answer these questions for any page-replacement algorithms:a. What is a lower bound on the number of page faults?b. What is an upper bound on the number of page faults?Answer:a. nb. p9.3 Consider the page table shown in Figure 9.30 for a system with 12-bit virtual and physical addresses and with 256-byte pages. The list of freepage frames is D, E, F (that is, D is at the head of the list, E is second, and F is last).Convert the following virtual addresses to their equivalent physical addresses in hexadecimal. All numbers are given in hexadecimal. (A dash for a page frame indicates that the page is not in memory.)• 9EF• 1112930 Chapter 9 Virtual Memory• 700• 0FFAnswer:• 9E F - 0E F• 111 - 211• 700 - D00• 0F F - EFF9.4 Consider the following page-replacement algorithms. Rank these algorithms on a five-point scale from “bad” to “perfect” according to their page-fault rate. Separate those algorithms that suffer from Belady’s anomaly from those that do not.a. LRU replacementb. FIFO replacementc. Optimal replacementd. Second-chance replacementAnswer:Rank Algorithm Suffer from Belady’s anomaly1 Optimal no2 LRU no3 Second-chance yes4 FIFO yes9.5 Discuss the hardware support required to support demand paging. Answer:For every memory-access operation, the page table needs to be consulted to check whether the corresponding page is resident or not and whether the program has read or write privileges for accessing the page. These checks have to be performed in hardware. A TLB could serve as a cache and improve the performance of the lookup operation.9.6 An operating system supports a paged virtual memory, using a central processor with a cycle time of 1 microsecond. It costs an additional 1 microsecond to access a page other than the current one. Pages have 1000 words, and the paging device is a drum that rotates at 3000 revolutions per minute and transfers 1 million words per second. The following statistical measurements were obtained from the system:• 1 percent of all instructions executed accessed a page other than the current page.•Of the instructions that accessed another page, 80 percent accesseda page already in memory.Practice Exercises 31•When a new page was required, the replaced page was modified 50 percent of the time.Calculate the effective instruction time on this system, assuming that the system is running one process only and that the processor is idle during drum transfers.Answer:effective access time = 0.99 × (1 sec + 0.008 × (2 sec)+ 0.002 × (10,000 sec + 1,000 sec)+ 0.001 × (10,000 sec + 1,000 sec)= (0.99 + 0.016 + 22.0 + 11.0) sec= 34.0 sec9.7 Consider the two-dimensional array A:int A[][] = new int[100][100];where A[0][0] is at location 200 in a paged memory system with pages of size 200. A small process that manipulates the matrix resides in page 0 (locations 0 to 199). Thus, every instruction fetch will be from page 0. For three page frames, how many page faults are generated bythe following array-initialization loops, using LRU replacement andassuming that page frame 1 contains the process and the other twoare initially empty?a. for (int j = 0; j < 100; j++)for (int i = 0; i < 100; i++)A[i][j] = 0;b. for (int i = 0; i < 100; i++)for (int j = 0; j < 100; j++)A[i][j] = 0;Answer:a. 5,000b. 509.8 Consider the following page reference string:1, 2, 3, 4, 2, 1, 5, 6, 2, 1, 2, 3, 7, 6, 3, 2, 1, 2, 3, 6.How many page faults would occur for the following replacement algorithms, assuming one, two, three, four, five, six, or seven frames? Remember all frames are initially empty, so your first unique pages will all cost one fault each.•LRU replacement• FIFO replacement•Optimal replacement32 Chapter 9 Virtual MemoryAnswer:Number of frames LRU FIFO Optimal1 20 20 202 18 18 153 15 16 114 10 14 85 8 10 76 7 10 77 77 79.9 Suppose that you want to use a paging algorithm that requires a referencebit (such as second-chance replacement or working-set model), butthe hardware does not provide one. Sketch how you could simulate a reference bit even if one were not provided by the hardware, or explain why it is not possible to do so. If it is possible, calculate what the cost would be.Answer:You can use the valid/invalid bit supported in hardware to simulate the reference bit. Initially set the bit to invalid. O n first reference a trap to the operating system is generated. The operating system will set a software bit to 1 and reset the valid/invalid bit to valid.9.10 You have devised a new page-replacement algorithm that you thinkmaybe optimal. In some contorte d test cases, Belady’s anomaly occurs. Is the new algorithm optimal? Explain your answer.Answer:No. An optimal algorithm will not suffer from Belady’s anomaly because —by definition—an optimal algorithm replaces the page that will notbe used for the long est time. Belady’s anomaly occurs when a pagereplacement algorithm evicts a page that will be needed in the immediatefuture. An optimal algorithm would not have selected such a page.9.11 Segmentation is similar to paging but uses variable-sized“pages.”Definetwo segment-replacement algorithms based on FIFO and LRU pagereplacement schemes. Remember that since segments are not the samesize, the segment that is chosen to be replaced may not be big enoughto leave enough consecutive locations for the needed segment. Consider strategies for systems where segments cannot be relocated, and thosefor systems where they can.Answer:a. FIFO. Find the first segment large enough to accommodate the incoming segment. If relocation is not possible and no one segmentis large enough, select a combination of segments whose memoriesare contiguous, which are “closest to the first of the list” andwhich can accommodate the new segment. If relocation is possible, rearrange the memory so that the firstNsegments large enough forthe incoming segment are contiguous in memory. Add any leftover space to the free-space list in both cases.Practice Exercises 33b. LRU. Select the segment that has not been used for the longestperiod of time and that is large enough, adding any leftover spaceto the free space list. If no one segment is large enough, selecta combination of the “oldest” segments that are contiguous inmemory (if relocation is not available) and that are large enough.If relocation is available, rearrange the oldest N segments to be contiguous in memory and replace those with the new segment.9.12 Consider a demand-paged computer system where the degree of multiprogramming is currently fixed at four. The system was recently measured to determine utilization of CPU and the paging disk. The results are one of the following alternatives. For each case, what is happening? Can the degree of multiprogramming be increased to increase the CPU utilization? Is the paging helping?a. CPU utilization 13 percent; disk utilization 97 percentb. CPU utilization 87 percent; disk utilization 3 percentc. CPU utilization 13 percent; disk utilization 3 percentAnswer:a. Thrashing is occurring.b. CPU utilization is sufficiently high to leave things alone, and increase degree of multiprogramming.c. Increase the degree of multiprogramming.9.13 We have an operating system for a machine that uses base and limit registers, but we have modified the machine to provide a page table.Can the page tables be set up to simulate base and limit registers? How can they be, or why can they not be?Answer:The page table can be set up to simulate base and limit registers provided that the memory is allocated in fixed-size segments. In this way, the base of a segment can be entered into the page table and the valid/invalid bit used to indicate that portion of the segment as resident in the memory. There will be some problem with internal fragmentation.9.27.Consider a demand-paging system with the following time-measured utilizations:CPU utilization 20%Paging disk 97.7%Other I/O devices 5%Which (if any) of the following will (probably) improve CPU utilization? Explain your answer.a. Install a faster CPU.b. Install a bigger paging disk.c. Increase the degree of multiprogramming.d. Decrease the degree of multiprogramming.e. Install more main memory.f. Install a faster hard disk or multiple controllers with multiple hard disks.g. Add prepaging to the page fetch algorithms.h. Increase the page size.Answer: The system obviously is spending most of its time paging, indicating over-allocationof memory. If the level of multiprogramming is reduced resident processeswould page fault less frequently and the CPU utilization would improve. Another way toimprove performance would be to get more physical memory or a faster paging drum.a. Get a faster CPU—No.b. Get a bigger paging drum—No.c. Increase the degree of multiprogramming—No.d. Decrease the degree of multiprogramming—Yes.e. Install more main memory—Likely to improve CPU utilization as more pages canremain resident and not require paging to or from the disks.f. Install a faster hard disk, or multiple controllers with multiple hard disks—Also animprovement, for as the disk bottleneck is removed by faster response and morethroughput to the disks, the CPU will get more data more quickly.g. Add prepaging to the page fetch algorithms—Again, the CPU will get more datafaster, so it will be more in use. This is only the case if the paging action is amenableto prefetching (i.e., some of the access is sequential).h. Increase the page size—Increasing the page size will result in fewer page faults ifdata is being accessed sequentially. If data access is more or less random, morepaging action could ensue because fewer pages can be kept in memory and moredata is transferred per page fault. So this change is as likely to decrease utilizationas it is to increase it.10.1、Is disk scheduling, other than FCFS scheduling, useful in asingle-userenvironment? Explain your answer.Answer: In a single-user environment, the I/O queue usually is empty. Requests generally arrive from a single process for one block or for a sequence of consecutive blocks. In these cases, FCFS is an economical method of disk scheduling. But LOOK is nearly as easy to program and will give much better performance when multiple processes are performing concurrent I/O, such as when aWeb browser retrieves data in the background while the operating system is paging and another application is active in the foreground.10.2.Explain why SSTF scheduling tends to favor middle cylindersover theinnermost and outermost cylinders.The center of the disk is the location having the smallest average distance to all other tracks.Thus the disk head tends to move away from the edges of the disk.Here is another way to think of it.The current location of the head divides the cylinders into two groups.If the head is not in the center of the disk and a new request arrives,the new request is more likely to be in the group that includes the center of the disk;thus,the head is more likely to move in that direction.10.11、Suppose that a disk drive has 5000 cylinders, numbered 0 to 4999. The drive is currently serving a request at cylinder 143, and the previous request was at cylinder 125. The queue of pending requests, in FIFO order, is86, 1470, 913, 1774, 948, 1509, 1022, 1750, 130Starting from the current head position, what is the total distance (in cylinders) that the disk arm moves to satisfy all the pending requests, for each of the following disk-scheduling algorithms?a. FCFSb. SSTFc. SCANd. LOOKe. C-SCANAnswer:a. The FCFS schedule is 143, 86, 1470, 913, 1774, 948, 1509, 1022, 1750, 130. The total seek distance is 7081.b. The SSTF schedule is 143, 130, 86, 913, 948, 1022, 1470, 1509, 1750, 1774. The total seek distance is 1745.c. The SCAN schedule is 143, 913, 948, 1022, 1470, 1509, 1750, 1774, 4999, 130, 86. The total seek distance is 9769.d. The LOOK schedule is 143, 913, 948, 1022, 1470, 1509, 1750, 1774, 130, 86. The total seek distance is 3319.e. The C-SCAN schedule is 143, 913, 948, 1022, 1470, 1509, 1750, 1774, 4999, 86, 130. The total seek distance is 9813.f. (Bonus.) The C-LOOK schedule is 143, 913, 948, 1022, 1470, 1509, 1750, 1774, 86, 130. The total seek distance is 3363.12CHAPTERFile-SystemImplementationPractice Exercises12.1 Consider a file currently consisting of 100 blocks. Assume that the filecontrol block (and the index block, in the case of indexed allocation)is already in memory. Calculate how many disk I/O operations are required for contiguous, linked, and indexed (single-level) allocation strategies, if, for one block, the following conditions hold. In the contiguous-allocation case, assume that there is no room to grow atthe beginning but there is room to grow at the end. Also assume thatthe block information to be added is stored in memory.a. The block is added at the beginning.b. The block is added in the middle.c. The block is added at the end.d. The block is removed from the beginning.e. The block is removed from the middle.f. The block is removed from the end.Answer:The results are:Contiguous Linked Indexeda. 201 1 1b. 101 52 1c. 1 3 1d. 198 1 0e. 98 52 0f. 0 100 012.2 What problems could occur if a system allowed a file system to be mounted simultaneously at more than one location?Answer:4344 Chapter 12 File-System ImplementationThere would be multiple paths to the same file, which could confuse users or encourage mistakes (deleting a file with one path deletes thefile in all the other paths).12.3 Wh y must the bit map for file allocation be kept on mass storage, ratherthan in main memory?Answer:In case of system crash (memory failure) the free-space list would notbe lost as it would be if the bit map had been stored in main memory.12.4 Consider a system that supports the strategies of contiguous, linked, and indexed allocation. What criteria should be used in deciding which strategy is best utilized for a particular file?Answer:•Contiguous—if file is usually accessed sequentially, if file isrelatively small.•Linked—if file is large and usually accessed sequentially.• Indexed—if file is large and usually accessed randomly.12.5 One problem with contiguous allocation is that the user must preallocate enough space for each file. If the file grows to be larger than thespace allocated for it, special actions must be taken. One solution to this problem is to define a file structure consisting of an initial contiguous area (of a specified size). If this area is filled, the operating system automatically defines an overflow area that is linked to the initial contiguous area. If the overflow area is filled, another overflow areais allocated. Compare this implementation of a file with the standard contiguous and linked implementations.Answer:This method requires more overhead then the standard contiguousallocation. It requires less overheadthan the standard linked allocation. 12.6 How do caches help improve performance? Why do systems not use more or larger caches if they are so useful?Answer:Caches allow components of differing speeds to communicate moreefficiently by storing data from the slower device, temporarily, ina faster device (the cache). Caches are, almost by definition, more expensive than the device they are caching for, so increasing the numberor size of caches would increase system cost.12.7 Why is it advantageous for the user for an operating system todynamically allocate its internal tables? What are the penalties to the operating system for doing so?Answer:Dynamic tables allow more flexibility in system use growth — tablesare never exceeded, avoiding artificial use limits. Unfortunately, kernelstructures and code are more complicated, so there is more potentialfor bugs. The use of one resource can take away more system resources (by growing to accommodate the requests) than with static tables.Practice Exercises 4512.8 Explain how the VFS layer allows an operating system to support multiple types of file systems easily.Answer:VFS introduces a layer of indirection in the file system implementation.In many ways, it is similar to object-oriented programming techniques. System calls can be made generically (independent of file system type). Each file system type provides its function calls and data structuresto the VFS layer. A system call is translated into the proper specific functions for the target file system at the VFS layer. The calling program has no file-system-specific code, and the upper levels of the system callst ructures likewise are file system-independent. The translation at the VFS layer turns these generic calls into file-system-specific operations.。

计算机操作系统课后习题答案解析张尧学

计算机操作系统课后习题答案解析张尧学

第一章绪论1.什么是操作系统的基本功能?答:操作系统的职能是管理和控制汁算机系统中的所有硬、软件资源,合理地组织计算机工作流程,并为用户提供一个良好的工作环境和友好的接口。

操作系统的基本功能包括:处理机管理、存储管理、设备管理、信息管理(文件系统管理)和用户接口等。

2.什么是批处理、分时和实时系统?各有什么特征?答:批处理系统(batchprocessingsystem):操作员把用户提交的作业分类,把一批作业编成一个作业执行序列,由专门编制的监督程序(monitor)自动依次处理。

其主要特征是:用户脱机使用计算机、成批处理、多道程序运行。

分时系统(timesharingoperationsystem):把处理机的运行时间分成很短的时间片,按时间片轮转的方式,把处理机分配给各进程使用。

其主要特征是:交互性、多用户同时性、独立性。

实时系统(realtimesystem):在被控对象允许时间范围内作出响应。

其主要特征是:对实时信息分析处理速度要比进入系统快、要求安全可靠、资源利用率低。

3.多道程序(multiprogramming)和多重处理(multiprocessing)有何区别?答;多道程序(multiprogramming)是作业之间自动调度执行、共享系统资源,并不是真正地同时值行多个作业;而多重处理(multiprocessing)系统配置多个CPU,能真正同时执行多道程序。

要有效使用多重处理,必须采用多道程序设计技术,而多道程序设计原则上不一定要求多重处理系统的支持。

6.设计计算机操作系统时与那些硬件器件有关运算器、控制器、存储器、输入设备、输出设备第二章作业管理和用户接口2.作业由哪几部分组成?各有什么功能?答:作业由三部分组成:程序、数据和作业说明书。

程序和数据完成用户所要求的业务处理工作,作业说明书则体现用户的控制意图。

3.作业的输入方式有哪几种?各有何特点答:作业的输入方式有5种:联机输入方式、脱机输入方式、直接耦合方式、SPOOLING(Simultaneous Peripheral OperationsOnline)系统和网络输入方式,各有如下特点:(1)联机输入方式:用户和系统通过交互式会话来输入作业。

操作系统习题集(南京晓庄学院操作系统习题答案)解析

操作系统习题集(南京晓庄学院操作系统习题答案)解析

操作系统基础习题解析及实验指导第一篇操作系统基础知识点及习题解答该部分罗列操作系统基础各章节的学习要点,指出学习的重点和难点,在回顾相关知识点的基础上,对典型习题进行分析和解答。

第一章操作系统引论本章学习要点【1】掌握操作系统的概念与作用【2】掌握操作系统的基本类型与特点【3】掌握操作系统的特征与功能【4】深入领会多道程序设计技术本章学习难点【1】多道程序设计技术【2】操作系统的特征知识点回顾一. 操作系统的概念一个完整的计算机系统由计算机硬件系统和计算机软件系统两部分组成。

操作系统是配置在计算机硬件上的第一层软件,是对硬件系统功能的第一次扩充。

图1-1 计算机系统的层次图1.操作系统(Operating System,简称OS)的作用(1)OS作为用户与计算机硬件系统之间的接口OS处于用户与计算机硬件系统之间,用户通过OS来使用计算机系统。

或者说,用户在OS 的帮助下能够方便、快捷、安全、可靠地操纵计算机硬件和运行自己的程序。

(2)OS作为计算机系统资源的管理者这是广为流行的一个关于OS作用的观点。

在一个计算机系统中,通常都包含了各种各样的硬件和软件资源。

归纳起来可将资源分为四类:处理器、存储器、I/O设备以及信息(数据和程序)。

OS的主要功能正是针对这四类资源进行有效的管理。

(3)OS用作扩充机器对于一台完全没有软件配置的计算机系统(裸机),即使功能再强,也必定难于使用。

OS在第 1 页共102 页裸机上分别覆盖I/O设备管理软件、文件管理软件等,此时用户所看到的机器,将是一台比裸机功能更强、使用更方便的机器。

通常把覆盖了软件的机器称为扩充机器或虚机器。

在计算机系统上覆盖上一层软件后,系统功能便增强一级。

由于OS自身包含了若干层软件,因此当在裸机上覆盖上OS后,便可获得一台功能显著增强,使用极为方便的多层扩充机器或多层虚机器。

2.操作系统的概念操作系统是一组控制和管理计算机硬件和软件资源、合理组织计算机的工作流程,方便用户使用的程序的集合。

(完整word版)计算机操作系统典型例题解析之一

(完整word版)计算机操作系统典型例题解析之一

计算机操作系统典型例题解析之一【例1】操作系统是对()进行管理的软件.A、软件B、硬件C、计算机资源D、应用程序分析:操作系统是系统的一个系统软件,不但管理计算机系统的硬件资源,还管理软件资源,是整个计算机系统的硬、软件资源的总指挥部,所以本题的答案是C.【例2】从用户的观点看,操作系统是()A、用户与计算机硬件之间的接口B、控制和管理计算机资源的软件C、合理地组织计算机工作流程的软件D、计算机资源的管理者分析:研究操作系统有多种观点,有软件的观点、计算机系统资源管理的观点、进程的观点、虚机器观点、服务提供者观点以及用户的观点。

从用户的观点看,操作系统是用户与计算机硬件系统之间接口。

所以本题的答案是A。

【例3】如果分时操作系统的时间片一定,那么( ),则响应时间越长。

A、用户数越少B、用户数越多C、内存越少D、内存越多分析:在分时系统中采用了分时技术,即把处理机的时间划分成很短的时间片(如几百毫秒),轮流地分配给各个终端作业使用。

若在分配给它的时间片内,作业没有执行完,它必须将CPU交给下一个作业使用,并等下一轮得到CPU时再继续执行。

系统的响应时间和用户的数量成反比,即用户数越多,响应时间越长。

所以本题的答案是B。

【例4】并发和是操作系统的两个最基本的特征,两者之间互为存在条件。

分析:操作系统共有四个主要特征:并发、共享、虚拟和异步性。

其中并发和共享是操作系统最基本的特征。

一方面,资源的共享以程序(进程)的并发执行为条件,若系统不允许程序并发执行,自然不存在资源共享问题;另一方面,若系统不能对资源共享实施有效管理,协调好诸进程对共享资源的访问,也必将影响程序的并发执行,甚至根本无法并发执行。

所以本题的答案是:共享。

【例5】如果操作系统在用户提交作业后,不提供交互能力,它所追求的是计算机资源的高利用率,大吞吐量和作业流程的自动化,则属于类型;如果操作系统具有很强的交互性,可同时供多个用户使用,但时间响应不太及时,则属于类型;如果操作系统可靠性高,时间响应及时,但仅有简单的交互能力则属于类型。

操作系统练习题

操作系统练习题


A. 频繁地出页入页的现象
B. 分配的页面数增加,缺页中断的次数也可能增加
C. 进程交换的信息量过大导致系统工作区不足
D. 分配给进程的内存空间不足使进程无法正常工作
26.磁盘存取时间包括寻道的时间、定位扇区的时间以及读写数
据的时间,若磁盘的转速提高一倍,则

A. 平均存取时间减少
B. 平均寻道时间减少
11.在实现进程通信时会导致调用Send原语的进程被设 置成“等信箱”状态的原因是____。 A.指定的信箱不存在
B.调用时没有设置参数 C.指定的信箱中无信件
D.指定的信箱中存满了信件
.
4
第六部分 试题分析
12. 段表如下:
段号 基址 长度 …… 0 1300 390 …… 1 400 780 …… 2 2900 1000 …… 3 230 30 ……
(1)A.可直接阻塞 B.不可直接阻塞
C.释放其它进程已占有的资源,并撤消相关进程
D.释放申请进程已占有的资源,并撤消该进程
(2)A.申请资源进程 B.系统进程 C.用户进程 D.设备管理程序
(3)A.会导致死锁
B.不会导致死锁
C.采用的是资源静态分配法
D.采用的是资源顺序分配法
.
15
第六部分 试题分析
微内核的操作系统(OS)结构如下图所示,图中①和 ②分别工作在 (1) 方式下,与传统的OS结构模式相 比,采用微内核的OS结构模式的优点是提高了系统的 灵活性、可扩充性, (2) 。
客户进程 客户进程
进程 服务器
终端
文件
服务器 … 服务器
存储器 服务器

请求
核心
回答

操作系统习题及解答

操作系统习题及解答

第一章绪论一、单项选择题1、在下列选择中,(D)不是操作系统关心的主要问题。

A、管理计算机裸机B、设计、提供用户程序计算机硬件系统的界面C、管理计算机系统资源D、高级程序设计语言的编译器2、批处理系统的主要缺点是(C)。

A、CPU利用率低B、不能并发执行C、缺少交互性D、以上都不是3、多道程序设计是指(D)。

A、在实时系统中并发运行多个程序B、在分布系统中同一时刻运行多个程序C、在一台处理器上同一时刻运行多个程序D、在一台处理器上并发运行多个程序4、以下最早的OS是(D)。

A、分布式系统B、实时系统C、分时系统D、批处理系统5、批处理OS提高了计算机系统的工作效率,但(D)。

A、不能自动选择作业执行B、无法协调资源分配C、不能缩短作业执行时间D、在作业执行时用户不能直接干预6、分时OS追求的目标是(C)。

A、高吞吐量B、充分利用内存C、快速响应D、减少系统开销7、多道批处理系统提高了计算机系统的资源利用率,同时(B)A、减少了各作业的执行时间B、增加了作业吞吐量C、减少了作业的吞吐量D、减少了部分作业的执行时间8、设计实时OS时,(B)不是主要追求目标。

A、安全可靠B、资源利用率C、及时响应D、快速处理9、现代OS的两个基本特征是(C)和资源共享。

A、多道程序设计B、中断处理C、程序的并发执行D、实现分时与时实处理10、OS中采用多道程序设计技术提高了CPU和外部设备的(A)。

A、利用率B、可靠性C、稳定性D、兼容性11、OS的基本类型有(B)A、批处理系统、分时系统及多任务系统B、实时OS、批处理OS及分时OSC、单用户系统、多用户系统及批处理系统D、实时系统、分时系统和多用户系统12、为了使系统中所有的用户都能得到及时响应,该OS应该是(B)A、多道批处理系统B、分时系统C、实时系统D、网络系统13、从下列叙述中选出正确的叙述(A)。

A、OS的不确定性是指在OS控制下的多个作业执行顺序和每个作业的执行时间是不确定的。

《操作系统实训(Linux)——习题解答、例题解析、实验指导》-王红-电子教..

《操作系统实训(Linux)——习题解答、例题解析、实验指导》-王红-电子教..

第2章进程管理进程是操作系统中非常重要的概念,进程管理是操作系统最为重要的功能之一。

12.1 基本结构图2进程管理基本知识结构图(见下页)进程管理进程的概念进程的描述进程控制进程的创建与终止进程通信线程程序的顺序执行程序的并发执行进程的概念及特征进程的状态及转换Linux进程的状态Linux进程的PCBLinux进程的系统调用进程的阻塞与唤醒进程的同步与互斥临界资源锁机制信号量进程控制块信号量的应用及同步举例进程的同步与互斥进程控制块的组织方式共享存储器机制消息传递机制管道通信机制信号通信机制线程的概念线程的特点2.2 知识点2.2.1 进程的概念1.程序的顺序执行我们把一个具有独立功能的程序独占处理机,直到最后结束的过程称为程序的顺序执行。

程序顺序执行时的特征为:顺序性、封闭性和可再现性。

4顺序性是指,程序执行时严格按照程序的语句或指令的顺序执行。

封闭性是指,程序执行的结果只有程序本身才可以改变,而与其它外界因素无关。

可再现性是指,只要输入的初始条件相同,则无论何时重复执行该程序,结果都是相同的。

52.程序的并发执行所谓程序的并发性,是指多道程序在同一时间间隔内同时发生。

63.进程的概念及特征(1)进程的概念进程是操作系统中最基本、最重要的概念之一。

进程可以如下定义:进程是程序的一次执行。

进程是可以和别的进程并发执行的计算。

进程就是一个程序在给定活动空间和初始条件下,在一个处理机上的执行过程。

进程是程序在一个数据集合上的运行过程,它是系统进行资源分配和调度的一个独立单位。

进程是动态的,有生命周期的活动。

内核可以创建一个进程,最终将由内核终止该进程使其消亡。

7(2)进程与程序的区别进程和程序是两个完全不同的概念,但又有密切的联系。

8(3)进程的特征进程具有动态性、并发性、独立性、异步性及结构性的特征。

4.进程的状态及转换在操作系统中,进程通常至少有三种基本状态:就绪状态、执行状态和阻塞状态。

910程执行完成或撤消阻塞状态就绪状态进程创建调度用片间时进等待某事件发生如I/O 请求外部事件发生进程的基本状态及转换图完5.Linux进程的状态Linux系统内核在进程控制块中用state成员描述进程当前的状态,并明确定义了5种进程状态。

操作系统原理习题解析

操作系统原理习题解析
分层式结构中各个模块之间是有序的将各个模块按功能的调用次序安排成若干层各层之间的模块不能像单内核结构那样通过接口毫无规则地相互依赖相互调用而只能是单向依赖或单向调用即每层中的模块只能调用较低层模块提供的功能和服务
第1章 引 论
一. 单项选择题解析 1. A。2. C。3. D。4. A。5. A。6. C。7. C。8. C。9. C。10. D。11. D。12. D。13. C。14. D。 15. B。16. C。17. D。18. D。19. C。20. B。21. C。22. B。 二. 判断题解析 1. 错误 2. 错误 3. 错误 4. 错误 5. 错误 6. 错误 7. 正确。8. 错误。9. 错误。10. 错误。 11. 正确。12. 错误。13. 正确。14. 错误。15. 错误 16. 正确。17. 错误。18. 错误 19. 正 确。20. 正确。21. 正确。 三. 简答题解析 1. 操作系统具有以下 4 个基本特征: (1)并发性。并发性是指两个或两个以上的事件或活动在同一时间间隔内发生。也即, 宏观上在一段时间内有多道程序在同时运行,微观上这些程序是在交替执行。 (2)共享性。因程序的并发执行而使系统中的软、硬件资源不再为某个程序所独占,而 是由多个程序共同使用(共享) 。 (3)虚拟性。多道程序设计技术把一台物理计算机虚拟为多台逻辑上的计算机,使得每 个用户都感觉是“独占”计算机。 (4)不确定性。多道程序系统中各程序之间存在着直接或间接的联系,并且受资源等因 素的限制,程序的推进速度受到其他程序的影响。这样,程序运行的顺序、程序完成的时间 以及程序运行的结果都是不确定的。 2 多道程序设计技术是指把多个程序同时存入内存并允许它们交替执行和共享系统中的 各类资源;当一道程序因某种原因(如 I/O 请求)而暂停执行时,CPU 立即转去执行另一道 程序。多道程序设计技术的主要特点是:多道、宏观上并行、微观上串行。多道是指计算机 内存中同时存放多道相互独立的程序; 宏观上并行是指同时进入系统中的多道程序都处于运 行的过程中; 微观上串行是指在单 CPU 环境中, 内存中的多道程序轮流占用 CPU 交替执行。 3. 要保证多道程序的正常运行,在技术上需要解决如下问题: (1)在多道程序之间应如何分配 CPU,使得 CPU 既能满足各程序运行的需要,又能有 较高的利用率。此外,一旦将 CPU 分配给某程序后,应何时回收。 (2)如何为每道程序分配必要的内存空间,使它们各得其所但又不会因相互重叠而丢失 信息;此外,还要防止因某道程序出现异常情况而破坏其他程序。 (3)系统中可能有多种类型的 I/O 设备供多道程序共享,应如何分配这些 I/O 设备,如 何做到既方便用户对设备的使用,又能提高设备的利用率。 (4)在现代计算机系统中通常都存放着大量的程序和数据,应如何组织它们才便于用户 使用并保证数据的安全性和一致性。 (5)系统中的各种应用程序有的属于计算型、有的属于 I/O 型,有些既重要又紧迫、有 些又要求系统能及时响应,这时系统应如何组织这些程序(作业)的工作流程。 实际上,这些问题的全体就是操作系统的核心内容。 4. 在单道程序环境下,由于程序独占全机软、硬件资源且完全是在一个封闭环境中运行, 所以如果使用相同的输入,则多次运行的结果必然相同。 引入多道程序技术后,由于多道程序共享全机软、硬件资源,即各程序之间存在着直接 或间接的联系,并受资源等因素的制约;此时程序的运行就不是在一个封闭的环境下,而要 受到其他程序和系统资源的影响, 这会引起程序运行的结果、 程序执行的顺序和完成的时间 都不确定。此外,在多道程序环境下,外部设备的中断、输入输出的请求等出现的时间都是 不确定的。 这些不确定因素给操作系统设计带来了很大的复杂性。 对于程序执行结果的不确 定是绝对不允许的, 这是操作系统必须解决的主要问题; 而程序执行顺序及完成时间的不确

操作系统习题分析

操作系统习题分析

经典生产者—消费者问题
• 设置信号量
– 公用信号量mutex:保证生产者进程和消费者进程之 间的互斥;初值为1,表示没有进程进入临界区 – 私用信号量avail:生产者进程的私用信号量,表示可 用缓冲区数,初值为n – 私用信号量full:消费者进程的私用信号量,表示产品 数目,初值为 0
生产者进程
各程序内部计算和I/O操作的时间
解:多道程序系统中,在处理机调度程序管理下 各程序状态转换的时间关系图如图2所示。
图2 各程序执行与状态转换的时间关系图 单道系统中,三道程序共运行的时间为:
T=60+2+30+2+40+2+50+2+20+2+50+2+70+2+50+2+40+2+30+2+20+2
输入进程R 打印进程P
缓冲区
3.6 进程同步
例,共享一个缓冲区的合作进程
计算进程PC
缓冲区
打印进程PP
计算进程PC :反复地把每次计算结果放入缓冲区Buf中 打印进程PP :将计算进程每次放入缓冲区Buf中的数据 取出,通过打印机打印输出 缓冲区Buf :一次只可放一个数据
Begin Sc,Sp: semaphore; Sp=0; /*信号量Sp,表示缓冲区Buf 是否存放计算结果*/ Sc=1; /*信号量Sc,表示缓冲区Buf 是否为空*/ Cobegin Pc: While (计算未结束); /*计算进程*/ { 计算; P(Sc); /*缓冲区是否为空?若非空,则等待*/ Buf←计算结果; V(Sp); } Pp: While (打印未完成); /*打印进程*/ { P(Sp); /*缓冲区是否为数据?若无,则等待*/ 从缓冲区Buf取数据; V(Sc); 打印数据; } Coend End
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

序管理下各程序状态转换
的时间关系图,并计算出
完成这三道程序共花多少
时间?比单道运行节省了
多少时间?
图1 各程序内部计算和I/O操作的时间
解:多道程序系统中,在处理机调度程序管理下 各程序状态转换的时间关系图如图2所示。
图2 各程序执行与状态转换的时间关系图 单道系统中,三道程序共运行的时间为:
读书;
P(S) 在登记表中查找座位X; 撤消登记信息; 置座位X的标志为空; V(Sn) V(S) end Coend
讨论并分析上述程序:
– 采用指针形式(类似生产者-消费者问题) – 给每个座位设置一个信号量(类似哲学家就餐问
题)
第3章 补充题
3. 桌上有一只盘子,每次只能放入一个水果。爸爸 专向盘中放苹果,妈妈专向盘中放桔子,一个女 儿专等吃盘中的苹果,一个儿子专等吃盘中的桔 子。试用P、V操作写出他们能同步的程序。
输入进程R
处理进程M 打印进程P
缓冲区
3.6 进程同步
例,共享一个缓冲区的合作进程
计算进程PC
缓冲区 打印进程PP
计算进程PC :反复地把每次计算结果放入缓冲区Buf中 打印进程PP :将计算进程每次放入缓冲区Buf中的数据
取出,通过打印机打印输出
缓冲区Buf :一次只可放一个数据
Begin
《操作系统》习题分析
总问题
• 概念要清楚、定义要准确 • 叙述要清楚、具体 • 解题过程要详细 • 有关PV操作的题必须编写程序,给出算法
第1章 补充作业
1、设在内存中有三道程序A、
B和C,并按A、B、C的优
先次序运行,其内部计算
和I/O操作的时间如图1所
示。若处理机调度程序每
次进行程序状态转换的时
• 一个读者一个进程 • 信号量的设置
S:用于读者互斥访问(登记/撤消)登记表,初值为1 Sn:表示空座位数,初值为100
• 每个座位设一个状态位:满/空(类似信箱通讯)
程序
begin S, Sn : Semaphore; S:=1 ; Sn:=100;
Cobegin process Reader i (i=1, 2, …… , n ) begin P(Sn); P(S) ; 选择标志为空的座位X; 登记; 置座位X的标志为满; V(S);
daughter:
son:
Coend end
Repeat P(Sa); 从盘中取出苹果; V(S); 吃苹果;
Until false Repeat
P(So); 从盘中取出桔子; V(S); 吃桔子; Until false
第3章 补充题
4、某大学军训正在进行实弹练习。现有一保管员负责管理 枪支弹药,有A、B两组学生,A组学生每人都有一支枪, B组学生每人都备有足够的子弹,任一学生只要有枪和子 弹就可以进行实弹练习。在打靶场有一个可以放一只枪或 一发子弹的盒子,当盒中无物品时,保管员就可以任意放 一支枪或一发子弹供学生取用。当盒中有学生所需材料时, 每次允许一个学生从中取出自己所需的材料,材料取走后, 保管员再放一件材料。
Pp: Repeat P(Sm); 从缓冲区取出一个记录; V(empty); 打印记录;
Until false Coend end
第3章 进程管理
2.有一阅览室,读者进入时必须先在一张登记表上 进行登记。该表为每一座位列出一个表目,包括 座号、姓名。读者离开时撤消登记信息。阅览室 有100个座位,试问:
Sc,Sp: semaphore; Sp=0; /*信号量Sp,表示缓冲区Buf 是否存放计算结果*/ Sc=1; /*信号量Sc,表示缓冲区Buf 是否为空*/
Cobegin Pc: While (计算未结束); /*计算进程*/ { 计算; P(Sc); /*缓冲区是否为空?若非空,则等待*/ Buf←计算结果;
begin empty, Sr, Sm, Sp : semaphore empty:=1; Sr:=0; Sm:=0 ;
Cobegin Pr: Repeat 从输入设备读一个记录; P(empty); 将记录存入缓冲区; V(Sr); Until false Pm: Repeat P(Sr); 在缓冲区中加工记录; V(Sm); Until false
T=60+2+30+2+40+2+50+2+20+2+50+2+70+2+50+2+40+2+30+2+20+2 =482
多道运行比单道运行节省时间为:482-306=176
第3章 进程管理
• 教材 p83 2、6、7、8、9、10、11、13、14、15
第3章 进程管理
1.设有三个并发进程R、M、P,它们共享一个缓冲 区。R负责从输入设备读信息,每读一个记录后, 就把它存放在缓冲区中;M在缓冲区中加工读入 的记录;P把加工后的记录打印输出。读入的记录 经加工输出后,缓冲区又可存放下一个记录。试 写出它们能正确执行的程序。
V(Sp);
} Pp: While (打印未完成); /*打印进程*/
{ P(Sp); /*缓冲区是否为数据?若无,则等待*/ 从缓冲区Buf取数据;
V(Sc); 打印数据;
}
Coend
End
分析
• 缓冲区是临界资源,必须互斥访问 • 信号量empty:表示缓冲区是否为空,初值为1 • 信号量Sr:进程R是否已输入信息,初值Sr=0 • 信号量Sm:进程M是否已加工信息,初值Sm=0
(1)为描述读者的动作,应编写几个程序, 应该设置几个进程?进程和程序之间的对应关系 如何?
(2)试用P、V操作描述这些进程间的同步 算法。
分析
• 读者动作:登记、读书、撤消 • 座位总数:100 • 登记/撤消都需要在登记表修改信息,一次只能有
一个读者对登记表进行访问 登记表是临界资源,必须互斥访问
分析: • 信号量S:表示盘子是否为空,初值为1 • 信号量So:表示盘中是否有桔子,初值为0 • 信号量Sa:表示盘子是否有苹果,初值为0
程序
begin S, Sa, So : semaphore S=1; Sa=0; So=0; Cobegin father: Repeat P(S); 将苹果放入盘中; V(Sa); Until false mother: Repeat P(S); 将桔子放入盘中; V(So); Until false
相关文档
最新文档