操作系统第五版--精髓与设计概要第7章课后习题答案2
操作系统第七章参考答案
第七章参考答案1、操作系统为用户提供的接口有:作业级接口与程序级接口。
作业级接口:操作系统为用户对作业运行全过程控制提供的功能(1) 联机接口(交互式)(2) 脱机接口程序级接口:系统为用户在程序一级提供有关服务而设置,由一组系统调用命令组成•负责管理和控制运行的程序•并在这些程序与系统控制的资源和提供的服务间实现交互作用•用汇编语言:在程序中直接用系统调用命令•用高级语言:可在编程时使用过程调用语句2、接口包括3部分:一组联机命令,终端处理程序,命令解释程序3、联机命令通常有以下几类:(1)系统访问类,包括Login、Password等命令;(2)磁盘操作类,包括Format,Diskcopy,Diskcomp,Bakeup等命令;(3)文件操作类,包括Type、Copy、Comp、Rename、Del等命令;(4)目录操作类,包括Mkdir、dir、rmdir、tree、chdir等命令;(5)通信类;(6)其它命令(见书P222-223)。
4、I/O重定向—用于I/O操作的设备可以更换(即重定向)而不必改变应用程序。
例如:我们正在调试一个应用程序,可将程序的所有输出送到屏幕;而程序调试后,如果需要将程序的结果进行打印,此时需要将I/O重定向的数据结构—逻辑设备表中的显示终端改为打印机,而不修改程序。
I/O重定向具有很大的使用价值,现已经被广泛应用在各种OS 中。
(在UNIX与DOS中有具体的实现形式,可见P230)。
5、就是把第一个命令的输出作为第二个命令的输入;类似地,又把第二个命令的输出作为第三个命令的输入;这样,就由两条已上的命令形成一条管道。
在DOS与UNIX中用“|”作为管道符号。
其格式为 command1| command2| command3|…. commandn 6、见书P22311、COPY命令13、系统调用方式与程序中一般的调用方式的相同点:(1)改变指令流程;(2)重复执行和公用;(3)改变指令流程后需要返回原处系统调用方式与程序中一般的调用方式的不同点:(1)运行在不同的系统状态:一般过程调用,其调用程序和被调用程序都运行在相同状态(核心态或用户态);系统调用:调用程序在用户态,被调用程序在系统态。
操作系统精髓与设计原理课后答案
操作系统精髓与设计原理课后答案操作系统精髓与设计原理课后答案第1章计算机系统概述1.1列出并简要地定义计算机的四个主要组成部分。
主存储器,存储数据和程序;算术逻辑单元,能处理二进制数据;控制单元,解读存储器中的指令并且使他们得到执行;输入/输出设备,由控制单元管理。
1.2定义处理器寄存器的两种主要类别。
用户可见寄存器:优先使用这些寄存器,可以使机器语言或者汇编语言的程序员减少对主存储器的访问次数。
对高级语言而言,由优化编译器负责决定把哪些变量应该分配给主存储器。
一些高级语言,如C语言,允许程序言建议编译器把哪些变量保存在寄存器中。
控制和状态寄存器:用以控制处理器的操作,且主要被具有特权的操作系统例程使用,以控制程序的执行。
1.3一般而言,一条机器指令能指定的四种不同操作是什么?处理器-寄存器:数据可以从处理器传送到存储器,或者从存储器传送到处理器。
处理器-I/O:通过处理器和I/O模块间的数据传送,数据可以输出到外部设备,或者从外部设备输入数据。
数据处理:处理器可以执行很多关于数据的算术操作或逻辑操作。
控制:某些指令可以改变执行顺序。
1.4什么是中断?中断:其他模块(I/O,存储器)中断处理器正常处理过程的机制。
1.5多中断的处理方式是什么?处理多中断有两种方法。
第一种方法是当正在处理一个中断时,禁止再发生中断。
第二种方法是定义中断优先级,允许高优先级的中断打断低优先级的中断处理器的运行。
1.6内存层次的各个元素间的特征是什么?存储器的三个重要特性是:价格,容量和访问时间。
1.7什么是高速缓冲存储器?高速缓冲存储器是比主存小而快的存储器,用以协调主存跟处理器,作为最近储存地址的缓冲区。
1.8列出并简要地定义I/O操作的三种技术。
可编程I/O:当处理器正在执行程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令(用以执行这个指令);在进一步的动作之前,处理器处于繁忙的等待中,直到该操作已经完成。
操作系统精髓与设计原理课后复习题答案
操作系统精髓与设计原理课后复习题答案第1章计算机系统概述1.1 列出并简要地定义计算机的四个主要组成部分。
主存储器,存储数据和程序;算术逻辑单元,能处理⼆进制数据;控制单元,解读存储器中的指令并且使他们得到执⾏;输⼊/输出设备,由控制单元管理。
1.2 定义处理器寄存器的两种主要类别。
⽤户可见寄存器:优先使⽤这些寄存器,可以使机器语⾔或者汇编语⾔的程序员减少对主存储器的访问次数。
对⾼级语⾔⽽⾔,由优化编译器负责决定把哪些变量应该分配给主存储器。
⼀些⾼级语⾔,如C语⾔,允许程序⾔建议编译器把哪些变量保存在寄存器中。
控制和状态寄存器:⽤以控制处理器的操作,且主要被具有特权的操作系统例程使⽤,以控制程序的执⾏。
1.3 ⼀般⽽⾔,⼀条机器指令能指定的四种不同操作是什么?处理器-寄存器:数据可以从处理器传送到存储器,或者从存储器传送到处理器。
处理器-I/O:通过处理器和I/O模块间的数据传送,数据可以输出到外部设备,或者从外部设备输⼊数据。
数据处理:处理器可以执⾏很多关于数据的算术操作或逻辑操作。
控制:某些指令可以改变执⾏顺序。
1.4 什么是中断?中断:其他模块(I/O,存储器)中断处理器正常处理过程的机制。
1.5 多中断的处理⽅式是什么?处理多中断有两种⽅法。
第⼀种⽅法是当正在处理⼀个中断时,禁⽌再发⽣中断。
第⼆种⽅法是定义中断优先级,允许⾼优先级的中断打断低优先级的中断处理器的运⾏。
1.6 内存层次的各个元素间的特征是什么?存储器的三个重要特性是:价格,容量和访问时间。
1.7 什么是⾼速缓冲存储器?⾼速缓冲存储器是⽐主存⼩⽽快的存储器,⽤以协调主存跟处理器,作为最近储存地址的缓冲区。
1.8 列出并简要地定义I/O操作的三种技术。
可编程I/O:当处理器正在执⾏程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令(⽤以执⾏这个指令);在进⼀步的动作之前,处理器处于繁忙的等待中,直到该操作已经完成。
中断驱动I/O:当处理器正在执⾏程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令,并继续执⾏后续指令,直到后者完成,它将被I/O模块中断。
操作系统精髓与设计原理第五版习题与答案
第1章计算机系统概述1.1 列出并简要地定义计算机的四个主要组成部分。
主存储器,存储数据和程序;算术逻辑单元,能处理二进制数据;控制单元,解读存储器中的指令并且使他们得到执行;输入/输出设备,由控制单元管理。
1.2 定义处理器寄存器的两种主要类别。
用户可见寄存器:优先使用这些寄存器,可以使机器语言或者汇编语言的程序员减少对主存储器的访问次数。
对高级语言而言,由优化编译器负责决定把哪些变量应该分配给主存储器。
一些高级语言,如C语言,允许程序言建议编译器把哪些变量保存在寄存器中。
控制和状态寄存器:用以控制处理器的操作,且主要被具有特权的操作系统例程使用,以控制程序的执行。
1.3 一般而言,一条机器指令能指定的四种不同操作是什么?处理器-寄存器:数据可以从处理器传送到存储器,或者从存储器传送到处理器。
处理器-I/O:通过处理器和I/O模块间的数据传送,数据可以输出到外部设备,或者从外部设备输入数据。
数据处理:处理器可以执行很多关于数据的算术操作或逻辑操作。
控制:某些指令可以改变执行顺序。
1.4 什么是中断?中断:其他模块(I/O,存储器)中断处理器正常处理过程的机制。
1.5 多中断的处理方式是什么?处理多中断有两种方法。
第一种方法是当正在处理一个中断时,禁止再发生中断。
第二种方法是定义中断优先级,允许高优先级的中断打断低优先级的中断处理器的运行。
1.6 存层次的各个元素间的特征是什么?存储器的三个重要特性是:价格,容量和访问时间。
1.7 什么是高速缓冲存储器?高速缓冲存储器是比主存小而快的存储器,用以协调主存跟处理器,作为最近储存地址的缓冲区。
1.8 列出并简要地定义I/O操作的三种技术。
可编程I/O:当处理器正在执行程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令(用以执行这个指令);在进一步的动作之前,处理器处于繁忙的等待中,直到该操作已经完成。
中断驱动I/O:当处理器正在执行程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令,并继续执行后续指令,直到后者完成,它将被I/O 模块中断。
操作系统精髓与设计原理第五版 课后题答案
操作系统精髓与设计原理第五版课后题答案C HAPTER 2O PERATING S YSTEMO VERVIEWReview Questions2.1 Convenience: An operating system makes a computer more convenientto use. Efficiency: An operating system allows the computer systemresources to be used in an efficient manner. Ability to evolve: Anoperating system should be constructed in such a way as to permit theeffective development, testing, and introduction of new systemfunctions without interfering with service.2.5 The execution context, or process state, is the internal data by which theoperating system is able to supervise and control the process. Thisinternal information is separated from the process, because theoperating system has information not permitted to the process. Thecontext includes all of the information that the operating system needsto manage the process and that the processor needs to execute theprocess properly. The context includes the contents of the variousprocessor registers, such as the program counter and data registers. Italso includes information of use to the operating system, such as thepriority of the process and whether the process is waiting for thecompletion of a particular I/O event.Problems2.1 The answers are the same for (a) and (b). Assume that althoughprocessor operations cannot overlap, I/O operations can.1 Job: TAT = NT Processor utilization = 50%2 Jobs: TAT = NT Processor utilization = 100%4 Jobs: TAT = (2N – 1)NT Processor utilization = 100% 2.4 A system call is used by an application program to invoke a functionprovided by the operating system. Typically, the system call results intransfer to a system program that runs in kernel mode.C HAPTER 3P ROCESS D ESCRIPTION ANDC ONTROLReview Questions3.5 Swapping involves moving part or all of a process from main memoryto disk. When none of the processes in main memory is in the Ready state, the operating system swaps one of the blocked processes out onto disk into a suspend queue, so that another process may be brought into main memory to execute.3.10 The user mode has restrictions on the instructions that can be executedand the memory areas that can be accessed. This is to protect theoperating system from damage or alteration. In kernel mode, theoperating system does not have these restrictions, so that it canperform its tasks.Problems3.1 •Creation and deletion of both user and system processes. Theprocesses in the system can execute concurrently for informationsharing, computation speedup, modularity, and convenience.Concurrent execution requires a mechanism for process creation and deletion. The required resources are given to the process when it iscreated, or allocated to it while it is running. When the processterminates, the OS needs to reclaim any reusable resources.•Suspension and resumpti on of processes. In process scheduling, theOS needs to change the process's state to waiting or ready state when it is waiting for some resources. When the required resources areavailable, OS needs to change its state to running state to resume itsexecution.•Provision of mechanism for process synchronization. Cooperatingprocesses may share data. Concurrent access to shared data mayresult in data inconsistency. OS has to provide mechanisms forprocesses synchronization to ensure the orderly execution ofcooperating processes, so that data consistency is maintained.•Provision of mechanism for process communication. The processesexecuting under the OS may be either independent processes orcooperating processes. Cooperating processes must have the meansto communicate with each other.•Provision of mechanisms for deadlock handling. In amultiprogramming environment, several processes may compete fora finite number of resources. If a deadlock occurs, all waitingprocesses will never change their waiting state to running state again, resources are wasted and jobs will never be completed.3.3Figure 9.3 shows the result for a single blocked queue. The figurereadily generalizes to multiple blocked queues.C HAPTER 4P ROCESS D ESCRIPTION ANDC ONTROLReview Questions4.2 Less state information is involved.4.5 Address space, file resources, execution privileges are examples.4.6 1. Thread switching does not require kernel mode privileges becauseall of the thread management data structures are within the useraddress space of a single process. Therefore, the process does notswitch to the kernel mode to do thread management. This saves theoverhead of two mode switches (user to kernel; kernel back to user). 2.Scheduling can be application specific. One application may benefit most from a simple round-robin scheduling algorithm, while another might benefit from a priority-based scheduling algorithm. Thescheduling algorithm can be tailored to the application withoutdisturbing the underlying OS scheduler. 3. ULTs can run on anyoperating system. No changes are required to the underlying kernel to support ULTs. The threads library is a set of application-level utilities shared by all applications.4.7 1. In a typical operating system, many system calls are blocking. Thus,when a ULT executes a system call, not only is that thread blocked, but also all of the threads within the process are blocked. 2. In a pure ULT strategy, a multithreaded application cannot take advantage ofmultiprocessing. A kernel assigns one process to only one processor ata time. Therefore, only a single thread within a process can execute at atime.Problems4.2Because, with ULTs, the thread structure of a process is not visible to theoperating system, which only schedules on the basis of processes.C HAPTER 5C ONCURRENCY:M UTUALE XCLUSION ANDS YNCHRONIZATIONReview Questions5.1 Communication among processes, sharing of and competing forresources, synchronization of the activities of multiple processes, and allocation of processor time to processes.5.9 A binary semaphore may only take on the values 0 and 1. A generalsemaphore may take on any integer value.Problems5.2 ABCDE; ABDCE; ABDEC; ADBCE; ADBEC; ADEBC;DEABC; DAEBC; DABEC; DABCE5.5Consider the case in which turn equals 0 and P(1) sets blocked[1] totrue and then finds blocked[0] set to false. P(0) will then setblocked[0] to true, find turn = 0, and enter its critical section. P(1) will then assign 1 to turn and will also enter its critical section.C HAPTER 6C ONCURRENCY:D EADLOCK ANDS TARVATIONReview Questions6.2 Mutual exclusion. Only one process may use a resource at a time. Holdand wait. A process may hold allocated resources while awaitingassignment of others. No preemption. No resource can be forciblyremoved from a process holding it.6.3 The above three conditions, plus: Circular wait. A closed chain ofprocesses exists, such that each process holds at least one resourceneeded by the next process in the chain.Problems6.4 a. 0 0 0 00 7 5 06 6 2 22 0 0 20 3 2 0b. to d. Running the banker's algorithm, we see processes can finishin the order p1, p4, p5, p2, p3.e. Change available to (2,0,0,0) and p3's row of "still needs" to (6,5,2,2).Now p1, p4, p5 can finish, but with available now (4,6,9,8) neitherp2 nor p3's "still needs" can be satisfied. So it is not safe to grantp3's request.6.5 1. W = (2 1 0 0)2. Mark P3; W = (2 1 0 0) + (0 1 2 0) = (2 2 2 0)3. Mark P2; W = (2 2 2 0) + (2 0 0 1) = (4 2 2 1)4. Mark P1; no deadlock detectedReview Questions7.1 Relocation, protection, sharing, logical organization, physicalorganization.7.7 A logical address is a reference to a memory location independent ofthe current assignment of data to memory; a translation must be made to a physical address before the memory access can be achieved. A relative address is a particular example of logical address, in which the address is expressed as a location relative to some known point, usually the beginning of the program. A physical address, or absolute address, is an actual location in main memory.Problems7.6 a. The 40 M block fits into the second hole, with a starting address of80M. The 20M block fits into the first hole, with a starting address of 20M. The 10M block is placed at location 120M.40M 40M 60M 40M 40M 40M 30Mb. The three starting addresses are 230M, 20M, and 160M, for the 40M, 20M, and 10M blocks, respectively. 40M 60M 60M 40M 40M 40M 30Mc. The three starting addresses are 80M, 120M, and 160M, for the 40M,20M, and 10M blocks, respectively. C HAPTER 7M EMORY M ANAGEMENT7.12 a. The number of bytes in the logical address space is (216 pages) (210bytes/page) = 226 bytes. Therefore, 26 bits are required for the logical address.b. A frame is the same size as a page, 210 bytes.c. The number of frames in main memory is (232 bytes of mainmemory)/(210 bytes/frame) = 222 frames. So 22 bits is needed tospecify the frame.d. There is one entry for each page in the logical address space.Therefore there are 216 entries.e. In addition to the valid/invalid bit, 22 bits are needed to specify theframe location in main memory, for a total of 23 bits.30M40M40M60M40M40M40Md. The three starting addresses are 80M, 230M, and 360M, for the 40M,20M, and 10M blocks, respectively.C HAPTER 8V IRTUAL M EMORYReview Questions8.1 Simple paging: all the pages of a process must be in main memory forprocess to run, unless overlays are used. Virtual memory paging: not all pages of a process need be in main memory frames for the process to run.; pages may be read in as needed8.2 A phenomenon in virtual memory schemes, in which the processorspends most of its time swapping pieces rather than executinginstructions.Problems8.1 a. Split binary address into virtual page number and offset; use VPNas index into page table; extract page frame number; concatenateoffset to get physical memory addressb. (i) 1052 = 1024 + 28 maps to VPN 1 in PFN 7, (7 ⨯ 1024+28 = 7196)(ii) 2221 = 2 ⨯ 1024 + 173 maps to VPN 2, page fault(iii) 5499 = 5 ⨯ 1024 + 379 maps to VPN 5 in PFN 0, (0 ⨯ 1024+379 =379)8.4 a. PFN 3 since loaded longest ago at time 20b. PFN 1 since referenced longest ago at time 160c. Clear R in PFN 3 (oldest loaded), clear R in PFN 2 (next oldestloaded), victim PFN is 0 since R=0d. Replace the page in PFN 3 since VPN 3 (in PFN 3) is used furthestin the futuree. There are 6 faults, indicated by **4 0 0 0 *2*4 2*1**3 2VPN of pages in memory in LRU order 32143243434242241241243122Review Questions9.1 Long-term scheduling: The decision to add to the pool of processes tobe executed. Medium-term scheduling: The decision to add to thenumber of processes that are partially or fully in main memory.Short-term scheduling: The decision as to which available process willbe executed by the processor9.3 Turnaround time is the total time that a request spends in the system(waiting time plus service time. Response time is the elapsed timebetween the submission of a request until the response begins toappear as output.Problems9.1 Each square represents one time unit; the number in the square refersto the currently-running process.FCFS A A A B B B B B C C D D D D D E E E E E RR, q = 1 A B A B C A B C B D B D E D E D E D E E RR, q = 4 A A A B B B B C C B D D D D E E E E D E SPN A A A C C B B B B B D D D D D E E E E E SRT A A A C C B B B B B D D D D D E E E E E HRRN A A A B B B B B C C D D D D D E E E E E Feedback, q = 1 A B A C B C A B B D B D E D E D E D E EFeedback, q = 2i A B A A C B B C B B D D E D D E E D E EC HAPTER 9U NIPROCESSORS CHEDULINGA B C D ET a0 1 3 9 12T s 3 5 2 5 5 FCFS T f 3 8 10 15 20T r 3.00 7.00 7.00 6.00 8.00 6.20T r/T s 1.00 1.40 3.50 1.20 1.60 1.74 RR qT f 6.00 11.00 8.00 18.00 20.00= 1T r 6.00 10.00 5.00 9.00 8.00 7.60T r/T s 2.00 2.00 2.50 1.80 1.60 1.98RR qT f 3.00 10.00 9.00 19.00 20.00= 4T r 3.00 9.00 6.00 10.00 8.00 7.20T r/T s 1.00 1.80 3.00 2.00 1.60 1.88 SPN T f 3.00 10.00 5.00 15.00 20.00T r 3.00 9.00 2.00 6.00 8.00 5.60T r/T s 1.00 1.80 1.00 1.20 1.60 1.32SRT T f 3.00 10.00 5.00 15.00 20.00T r 3.00 9.00 2.00 6.00 8.00 5.60T r/T s 1.00 1.80 1.00 1.20 1.60 1.32 HRRT f 3.00 8.00 10.00 15.00 20.00NT r 3.00 7.00 7.00 6.00 8.00 6.20T r/T s 1.00 1.40 3.50 1.20 1.60 1.74FB qT f7.00 11.00 6.00 18.00 20.00= 1T r7.00 10.00 3.00 9.00 8.00 7.40T r/T s 2.33 2.00 1.50 1.80 1.60 1.85 FB T f 4.00 10.00 8.00 18.00 20.00q = 2i T r 4.00 9.00 5.00 9.00 8.00 7.00 T r/T s 1.33 1.80 2.50 1.80 1.60 1.819.16 a. Sequence with which processes will get 1 min of processor time:1 2 3 4 5 Elapsed timeA A A A A A A A A A A A A A BBBBBBBBCCDDDDDEEEEEEEEEEE1015192327303336384042434445The turnaround time for each process:A = 45 min,B = 35 min,C = 13 min,D = 26 min,E = 42 minThe average turnaround time is = (45+35+13+26+42) / 5 = 32.2 min b.Priority Job Turnaround Time3 4 6 7 9 BEACD99 + 12 = 2121 + 15 = 3636 + 3 = 3939 + 6 = 45The average turnaround time is: (9+21+36+39+45) / 5 = 30 min c.Job Turnaround TimeA B C D E 1515 + 9 = 24 24 + 3 = 27 27 + 6 = 33 33 + 12 = 45The average turnaround time is: (15+24+27+33+45) / 5 = 28.8 min d.RunningTimeJob Turnaround Time6 9 12 15 DBEA3 + 6 = 99 + 9 = 1818 + 12 = 3030 + 15 = 45The average turnaround time is: (3+9+18+30+45) / 5 = 21 minC HAPTER 10M ULTIPROCESSOR AND R EAL-T IMES CHEDULINGReview Questions10.1 Fine: Parallelism inherent in a single instruction stream. Medium: Parallelprocessing or multitasking within a single application. Coarse:Multiprocessing of concurrent processes in a multiprogrammingenvironment. Very Coarse: Distributed processing across network nodes toform a single computing environment. Independent: Multiple unrelatedprocesses.10.4 A hard real-time task is one that must meet its deadline; otherwise it willcause undesirable damage or a fatal error to the system. A soft real-timetask has an associated deadline that is desirable but not mandatory; it stillmakes sense to schedule and complete the task even if it has passed itsdeadline.Problems10.1 For fixed priority, we do the case in which the priority is A, B, C. Eachsquare represents five time units; the letter in the square refers to thecurrently-running process. The first row is fixed priority; the secondrow is earliest deadline scheduling using completion deadlines.A AB B A AC C A A B B A A C C A AA AB B AC C A C A A B B A A C C C A AFor fixed priority scheduling, process C always misses its deadline.10.4normal executionexecution in critical sectionT 1T 2T 3s locked by T 3s unlockeds locked by T 1Once T 3 enters its critical section, it is assigned a priority higher than T1. When T3 leaves its critical section, it is preempted by T 1.C HAPTER 11I/O M ANAGEMENT AND D ISK S CHEDULING Review Questions11.1 Programmed I/O: The processor issues an I/O command, on behalf of aprocess, to an I/O module; that process then busy-waits for theoperation to be completed before proceeding. Interrupt-driven I/O:The processor issues an I/O command on behalf of a process,continues to execute subsequent instructions, and is interrupted by the I/O module when the latter has completed its work. The subsequent instructions may be in the same process, if it is not necessary for that process to wait for the completion of the I/O. Otherwise, the process is suspended pending the interrupt and other work is performed. Direct memory access (DMA): A DMA module controls the exchange of data between main memory and an I/O module. The processor sends arequest for the transfer of a block of data to the DMA module and is interrupted only after the entire block has been transferred.11.5 Seek time, rotational delay, access time.Problems11.1 If the calculation time exactly equals the I/O time (which is the mostfavorable situation), both the processor and the peripheral devicerunning simultaneously will take half as long as if they ran separately.Formally, let C be the calculation time for the entire program and let T be the total I/O time required. Then the best possible running timewith buffering is max(C, T), while the running time without buffering is C + T; and of course ((C + T)/2) ≤ max(C, T) ≤ (C + T). Source:[KNUT97].11.3 Disk head is initially moving in the direction of decreasing tracknumber:FIFO SSTF SCAN C-SCANNext track accessed Numberof trackstraversedNexttrackaccessedNumberof trackstraversedNexttrackaccessedNumberof trackstraversedNexttrackaccessedNumberof trackstraversed27 73 110 10 64 36 64 36129 102 120 10 41 23 41 23 110 19 129 9 27 14 27 14 186 76 147 18 10 17 10 17 147 39 186 39 110 100 186 17641 106 64 122 120 10 147 3910 31 41 23 129 9 129 1864 54 27 14 147 18 120 9120 56 10 17 186 39 110 10 Average 61.8 Average 29.1 Average 29.6 Average 38If the disk head is initially moving in the direction of increasing tracknumber, only the SCAN and C-SCAN results change:SCAN C-SCANNext track accessed Numberof trackstraversedNexttrackaccessedNumberof trackstraversed110 10 110 10120 10 120 10129 9 129 9147 18 147 18186 39 186 3964 122 10 17641 23 27 1727 14 41 1410 17 64 23 Average 29.1 Average 35.1Review Questions12.1 A field is the basic element of data containing a single value. A recordis a collection of related fields that can be treated as a unit by some application program.12.5 Pile: Data are collected in the order in which they arrive. Each recordconsists of one burst of data. Sequential file: A fixed format is used for records. All records are of the same length, consisting of the same number of fixed-length fields in a particular order. Because the length and position of each field is known, only the values of fields need to be stored; the field name and length for each field are attributes of the file structure. Indexed sequential file: The indexed sequential file maintains the key characteristic of the sequential file: records are organized in sequence based on a key field. Two features are added; an index to the file to support random access, and an overflow file. The index provides a lookup capability to reach quickly the vicinity of a desired record. The overflow file is similar to the log file used with a sequential file, but is integrated so that records in the overflow file are located by following a pointer from their predecessor record. Indexed file: Records are accessed only through their indexes. The result is that there is now no restriction on the placement of records as long as a pointer in at least one index refers to that record. Furthermore,variable-length records can be employed. Direct, or hashed, file: The direct file makes use of hashing on the key value.Problems12.1 Fixed blocking: F = largest integer B RWhen records of variable length are packed into blocks, data formarking the record boundaries within the block has to be added to separate the records. When spanned records bridge block boundaries, some reference to the successor block is also needed. One possibility is a length indicator preceding each record. Another possibility is a special separator marker between records. In any case, we can assume that each record requires a marker, and we assume that the size of a marker is about equal to the size of a block pointer [WEID87]. For spanned blocking, a block pointer of size P to its successor block may C HAPTER 12F ILE M ANAGEMENTbe included in each block, so that the pieces of a spanned record can easily be retrieved. Then we haveVariable-length spanned blocking: F=B-P R+PWith unspanned variable-length blocking, an average of R/2 will be wasted because of the fitting problem, but no successor pointer is required:Variable-length unspanned blocking: F=B-R2 R+P12.3 a. Indexedb. Indexed sequentialc. Hashed or indexed。
《操作系统精髓与设计原理_第五版》练习题及答案(DOC)
第 1 章计算机系统概述1.1 、图 1.3中的理想机器还有两条I/O 指令:0011 = 从 I/O 中载入 AC0111 = 把 AC保存到 I/O 中在这种情况下, 12 位地址标识一个特殊的外部设备。
请给出以下程序的执行过程(按照图 1.4 的格式):1.从设备 5 中载入 AC。
2.加上存储器单元 940 的内容。
3.把 AC保存到设备 6 中。
假设从设备 5 中取到的下一个值为3940 单元中的值为 2。
答案:存储器( 16 进制内容):300:3005;301:5940;302:7006步骤 1:3005->IR;步骤 2:3->AC步骤 3:5940->IR;步骤 4:3+2=5->AC步骤 5:7006->IR:步骤 6:AC->设备 61.2 、本章中用 6 步来描述图 1.4 中的程序执行情况,请使用MAR和 MBR扩充这个描述。
答案: 1. a. PC 中包含第一条指令的地址300,该指令的内容被送入MAR中。
b. 地址为 300 的指令的内容(值为十六进制数1940)被送入 MBR,并且PC增 1。
这两个步骤是并行完成的。
c.MBR中的值被送入指令寄存器 IR 中。
2.a.指令寄存器 IR 中的地址部分( 940)被送入 MAR中。
b.地址 940 中的值被送入 MBR中。
c.MBR中的值被送入 AC中。
3. a. PC 中的值( 301)被送入 MAR中。
b. 地址为 301 的指令的内容(值为十六进制数5941)被送入 MBR,并且 PC增 1。
c.MBR中的值被送入指令寄存器 IR 中。
4.a.指令寄存器 IR 中的地址部分( 941)被送入 MAR中。
b.地址 941 中的值被送入 MBR中。
c.AC中以前的内容和地址为 941 的存储单元中的内容相加,结果保存到 AC中。
5.a. PC中的值( 302)被送入 MAR中。
b. 地址为 302 的指令的内容(值为十六进制数2941)被送入 MBR,并且PC增 1。
操作系统精髓与设计原理课后答案
操作系统精髓与设计原理课后答案操作系统精髓与设计原理课后答案第1章计算机系统概述1、1 列出并简要地定义计算机得四个主要组成部分。
主存储器,存储数据与程序;算术逻辑单元,能处理二进制数据;控制单元,解读存储器中得指令并且使她们得到执行;输入/输出设备,由控制单元管理。
1、2 定义处理器寄存器得两种主要类别。
用户可见寄存器:优先使用这些寄存器,可以使机器语言或者汇编语言得程序员减少对主存储器得访问次数。
对高级语言而言,由优化编译器负责决定把哪些变量应该分配给主存储器。
一些高级语言,如C语言,允许程序言建议编译器把哪些变量保存在寄存器中。
控制与状态寄存器:用以控制处理器得操作,且主要被具有特权得操作系统例程使用,以控制程序得执行。
1、3 一般而言,一条机器指令能指定得四种不同操作就是什么?处理器-寄存器:数据可以从处理器传送到存储器,或者从存储器传送到处理器。
处理器-I/O:通过处理器与I/O模块间得数据传送,数据可以输出到外部设备,或者从外部设备输入数据。
数据处理:处理器可以执行很多关于数据得算术操作或逻辑操作。
控制:某些指令可以改变执行顺序。
1、4 什么就是中断?中断:其她模块(I/O,存储器)中断处理器正常处理过程得机制。
1、5 多中断得处理方式就是什么?处理多中断有两种方法。
第一种方法就是当正在处理一个中断时,禁止再发生中断。
第二种方法就是定义中断优先级,允许高优先级得中断打断低优先级得中断处理器得运行。
1、6 内存层次得各个元素间得特征就是什么?存储器得三个重要特性就是:价格,容量与访问时间。
1、7 什么就是高速缓冲存储器?高速缓冲存储器就是比主存小而快得存储器,用以协调主存跟处理器,作为最近储存地址得缓冲区。
1、8 列出并简要地定义I/O操作得三种技术。
可编程I/O:当处理器正在执行程序并遇到与I/O相关得指令时,它给相应得I/O模块发布命令(用以执行这个指令);在进一步得动作之前,处理器处于繁忙得等待中,直到该操作已经完成。
《操作系统精髓与设计原理·第五版》练习题及答案
《操作系统精髓与设计原理·第五版》练习题及答案第1章计算机系统概述1.1、图1.3中的理想机器还有两条I/O指令:0011 = 从I/O中载入AC0111 = 把AC保存到I/O中在这种情况下,12位地址标识一个特殊的外部设备。
请给出以下程序的执行过程(按照图1.4的格式):1.从设备5中载入AC。
2.加上存储器单元940的内容。
3.把AC保存到设备6中。
假设从设备5中取到的下一个值为3940单元中的值为2。
答案:存储器(16进制内容):300:3005;301:5940;302:7006 步骤1:3005->IR;步骤2:3->AC步骤3:5940->IR;步骤4:3+2=5->AC步骤5:7006->IR:步骤6:AC->设备 61.2、本章中用6步来描述图1.4中的程序执行情况,请使用MAR和MBR扩充这个描述。
答案:1. a. PC中包含第一条指令的地址300,该指令的内容被送入MAR中。
b. 地址为300的指令的内容(值为十六进制数1940)被送入MBR,并且PC增1。
这两个步骤是并行完成的。
c. MBR中的值被送入指令寄存器IR中。
2. a. 指令寄存器IR中的地址部分(940)被送入MAR中。
b. 地址940中的值被送入MBR中。
c. MBR中的值被送入AC中。
3. a. PC中的值(301)被送入MAR中。
b. 地址为301的指令的内容(值为十六进制数5941)被送入MBR,并且PC增1。
c. MBR中的值被送入指令寄存器IR中。
4. a. 指令寄存器IR中的地址部分(941)被送入MAR中。
b. 地址941中的值被送入MBR中。
c. AC中以前的内容和地址为941的存储单元中的内容相加,结果保存到AC中。
5. a. PC中的值(302)被送入MAR中。
b. 地址为302的指令的内容(值为十六进制数2941)被送入MBR,并且PC增1。
操作系统第7章答案精编版
操作系统第7章答案第七章作业赵盈盈20112105931、什么是“设备独立性”?引入这一概念有什么好处?答:设备独立性是指用户在编制程序时所使用的设备与实际使用的设备是无关的,也就是在用户程序中仅使用逻辑设备名。
由系统实现从逻辑设备到物理设备(实际设备)的转换。
好处(蓝体字):设计I/O软件的一个关键目标之一就是实现设备独立性,也就是说,除了直接与设备打交道的低层软件之外,其他部分的的软件并不依赖于硬件。
I/O软件独立于设备,就可以提高设备管理软件的设计效率,当输入输出设备更新时,没有必要重新编写全部设计设备管理的程序。
在实际应用的一些操作系统中,只要安装相应的设备驱动程序,就可以很方便地安装好新的输入输出设备。
如Windows中,系统可以自动为新安装的输入输出设备寻找和安装相应的设备驱动程序,从而实现输入输出设备的即插即用。
引入设备独立性,可使应用程序独立于物理设备。
独立性可使用户程序独立于某一特定的物理设备。
此时,进程只需用逻辑设备命名去请求使用某类设备。
当系统中有多台该设备时,系统可将其中的任一台设备分配给请求进程,而不必局限于某一指定设备。
这样可以显著的提高资源的利用率和可适应性。
独立性还可以使用户程序独立于设备类型。
例如在进行输入输出的时候,既可以利用显示终端进行输出,也可以利用打印机进行输出。
有了这样的适应性,就看完一很方便的实现输出重定向。
类似地可以实现输入重定向。
即:用户在申请使用设备时,只需要指定设备类型而无须指定具体的物理设备,系统根据当前的请求,及设备分配的情况,在相同类别设备中,选择一个空闲的设备,将其分配给一个申请进程。
统一性:对于不同的设备采用统一的操作方式,在用户程序中使用的是逻辑设备。
设备忙碌或者设备故障时,用户不必修改程序。
改善了系统可适应性和可扩展性。
方便用户。
2、进程的逻辑设备如何与一个物理设备建立对应关系?答:逻辑设备与物理设备的联系通常是由操作系统命令语言中提供的信息实现的。
操作系统精髓与设计原理课后答案
操作系统精髓与设计原理课后答案第1章计算机系统概述1.1 列出并简要地定义计算机的四个主要组成部分。
主存储器,存储数据和程序;算术逻辑单元,能处理二进制数据;控制单元,解读存储器中的指令并且使他们得到执行;输入/输出设备,由控制单元管理。
1.2 定义处理器寄存器的两种主要类别。
用户可见寄存器:优先使用这些寄存器,可以使机器语言或者汇编语言的程序员减少对主存储器的访问次数。
对高级语言而言,由优化编译器负责决定把哪些变量应该分配给主存储器。
一些高级语言,如C语言,允许程序言建议编译器把哪些变量保存在寄存器中。
控制和状态寄存器:用以控制处理器的操作,且主要被具有特权的操作系统例程使用,以控制程序的执行。
1.3 一般而言,一条机器指令能指定的四种不同操作是什么?处理器-寄存器:数据可以从处理器传送到存储器,或者从存储器传送到处理器。
处理器-I/O:通过处理器和I/O模块间的数据传送,数据可以输出到外部设备,或者从外部设备输入数据。
数据处理:处理器可以执行很多关于数据的算术操作或逻辑操作。
控制:某些指令可以改变执行顺序。
1.4 什么是中断?中断:其他模块(I/O,存储器)中断处理器正常处理过程的机制。
1.5 多中断的处理方式是什么?处理多中断有两种方法。
第一种方法是当正在处理一个中断时,禁止再发生中断。
第二种方法是定义中断优先级,允许高优先级的中断打断低优先级的中断处理器的运行。
1.6 内存层次的各个元素间的特征是什么?存储器的三个重要特性是:价格,容量和访问时间。
1.7 什么是高速缓冲存储器?高速缓冲存储器是比主存小而快的存储器,用以协调主存跟处理器,作为最近储存地址的缓冲区。
1.8 列出并简要地定义I/O操作的三种技术。
可编程I/O:当处理器正在执行程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令(用以执行这个指令);在进一步的动作之前,处理器处于繁忙的等待中,直到该操作已经完成。
中断驱动I/O:当处理器正在执行程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令,并继续执行后续指令,直到后者完成,它将被I/O模块中断。
《操作系统精髓与设计原理·第五版》习题答案
《操作系统精髓与设计原理·第五版》习题答案第1章计算机系统概述、图中的理想机器还有两条I/O指令:0011 = 从I/O中载入AC 0111 = 把AC保存到I/O中在这种情况下,12位地址标识一个特殊的外部设备。
请给出以下程序的执行过程:1. 从设备5中载入AC。
2. 加上存储器单元940的内容。
3. 把AC保存到设备6中。
假设从设备5中取到的下一个值为3940单元中的值为2。
答案:存储器:300:3005;301:5940;302:7006 步骤1:3005->IR;步骤2:3->AC步骤3:5940->IR;步骤4:3+2=5->AC 步骤5:7006->IR:步骤6:AC->设备 6、本章中用6步来描述图中的程序执行情况,请使用MAR 和MBR扩充这个描述。
答案:1. a. PC中包含第一条指令的地址300,该指令的内容被送入MAR中。
b. 地址为300的指令的内容被送入MBR,并且PC增1。
这两个步骤是并行完成的。
c. MBR中的值被送入指令寄存器IR中。
2. a. 指令寄存器IR中的地址部分被送入MAR中。
b. 地址940中的值被送入MBR中。
c. MBR中的值被送入AC中。
3. a. PC中的值被送入MAR中。
b. 地址为301的指令的内容被送入MBR,并且PC增1。
c. MBR中的值被送入指令寄存器IR中。
4. a. 指令寄存器IR中的地址部分被送入MAR中。
b. 地址941中的值被送入MBR中。
c. AC中以前的内容和地址为941的存储单元中的内容相加,结果保存到AC中。
5. a. PC中的值被送入MAR 中。
b. 地址为302的指令的内容被送入MBR,并且PC增1。
c. MBR中的值被送入指令寄存器IR中。
6. a. 指令寄存器IR中的地址部分被送入MAR中。
b. AC中的值被送入MBR中。
c. MBR中的值被存储到地址为941的存储单元之中。
操作系统精髓与设计原理课后答案
操作系统精髓与设计原理课后答案第1章计算机系统概述1.1 列出并简要地定义计算机的四个主要组成部分。
主存储器,存储数据和程序;算术逻辑单元,能处理二进制数据;控制单元,解读存储器中的指令并且使他们得到执行;输入/输出设备,由控制单元管理。
1.2 定义处理器寄存器的两种主要类别。
用户可见寄存器:优先使用这些寄存器,可以使机器语言或者汇编语言的程序员减少对主存储器的访问次数。
对高级语言而言,由优化编译器负责决定把哪些变量应该分配给主存储器。
一些高级语言,如C语言,允许程序言建议编译器把哪些变量保存在寄存器中。
控制和状态寄存器:用以控制处理器的操作,且主要被具有特权的操作系统例程使用,以控制程序的执行。
1.3 一般而言,一条机器指令能指定的四种不同操作是什么?处理器-寄存器:数据可以从处理器传送到存储器,或者从存储器传送到处理器。
处理器-I/O:通过处理器和I/O模块间的数据传送,数据可以输出到外部设备,或者从外部设备输入数据。
数据处理:处理器可以执行很多关于数据的算术操作或逻辑操作。
控制:某些指令可以改变执行顺序。
1.4 什么是中断?中断:其他模块(I/O,存储器)中断处理器正常处理过程的机制。
1.5 多中断的处理方式是什么?处理多中断有两种方法。
第一种方法是当正在处理一个中断时,禁止再发生中断。
第二种方法是定义中断优先级,允许高优先级的中断打断低优先级的中断处理器的运行。
1.6 内存层次的各个元素间的特征是什么?存储器的三个重要特性是:价格,容量和访问时间。
1.7 什么是高速缓冲存储器?高速缓冲存储器是比主存小而快的存储器,用以协调主存跟处理器,作为最近储存地址的缓冲区。
1.8 列出并简要地定义I/O操作的三种技术。
可编程I/O:当处理器正在执行程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令(用以执行这个指令);在进一步的动作之前,处理器处于繁忙的等待中,直到该操作已经完成。
中断驱动I/O:当处理器正在执行程序并遇到与I/O相关的指令时,它给相应的I/O模块发布命令,并继续执行后续指令,直到后者完成,它将被I/O模块中断。
(完整版)操作系统教程第5版课后答案解析
操作系统教程第5版课后答案费祥林、骆斌编著第一章操作系统概论习题一一、思考题1.简述现代计算机系统的组成及层次结构。
答:现代计算机系统由硬件和软件两个部分组成。
是硬件和软件相互交织形成的集合体,构成一个解决计算问题的工具。
硬件层提供基本可计算的资源,包括处理器、寄存器、内存、外存及I/O设备。
软件层由包括系统软件、支撑软件和应用软件。
其中系统软件是最靠近硬件的。
2、计算机系统的资源可分成哪几类?试举例说明。
答:包括两大类,硬件资源和信息资源。
硬件资源分为处理器、I/O设备、存储器等;信息资源分为程序和数据等。
3.什么是操作系统?操作系统在计算机系统中的主要作用是什么?答:操作系统是一组控制和管理计算机硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序的集合。
操作系统在计算机系统中主要起4个方面的作用。
(1)服务用户观点——操作系统提供用户接口和公共服务程序(2)进程交互观点——操作系统是进程执行的控制者和协调者(3)系统实现观点——操作系统作为扩展机或虚拟机(4)资源管理观点——操作系统作为资源的管理者和控制者4.操作系统如何实现计算与操作过程的自动化?答:大致可以把操作系统分为以下几类:批处理操作系统、分时操作系统、实时操作系统、网络操作系统和分布式操作系统。
其中批处理操作系统能按照用户预先规定好的步骤控制作业的执行,实现计算机操作的自动化。
又可分为批处理单道系统和批处理多道系统。
单道系统每次只有一个作业装入计算机系统的主存储器运行,多个作业可自动、顺序地被装入运行。
批处理多道系统则允许多个作业同时装入主存储器,中央处理器轮流地执行各个作业,各个作业可以同时使用各自所需的外围设备,这样可以充分利用计算机系统的资源,缩短作业时间,提高系统的吞吐率5.操作系统要为用户提供哪些基本的和共性的服务?答:(1)创建程序和执行程序;(2)数据I/O和信息存取;(3)通信服务;(4)差错检测和处理。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
7.1.如果使用动态分区方案,下图所示为在某个给定的时间点的内存配置:
阴影部分为已经被分配的块;空白部分为空闲块。
接下来的三个内存需求分别为40MB,20MB和10MB。
分别使用如下几种放置算法,指出给这三个需求分配的块的起始地址。
a.首次适配
b.最佳适配
c.临近适配(假设最近添加的块位于内存的开始)
d.最坏适配
答:
a.40M的块放入第2个洞中,起始地址是80M. 20M的块放入第一个洞中.起始地址是
20M. 10M的块的起始地址是120M。
b.40M,20N,10M的起始地址分别为230M,20M和160M.
c.40M,20M,10M的起始地址是80M,120160M.
d.40M,20M,10M,的起始地址是80M,230M,360M.
7.2.使用伙伴系统分配一个1MB的存储块。
a.利用类似于图7.6的图来说明按下列顺序请求和返回的结果:请求70;请求35;
请求80;返回A;请求60;返回B;返回D;返回C。
b.给出返回B之后的二叉树表示。
答:
a.
b.
7.3.考虑一个伙伴系统,在当前分配下的一个特定块地址为011011110000.
a.如果块大小为4,它的伙伴的二进制地址为多少?
b.如果块大小为16,它的伙伴的二进制地址为多少?
答:
a.011011110100
b.011011100000
7.4.令buddy k(x)为大小为2k、地址为x的块的伙伴的地址,写出buddy k(x)的通用表达式。
答:
7.5.Fabonacci序列定义如下:
F0=0,F1=1,F n+2=F n+1+F n,n≧0
a.这个序列可以用于建立伙伴系统吗?
b.该伙伴系统与本章介绍的二叉伙伴系统相比,有什么优点?
答:
a.是。
字区大小可以确定Fn = Fn-1 + Fn-2.。
b.这种策略能够比二叉伙伴系统提供更多不同大小的块,因而具有减少内部碎片的可
能性。
但由于创建了许多没用的小块,会造成更多的外部碎片。
7.6.在程序执行期间,每次取指令后处理器把指令寄存器的内容(程序计数器)增加一个
字,但如果遇到会导致在程序中其他地址继续执行的转跳或调用指令,处理器将修改这个寄存器的内容。
现在考虑图7.8。
关于指令地址有两种选择:
在指令寄存器中保存相对地址,并把指令寄存器作为输入进行动态地址转换。
当遇到一次成功的转跳或调用时,由这个转跳或调用产生的相对地址被装入到指令
寄存器中。
在指令寄存器中保存绝对地址。
当遇到一次成功的转跳或调用时,采用动态地址转换,其结果保存到指令寄存器中。
哪种方法更好?
答:使用绝对地址可以减少动态地址转换的次数。
但是,我们希望程序能够被重定位。
因此,在指令寄存器中保存相对地址似乎就更好一些。
也可以选择在进程被换出主存时将指令寄存器中的地址转换为相对地址。
7.7.考虑一个简单分页系统,其物理存储器大小为232字节,页大小为210字节,逻辑地址
空间为216个页。
a.逻辑地址空间包含多少位?
b.一个帧中包含多少字节?
c.在物理地址中指定帧需要多少位?
d.在页表中包含多少个页表项?
e.在每个页表项中包含多少位?(假设每个页表项中包含一个有效/无效位)
答:
a.物理地址空间的比特数是216*210=226
b.一个帧包含的字节跟一个页是一样的,210比特.
c.主存中帧的数量是232/210=222,所以每个帧的定位要22个比特
d.在物理地址空间,每个页都有一个页表项,所以有216项
e.加上有效/无效位,每个页表项包含23位。
7.8.分页系统中的虚地址a相当于一对(p,w),其中p是页号,w是页中的字节号。
令z
是一页中的字节总数,请给出p和w关于z和a的函数。
答:关系是:a = pz + w,其中p =∟a/z , a/z的整数部分。
w = Rz(a),a除以z 的余数
7.9.在一个简单分段系统中,包含如下段表:
对如下的每一个逻辑地址,确定其对应的物理地址或者说明段错误是否会发生:
a.0,198
b.2,256
c.1,530
d.3,444
e.0,222
答:
a.段0定位在660,所以我们有物理地址660+190=858.
b. 222+156=378
c.段1长度为422,所以会发生错误
d.996+444=1440
e.660+222=882.
7.10.在内存中,存在连续的段S1,S2,…,S n按其创建顺序一次从一端放置到另一端,如下
图所示:
当段S n+1被创建时,尽管S1,S2,…,S n中的某些段可能已经被删除,段S n+1仍被立即放
置在段S n之后。
当段(正在使用或已被删除)和洞之间的边界到达内存的另一端时,压缩正在使用的段。
a.说明花费在压缩上的时间F遵循以下的不等式:
F≧(1-f)/1+kf), k=t/2s-1
其中,s表示段的平均长度(以字为单位);l标识段的平均生命周期,按存储器访问;f表示在平衡条件下,未使用的内存部分。
提示:计算边界在内存中移动的平均速度,并假设复制一个字至少需要两次存储器访问。
b.当f=0.2,t=1000,s=50时,计算F。
答:
a.很明显,在一个周期t内一些段会产生而一些段会被删除.因为系统是公平的,一个
新的段会在t内被插入,此外,边界会医s/t的速度移动.假设t0是边界到达空洞的时间,t0=fmr/s, m=内存的长度,在对段进行压缩时会有(1-f)m个数被移动,压缩时
间至少是2(1-f)m.则花在压缩上的时间F为F=1-t0/(t0+t c)。
b.K=(t/2s)-1=9;F≧(1-0.2)/(1+1.8)=0.29。