计算机操作系统第四版复习+部分课后题+习题

第一章

判断操作系统类型

操作系统按功能可以分为

  1. 批处理操作系统

    将选中的若干作业调入内存以多道方式投入运行。

    优点是系统吞吐量大,资源利用率高

    不具有交互性,这是其缺点。

  2. 分时操作系统 --------- 人机交互 共享主机

    采用“时间片”、动态优先数等方式使CPU轮流为多个用户终端或多个任务服务。

    主要特点:

    多路调制性 独占性 及时性 交互性

  3. 实时操作系统

    响应速度 ,可靠性要求

    更强调系统的 安全性可靠性

    不具备分时系统的强交互性。

    主要特点是:

    1. 对响应时间的实时要求(可高可低)。
    2. 系统可靠性和安全性放在第一位,系统效率放在次要地位,交互性差或根本没有交互性。
    3. 系统整体性强。很多实时系统同时又是分布式系统,具有分布式系统整体性强的优点。

    类型:工业武器控制系统、信息查询系统、多媒体系统、嵌入式系统

操作系统主要特征

并发性(进程)、共享性、虚拟性、异步性

操作系统主要功能

处理机管理、存储器管理、设备管理、文件管理

1.为什么说操作系统实现了对计算机资源的抽象?

OS首先在裸机上覆盖一层I/O设备管理软件,实现了对计算机硬件操作的第一层次抽象;在第一层软件上再覆盖文件管理软件,实现了对硬件资源操作的第二层次抽象。OS 通过在计算机硬件上安装多层系统软件,增强了系统功能,隐藏了对硬件操作的细节,由它们共同实现了对计算机资源的抽象。

2.实现分时系统的关键问题是什么?应如何解决?

关键问题是当用户在自己的终端上键入命令时,系统应能及时接收并及时处理该命令,
在用户能接受的时延内将结果返回给用户。
解决方法:针对及时接收问题,可以在系统中设置多路卡,使主机能同时接收用户从各个终
端上输入的数据;为每个终端配置缓冲区,暂存用户键入的命令或数据。针对及时处理问题,
应使所有的用户作业都直接进入内存,并且为每个作业分配一个时间片,允许作业只在自己
时间片内运行,这样在不长的时间内,能使每个作业都运行一次。

3.OS有哪几大特征?其最基本的特征是什么?

并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性和共享性。

4.何谓微内核技术?在微内核中通常提供了哪些功能?

把操作系统中更多的成分和功能放到更高的层次(即用户模式)中去运行,而留下一个尽量小的内核,用它来完成操作系统最基本的核心功能,称这种技术为微内核技术。

在微内核中通常提供了进程(线程)管理、低级存储器管理、中断和陷入处理等功能。

第二章

进程

特征:动态性、并发性、独立性、异步性

程序没有建立PCB是不能参与并发执行的。

时间片:一个时间片就是一段很短的时间,系统规定每个作业每次只能运行一个时间片,然后暂停该作业的运行,调度下一个作业运行。

三种基本状态:就绪、执行、阻塞

计算机操作系统第四版复习+部分课后题+习题_第1张图片

五种状态:创建、就绪、执行、阻塞、终止

计算机操作系统第四版复习+部分课后题+习题_第2张图片

七种状态:创建、活动就绪、静止就绪、执行、活动阻塞、静止阻塞、终止

计算机操作系统第四版复习+部分课后题+习题_第3张图片

PCB的作用

  1. 作为独立运行基本单位的标志
  2. 能实现间断性运行方式
  3. 提供进程管理所需要的信息
  4. 提供进程调度所需要的信息
  5. 实现与其他进程的同步和通信

1.试说明进程在三个基本状态之间转换的典型原因

  • 就绪状态→执行状态:进程分配到CPU资源

  • 执行状态→就绪状态:时间片用完

  • 执行状态→阻塞状态:I/O请求

  • 阻塞状态→就绪状态:I/O完成

2.试说明引起进程阻塞或被唤醒的主要事件是什么?

a. 请求系统服务;b. 启动某种操作;c. 新数据尚未到达;d. 无新工作可做

3.为什么要在OS 中引入线程?

在操作系统中引入线程,则是为了减少程序在并发执行时所付出的时空开销,使OS具有更好的并发性,提高CPU的利用率。进程是分配资源的基本单位,而线程则是系统调度的基本单位。

4.线程控制块TCB中包含了哪些内容

线程控制符、一组寄存器(包括PC和状态寄存器和通用寄存器的内容)、线程运行状态(何种运行状态)、优先级(线程执行的优先程度)、线程专有存储区、信号屏蔽、堆栈指针

第三章

处理机调度的层次

  1. 高级调度

    长程调度or作业调度,调度对象是作业

    作业调入内存,创建进程分配资源;

    主要用于 多道批处理系统,分时or实时中不设置

  2. 低级调度

    进程调度or短程调度,对象是进程/内核级线程;

    决定哪个进程应获得处理机,将处理机分配给进程;

    最基本的调度;

    多道批处理、分时、实时都必须配置;

    运行频率最高

  3. 中级调度

    内存调度;

    提高内存利用率和系统吞吐量;

    把不能运行的进程调到外存等待;把可以运行的进程重新调入内存,修改状态为就绪

作业调度

批处理系统中,是以作业为基本单位从外存调入内存的;

周转时间 = 完成时间 - 到达时间;

带权周转时间 = 周转时间 / 服务时间;

P2- 20

进程调度的任务

  1. 保存处理机的现场信息
  2. 按某种算法选取进程
  3. 把处理器分配给进程

产生死锁的必要条件

任一条件不成立,死锁就不会发生:

  1. 互斥条件

    在一段时间内,某资源只能被一个进程占用,其他请求的资源只能等待。

  2. 请求和保持条件

    进程保持了至少一个资源,请求新资源的时候被阻塞,对自己已获得的资源保持不放

  3. 不可抢占条件

    进程已获得的资源在未使用完之前不能被抢占

  4. 循环等待条件

    进程-资源 循环链

产生死锁的根本原因:

系统资源不足

不产生死锁的最小资源数

设系统所拥有的资源总数为M,共享该资源的进程数为P,每个进程所需使用该资源的最大需求为N,则 M≥P(N-1)+1* 时 无论如何分配都不会产生死锁。

处理死锁的方法

  1. 预防死锁

    设置某些限制条件去破坏产生死锁的必要条件

  2. 避免死锁

    在动态分配的过程中用某种方法阻止系统进入不安全状态

  3. 检测死锁

    事前不采取措施,通过检测机构及时检测出死锁的发生,采取适当措施

  4. 解除死锁

    检测到死锁时采取相应措施,常用方法:撤销一些进程,回收资源,将它们分配给阻塞状态的进程

银行家算法

安全状态找到安全序列

  • 可利用资源向量Available,Available[j]=K,表示系统中现有j类资源K个
  • 最大需求矩阵Max,Max[i,j]=K,表示进程i需要j类资源的最大数目为K
  • 分配矩阵Allocationm,Allocation[i,j]=K,表示进程i当前已分得j类资源的数目为K
  • 需求矩阵Need,Need[i,j]=K,表示进程i还需要j类资源K个
  • Need[i, j]=Max[i, j]-Allocation[i, j]

Request i是进程Pi的请求向量,如果Request i[j]=K,表示进程Pi需要K个j类型的资源。当Pi发出资源请求后,系统按下述步骤进行检查:

  1. 如果Request i[j]≤Need[i,j],转向步骤(2); //所求的资源数必须小于总共宣布需要资源的最大数

    否则认为出错,因为它所需要的资源数已超过它所宣布的最大值。

  2. 如果Requesti[j]≤Available[j],便转向步骤(3);否则,表示尚无足够资源,Pi须等待。

  3. 系统试探着把资源分配给进程P i,并修改下面数据结构中的数值:

    Available[j]:= Available[j]-Request i[j];//可用的减少了

    Allocation[i,j]:= Allocation[i,j]+Request i[j];//已配分的增加了

    Need[i,j]:= Need[i,j]-Request i[j];//还需要的也减少了

  4. 执行安全性算法,安全了才正式分配资源,否则作废,让进程等待

安全性算法

  1. 设置两个向量:

    1. 工作向量Work,它表示系统可提供给进程继续运行所需的各类资源数目,它含有m个元素,在执行安全算法开始时,Work=Available。
    2. Finish,它表示系统是否有足够的资源分配给进程,使之运行完成。开始时先做Finish[i]:=false;当有足够资源分配给进程时,再令Finish[i]:=true。
  2. 从进程集合中找到一个能满足下述条件的进程:

    ① Finish[i]=false;//资源未分配

    ② Need[i,j]≤Work[j];//资源足够分配

    ​ 若找到,执行步骤(3),否则,执行步骤(4)。

  3. 当进程Pi获得资源后,可顺利执行,直至完成,并释放出分配给它的资源,故应执行

    Work[j]:= Work[j]+Allocation[i,j];//释放资源

    Finish[i]:=true;//设置完成标志

    go to step 2; //继续寻找下一个

1.何谓死锁?产生死锁的原因和必要条件是什么?

死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,当进程处于这种僵持状态时,若无外力作用,它们都将无法再向前推进。

产生死锁的原因为竞争资源和进程间推进顺序非法。其必要条件是:互斥条件、请求和保持条件、不可抢占条件、循环等待条件。

2.请详细说明可通过哪些途径预防死锁

  • 破坏“请求和保持”条件,就是如果系统有足够资源,便一次性把进程需要的所
    有资源分配给它;只分配给进程初期所需要的资源,进程运行过程中再逐步释放用毕的资源,再请求新资源。
  • 破坏“不可抢占”条件,就是已经拥有资源的进程,当它提出新资源请求而不能立即
    满足时,必须释放它已保持的所有资源,待以后需要时再重新申请;
  • 破坏“循环等待”条件,就是将所有资源按类型排序标号,所有进程对资源的请求必须严格按序号递增的次序提出。

3.在银行家算法中,若出现下述资源分配情况,试问:

process Allocation Need Available
P0 0 0 3 2 0 0 1 2 1 6 2 2
P1 1 0 0 0 1 7 5 0
P2 1 3 5 4 2 3 5 6
P3 0 3 3 2 0 6 5 2
P4 0 0 1 4 0 6 5 6
  1. 该状态是否安全

答:利用安全性算法对此刻资源分配情况进行分析,如表所示:

process Work Need Allocation work+allocation Finish
P0 1 6 2 2 0 0 1 2 0 0 3 2 1 6 5 4 true
P3 1 6 5 4 0 6 5 2 0 3 3 2 1 9 8 6 true
P4 1 9 8 6 0 6 5 6 0 0 1 4 1 9 9 10 true
P1 1 9 9 10 1 7 5 0 1 0 0 0 2 9 9 10 true
P2 2 9 9 10 2 3 5 6 1 3 5 4 3 12 14 14 true

可知,存在一个安全序列{P0,P3,P4,P1,P2},所以该状态是安全的。

  1. 若进程P2提出请求Request(1,2,2,2)后,系统能否将资源分配给它?

答:P2提出请求,按银行家算法进行检查:

Request(1,2,2,2) ≤ Need2(2,3,5,6) //第一个表P2那一行的Need

Request(1,2,2,2) ≤ Available(1,6,2,2) //第一个表的Available

试分配资源,修改Allocation2、Need2、Available的值:

Available = Available(1,6,2,2) - Request(1,2,2,2) = (0,4,0,0)
Need2 = Need(2,3,5,6) - Request(1,2,2,2) = (1,1,3,4)
Allocation2 = Allocation(1,3,5,4) + Request(1,2,2,2) = (2,5,7,6)

修改表如下(修改部分用粗体表示):

process Allocation Need Available
P0 0 0 3 2 0 0 1 2 0 4 0 0
P1 1 0 0 0 1 7 5 0
P2 2 5 7 6 1 1 3 4
P3 0 3 3 2 0 6 5 2
P4 0 0 1 4 0 6 5 6

利用安全性算法检查此时是否安全:

process Work Need Allocation work+allocation Finish
P0 0 4 0 0 0 0 1 2 0 0 3 2 0 4 3 2 true
0 4 3 2 false

经检查,Available(0,4,0,0)不能满足任何进程的需要,系统进入不安全状态,此时系统不分配资源。

第四章

基于顺序搜索的动态分区分配算法

  1. 首次适应 FF算法

    要求空闲分区链以地址递增的次序链接;分配内存时,从链首开始顺序查找,找到大小满足的内存空间就分配,找不到失败返回;

    优:保留高址部分大空闲区

    缺:低地址内存碎片化,查找开销大

  2. 循环首次适应 NF算法

    从上次找到的空闲分区的下一个空闲分区开始查找;

    优:内存中空闲分区分布均匀,减少查找开销

    缺:缺乏大的空闲分区

  3. 最佳适应 BF算法

    总是把能满足要求、又是最小的空闲分配给作业;将所有空闲分区按容量从小到大形成空闲分区链;

    优:似乎是最佳的

    缺:每次分配后切割下来的部分是最小的,留下难以利用的碎片

  4. 最坏适应 WF算法

    与最佳相反,把最大的空闲区分割一部分内存给作业使用;将所有空闲分区按容量从小到大形成空闲分区链;

    优:剩下的空闲区不至于太小,产生碎片可能性小,利于中、小作业

    缺:缺乏大空闲区

分页式存储管理

将进程的逻辑地址空间分成若干个,从0开始编号(第0页、第1页…);

把内存的物理地址空间分成若干个,编号(0#块、1#块…);

为进程分配内存时,以为单位,把装入可以不相邻中 即

一个作业的若干连续的页,可以分配到内存中若干不连续的块中。

页面大小是2的幂,通常为1KB~8KB;

物理地址=块号B×页大小+页内位移W

对某特定机器,地址结构是一定的。给定一个逻辑地址空间中的地址为A,页面大小为L,则页号P 和页内地址d可由公式求:P = INT[A/L], d = A % L

INT是整除,%是取余数;

eg.系统页面大小为1KB,设A = 2170B,求得P = 2, d = 122。

1KB = 1024B

2170 / 1024 = 2 ··· 122

所以 P = 2, d = 122

页表:实现页号到物理块号的地址映射;因为各个页离散地存储在内存的任一物理块中。

1.什么是页面?什么是物理块?页面的大小如何确定?

  • 页面:分页存储管理将进程的逻辑地址空间分成若干个页,并为各页加以编号。

  • 物理块:把内存的物理地址空间分成若干个块,并为各块加以编号。

  • 页面大小应选择适中,且页面大小应该是2的幂,通常为1KB~8KB。

2.什么是页表?页表的作用是什么?

页表是分页式存储管理使用的数据结构。一个进程分为多少页, 它的页表就有多少行。 每一行记录进程的一页和它存放的物理块的页号、块号对应关系。

页表用于实现页号到物理块号的地址映射。

3.为实现分页存储管理,需要哪些硬件支持?

需要有页表机制、地址变换机构的硬件支持

4.在分页系统中是如何实现地址变换的?

利用地址变换机构实现从逻辑地址到物理地址的转变换,通过页表实现从页号到物理号的变换,将逻辑地址中的页号转换为内存中的物理块号。

5.分页和分段存储管理有何区别?

  1. 页是信息的物理单位,分页仅仅是系统管理上的需要,是系统的行为,对用户不可见;

    段是信息的逻辑单位,分段的主要目的在于更好地满足用户。

  2. 页的大小固定且由系统决定;

    段的长度不固定,由用户编写的程序决定。

  3. 分页的用户程序地址是单一的线性地址空间;

    分段的用户程序地址是二维的,标识一个地址时要给出段名和段内地址。

第五章

虚拟内存

将用户逻辑内存和物理分开;

可以通过以下机制实现:

  • 请求页面调度

  • 请求分段调度

程序运行前,不需全部装入内存(打破一次性)

虚拟存储器的特征:

  1. 离散性。内存分配时采用离散分配的方式。
  2. 多次性。一个作业被分成多次调入内存运行。
  3. 对换性。允许在作业运行过程中换进换出;不用的程序和数据调至外存。
  4. 虚拟性。能够从逻辑上扩充内存容量使用户看到的远大于实际的。

请求分页存储管理方式

请求分页中的硬件支持

  1. 请求页表机制
  2. 缺页中断机构
  3. 地址变换机构

缺页率

如果在进程的运行过程中,访问页面成功(即所访问页面在内存中)的次数为S,访问页面失败(即所访问页面不在内存中,需要从外存调入)的次数为F,则该进程总的页面访问次数为A = S + F,那么该进程在其运行过程中的缺页率即为 f = F / A

页面置换算法

程序运行过程中,如果要访问的页面不在内存则需调入,但内存已经没有空闲空间时,必须从内存中调出一页程序或数据送到磁盘的对换区,根据一定算法决定将哪个页面调出–页面置换算法

  • 最佳置换算法

    页面走向往后面(右)看,最长时间不被访问的,替换掉

  • 先进先出置换算法

    替换掉先进来的

  • 最近最久未使用置换算法

    页面走向往前(左)看,最久没访问的,替换掉

  • 最少使用置换算法

    使用频率

1.虚拟存储器有哪些特征?其中最本质的特征是什么?

虚拟存储器有多次性、对换性、虚拟性三大特征。最本质的特征是虚拟性。

2.实现虚拟存储器需要哪几个关键技术?

  1. 在分页请求系统中是在分页的基础上,增加了请求调页功能和页面置换功能所形成的页式虚拟存储系统。允许只装入少数页面的程序(及数据),便启动运行。

  2. 在请求分段系统中是在分段系统的基础上,增加了请求调段及分段置换功能后形成的段式虚拟存储系统。允许只装入少数段(而非所有段)的用户程序和数据,即可启动运行。

3.试说明请求分页系统中的地址变换过程

  1. 取逻辑地址分解为页号P和页内偏移w;

  2. 根据页号查找页表,获得该页的描述信息;

  3. 若该页中断位为1,产生缺页中断;

  4. 更新该页的描述信息;

  5. 根据页块号和页内偏移w,计算物理地址。

4.在请求分页系统中,常采用哪几种页面置换算法?

采用的页面置换算法有:最佳置换算法和先进先出置换算法,最近最久未使用(LRU)置换算法,Clock置换算法,最少使用置换算法,页面缓冲算法等。

5.为了实现请求分段式存储管理,应在系统中增加配置哪些硬件结构?

请求段表机制、缺段中断机制和地址变换机构。

6.说明请求分段系统中的缺页中断处理过程

请求分段系统中的缺页中断处理过程描述如下:

  1. 根据当前执行指令中的逻辑地址查页表,判断该页是否在主存储器中
  2. 该页标志为“0”形成缺页中断,中断装置通过交换PSW让操作系统的中断处理程序占用处理器。
  3. 操作系统处理缺页中断处理的办法是查主存分配表找一个空闲的主存块,查页表找出该页在磁盘上位置,启动磁盘读出该页信息。
  4. 把从磁盘上读出的信息装入找到的主存块中。
  5. 当页面住处被装入主存后,应修改页表中对应的表目,填上该页所占用的主存块把标志置为“1”,表示该页已在主存储器中
  6. 由于产生缺页中断时的那条指令并没执行完,所以在把页面装入之后应重新执行被中断指令。

第六章

1.简要说明I/O软件的四个层次的基本结构

  1. 用户层I/O软件,实现与用户交互的接口,用户可直接调用该层所提供的、与IO操作有关的库函数对设备进行操作。
  2. 设备独立性软件,用于实现用户程序与设备驱动器的统接口、设备命名、设备的保护以及设备的分配与释放等,同时为设备管理和数据传送提供必要的存储空间。
  3. 设备驱动程序,与硬件直接相关,用于具体实现系统对设备发出的操作指令,驱动I/O设备工作的驱动程序。
  4. 中断处理程序,用于保存被中断进程的CPU环境,转入相应的中断处理程序进行处理,处理完毕再恢复被中断进程的现场后,返回到被中断的进程。

2.与设备无关性的基本含义是什么?为什么要设置该层?

为了提高OS的可适应性和可扩展性,在现代OS中都毫无例外地实现了设备独立性,也称设备无关性。基本含义:应用程序独立于具体使用的物理设备。为了实现设备独立性而引入了逻辑设备和物理设备两概念。在应用程序中,使用逻辑设备名称来请求使用某类设备;而系统在实际执行时,还必须使用物理设备名称。
优点:

设备分配时的灵活性
易于实现I/0重定向(用于I/0操作的设备可以更换(即重定向),而不必改变应用程序。

3.为什么说中断是OS赖以生存的基础?

因为进程之间的切换是靠中断来完成的。中断也是设备管理的基础。

4.简要说明中断处理进行处理的几个步骤

  1. 测定是否有未响应的中断信号
  2. 保护被中断进程的CPU环境
  3. 转入相应的设备处理程序
  4. 中断处理
  5. 恢复CPU的现场并退出中断

5.有哪几种I/O控制方式?各适用于何种场合?

  1. 使用轮询的可编程I/O方式。早期计算机无中断机构,处理机对I/O设备的控制采用程序I/O方式或称忙等的方式
  2. 使用中断的可编程I/O方式。适用于有中断机构的计算机系统中。
  3. 直接存储器访问(DMA)方式:适用于具有DMA控制器的计算机系统中。
  4. I/O 通道控制方式:具有通道程序的计算机系统中。

6.何谓虚拟设备?实现设备虚拟时所依赖的关键技术是什么?

设备虚拟是指把独占设备经过某种技术处理改造成虚拟设备。

可虚拟设备是指一台物理设备在采用虚拟技术后,可变成多台逻辑上的虚拟设备,则可虚拟设备是可共享的设备,将它同时分配给多个进程使用,并对这些访问该物理设备的先后次序进行控制。

7.磁盘访问时间由哪几部分组成?每部分时间应如何计算?

磁盘访问时间由寻道时间Ts、旋转延迟时间Tr、传输时间Tt 三部分组成。

  1. Ts 是启动磁臂时间s 与磁头移动n条磁道的时间和,即Ts = m × n + s。
  2. Tr是指定扇区移动到磁头下面所经历的时间。硬盘15000r/min时Tr为2ms;软盘300或600r/min时Tr为50~100ms。
  3. Tt 是指数据从磁盘读出或向磁盘写入经历的时间。Tt的大小与每次读/写的字节数b和旋转速度有关:Tt = b/rN。

判断题

  1. 计算机系统的资源包括程序和数据两大部分。 F

    硬件和程序

  2. 若把计算机系统分为若干层次,则按由上而下顺序可分为应用系统与应用软件、操作系统、其它系统软件和裸机。 F

  3. 分时系统的用户具有独占性,因此一个用户可以独占计算机系统的资源。 F

    多路性、独立性、及时性、交互性;“像独占时一样”;共享主机

  4. 操作系统属于最重要的、最不可缺少的应用软件。F

    操作系统是系统软件

  5. 批处理系统不允许用户随时干涉自己程序的运行。T

  6. 操作系统虚拟机在逻辑功能上与裸机一样,具有一个物理实体。 F

  7. 多道程序的执行失去了封闭性和再现性,因此多道程序系统中引入进程的概念。T

  8. 操作系统的进程管理是整个操作系统管理中的核心,它包含了进程的调度、协调以及进程通信。T

  9. ++运算符的操作数必须是变量。T

  10. 从信息的输入输出角度来说,磁盘驱动器和磁带机既可以看作输入设备,又可以看作输出设备。 T

  11. 页式管理易于实现不同进程间的信息共享。 F

    分段系统允许若干进程共享一个或多个分段

  12. 段页式存储管理是通过请求调入和替换功能,对内外存进行统一管理,为用户提供了比实际内存容量大的多的物理存储空间。 F

    虚拟存储技术通过请求调入和替换功能,对内外存进行统一管理,为用户提供了似乎比实际内存容量大的多的物理存储空间

  13. 分页式存储管理中,页的大小是可以不相等的。F

  14. 分区管理取消了存储分配连续性要求,使一个作业的地址空间在内存中可以是若干个不一定连续的区域。F

    是分页管理

  15. 多线程是指将CPU资源按时间片分配到多个任务上,看似并行工作,实质上在同一时刻只有一个线程在工作;在一段时间之内,是多个线程在同时工作。T

  16. SPOOLing 技术可以解决进程使用设备死锁问题。F

    SPOOLing 技术是将独占的字符设备转变为共享的字符设备

  17. 缺页中断是在指令执行期间产生和处理中断信号,而非一条指令执行之后。T

  18. 死锁产生,必须要满足四个必要条件,所以,为避免死锁产生,主要注意如何不让这四个必要条件成立,并打破循环等待资源的环路。T

  19. 在请求分页式存储管理中,页面的调入、调出只能在内存和对换区之间进行。T

  20. 使某个事务永远处于等待状态,而得不到执行的现象称为死锁。F

    一组进程中的每个进程都在等待另一个死锁进程所占有的资源

  21. 在分页时,每个进程拥有一个页表,且页表驻留在内存中。T

  22. 设计实时操作系统时,首先应该考虑系统的优良性和分配性。F

    实时性和可靠性

  23. 在请求分页式系统中,以页为单位管理用户的虚空间,以段为单位管理内存空间。F

    以块为单位管理内存

  24. 固定内存分配会产生内碎片。T

  25. 产生死锁的原因之一是对计算机操作不当,造成计算机死机。F

    互斥、请求和保持、不可抢占、循环等待

  26. 相对于简单分页管理来说,请求页式管理是“用时间换取了空间”,这是该种管理方式的一个缺点。T

  27. 段式管理便于处理动态变化的数据结构,便于动态链接,便于分段共享。T

  28. 为提高请求分页系统中内存的利用率,允许用户使用不同大小的页面。F

  29. 在银行家算法中,对某时刻的资源分配情况进行安全分析,如果该时刻状态是安全的,则存在一个安全序列,且这个安全序列是唯一的。F

    并非唯一

  30. 请求分页管理过程中,作业地址空间同样受到内存容量大小的限制。F

  31. 页式的地址是一维的,段式的地址是二维的。T

  32. 静态分配是指在目标程序运行之前完成的存储分配。例如分区管理和分页管理。F

    例如后面是错的

  33. 碎片的总容量如果超过某个作业申请的容量,就可以将其再次分配给该作业。F

  34. 适于动态查找表进行高效率查找的组织结构是分块有序表。F

    是二叉排序树

  35. 在分页管理中所产生的内存碎片,最多小于帧的大小。T

  36. 死锁是不能解除的只能预防。F

    可以终结进程来解除

  37. 在分页内存管理中 ,CPU每次从内存中取一个数据需要1次内存访问。F

    最好2次(页号、块号),最坏3次(页表、页号、块号)。

  38. 空闲表法属于连续分配方式。T

  39. 数据库文件是一种无结构的字符流式文件。F

    是有结构的记录式文件

  40. 用户在使用I/O设备时,通常采用物理设备名,指明具体的设备。F

    采用逻辑设备名

  41. 通过对用户分类和限定各类用户对目录和文件的访问权限来保护系统中目录和文件的安全,这种文件安全管理方式指的是系统级安全管理。F

    是用户级安全管理。管理方式:系统级、用户级、目录级、文件级

  42. 以追加模式打开文件时,文件指针指向文件尾。T

  43. 打开文件的目的是指该文件的有关目录表目复制到主存中约定的区域,以建立用户和该文件的联系。T

  44. 系统与设备间的协调主要是速度上的协调,要解决快速处理器与慢速的I/O设备间的操作匹配矛盾,只有通过建立硬件缓冲区的方法。F

  45. 为了提高检索速度和减小指针所占用的存储空间,可以将几个盘块组成一个簇。T

  46. 位示图方法可用于磁盘的调度管理。F

    用于盘空间的管理

  47. 文件系统中分配存储空间的基本单位是记录。F

    是数据块

  48. 对文件进行读写操作之后必须显式关闭文件以确保所有内容都得到保存。T

  49. 在I/O控制的多种方式中,传输速率高,对主机影响少的方式最好。T

  50. 索引文件是一种对文件存储进行连续分配的方式,文件系统为每个文件另建一张指示逻辑记录和物理块之间的对应关系的表,即索引表,文件本身和索引表组成的文件即是索引文件。F

  51. 文件系统中,系统修改某文件内容,只要修改文件中对应数据信息即可。F

  52. I/O通道控制方式不需要任何CPU干预。F

    进一步减少CPU的干预。CPU干预程度:中断>DMA>通道控制

  53. 以写模式打开的文件无法进读操作。T

  54. 文件系统最基本的功能是实现按名存取。T

  55. 多级目录结构中,重名问题得到了解决,同一目录中文件或目录重名是允许的。F

    不同目录下允许重名

  56. 采取顺序文件结构,连续存取一批相邻的记录时,存取速度很慢。F

单选题

  1. “中断”的概念是指_____ 暂停处理机对现行程序的执行

  2. ______不是操作系统关心的主要问题. 高级程序设计语言的编译器

  3. 在设计实时操作系统时,首先要考虑的是()实时性和可靠性

  4. 下面各项中, 不是操作系统的基本特征。交互性

    A.异步 B.交互性 C.虚拟 D.并发和共享

  5. 在设计分时操作系统时,首先要考虑的是()交互性和响应时间

  6. 在计算机系统中配置操作系统的主要目的是()提高系统资源的利用率

  7. 操作系统通过()对进程进行管理。PCB

  8. 在()操作系统的控制下,计算机系统能及时处理由过程控制反馈的数据并作出响应。实时

  9. 多道程序环境中,操作系统分配资源以__为基本单位。进程

  10. 下面哪一项不是引入操作系统的主要目的是 。及时响应用户请求

    A.更有效地利用软、硬件资源 B.及时响应用户请求

    C.改善系统性能 D.方便用户使用

  11. 用户在程序设计过程中,可通过()获得操作系统的服务。系统调用

  12. 下面叙述中正确的是 。A

    A.进程同步是指某些进程之间在逻辑上的相互制约关系

    B.为了避免发生死锁,各进程只能逐个申请资源

    C.操作系统用PCB管理进程,用户进程可以从PCB中读出与本身运行状态有关的信息

    D.操作系统的一个重要概念是进程,因此不同进程所执行的代码也一定不同

  13. 下列哪一项不是典型计算机系统的主要组成部分? 操作系统

    A.中央处理器 B.操作系统 C.辅存 D.内存

  14. 分时操作系统的特点是**__** 交互性、同时性(多路性)、独立性、及时性

  15. 对出现的中断事件是由 ____ 进行处理的。操作系统

  16. 分时操作系统通常采用 策略为用户服务。时间片轮转

  17. 在计算机系统中,操作系统是()。处于裸机之上的第一层软件

  18. 在设计批处理操作系统时,首先要考虑的是()。周转时间和系统吞吐量

  19. 分时操作系统的主要目的是 __ 。计算机系统的交互性

  20. 操作系统的主要功能是管理计算机系统中的资源,其中包括__管理和存储器管理,以及设备管理和文件管理。处理机

  21. 在操作系统中,用户界面指的是 ____ 。命令接口、程序接口和操作环境

  22. 若把操作系统看作计算机系统资源的管理者,下列的 ____ 不属于操作系统管理的资源。中断

  23. 以下描述与操作系统无关的是 。计算机系统的硬件和软件资源的集合

    A.方便用户的程序集合 B.计算机系统的硬件和软件资源的集合

    C.控制和管理计算机系统的硬件和软件资源 D.合理地组织计算机工作流程

  24. 支持多道程序设计的操作系统在运行过程中,不断地选择新进程运行来实现CPU的共享,下列选项中, 不是引起操作系统选择新进程的直接原因。有新进程进入就绪状态

    A.有新进程进入就绪状态 B.运行进程的时间片用完

    C.运行进程出错 D.运行进程要等待某一时件发生

  25. 下列管理功能中,_____ 不属于操作系统的功能。软件管理

    A.软件管理 B.作业管理 C.设备管理 D.处理器管理

  26. 操作系统中,资源分配的基本单位是 进程

  27. 下列叙述中,正确的叙述是 。 C

    A.实现多道程序设计的目的是提高程序员编程的效率

    B.操作系统的目的是为了提高计算精度

    C.在有虚拟存储器的系统中,可以运行比主存容量还大的程序

    D.操作系统必须具备分时系统

  28. 线程是操作系统的重要概念,不具有线程管理的操作系统有 Windows 3.2

    A. Linux B. Windows 3.2 C. Windows NT D. Windows XP

  29. 构成网络操作系统通信机制的是 通信原语

  30. 下列( )应用工作最好采用实时工作平台:1、航空订票 2、办公自动化 3、机床控制 4、AutoCAD 5、工资管理系统 6、股票交易系统 D.1、3、6

    A.1、2、3 B.1、3、4 C.1、5、6 D.1、3、6

  31. 以下有关指令集体系结构的说法中,错误的是( ). B

    A.指令集体系结构位于计算机软件和硬件的交界面上

    B.程序员可见寄存器的长度、功能与编号不属于指令集体系结构的内容

    C.指令集体系结构的英文缩写是ISA

    D.指令集体系结构是指低级语言程序员所看到的概念结构和功能特性

  32. 下列关于常规存储器/非虚拟存储器的论述中,正确的论述是( )。 B

    A.作业在运行前,不必全部装入内存,但在运行过程中必须一直驻留内存

    B.作业在运行前,必须全部装入内存,但在运行过程中不必一直驻留内存

    C.作业在运行前,必须全部装入内存,且在运行过程中也一直驻留内存

    D.作业在运行前,不必全部装入内存,且在运行过程中也不必一直驻留内存

  33. 在采用二级页表的分页系统中,CPU 页表基址寄存器中的内容是: C

    A.当前进程的二级页表的起始虚拟地址

    B.当前进程的一级页表的起始虚拟地址

    C.当前进程的一级页表的起始物理地址

    D.当前进程的二级页表的起始物理地址

  34. 页式虚拟存储管理的主要特点是()。B

    A.不要求进行页面置换

    B.不要求将作业同时全部装入到主存的连续区域

    C.不要求进行缺页中断处理

    D.不要求将作业装入到主存的连续区域

  35. 操作系统是对()进行管理的软件。计算机资源

  36. 在以下存储管理方案中,不适合于多道程序设计系统的是( )。单用户连续分配

    A.页式存储管理 B.固定分区分 C.可变分区分配 D.单用户连续分配

  37. 操作系统负责管理计算机系统的( ),其中包括处理机、内存、外围设备和文件。资源

  38. 在下列操作系统的各个功能组成部分中,_____ 不需要硬件的支持。进程调度

    A.中断系统 B.时钟管理 C.地址影射 D.进程调度

  39. 从用户的观点看,操作系统是 ___ 。A

    A.用户与计算机之间的接口 B.控制和管理计算机资源的软件

    C.由若干层次的程序按一定的结构组成的有机体 D.合理地组织计算机工作流程的软件

  40. 为了进行进程协调,进程之间应当具有一定的联系。这种联系通常采用进程间交换数据的方式进行,这种进程管理称为()。进程通信

  41. 计算机的软件系统通常分为( )。系统软件与应用软件

  42. 对进程的管理和控制使用()。原语

  43. 程序与数据一样,共同存储在存储器中。当程序要运行时,当前准备运行的指令从内存被调入CPU中,由CPU处理这条指令。这种将程序与数据共同存储的思想就是目前绝大多数计算机采用的( )模型的存储程序概念。冯•诺伊曼

  44. 操作系统为( )分配内存空间。进程

  45. 多道程序设计是指 。在一台处理机上同时执行多道程序

  46. 通常,MMU(Memory Management Unit)会改善操作系统存储管理的性能。下列关于Linux存储管理的表述,最准确的是 __. A

    A. Linux使用MMU;但没有MMU的话,Linux也能运转

    B. Linux不用MMU,虽然MMU能改善系统性能

    C. Linux使用MMU;没有MMU,Linux无法运转

    D. Linux不用MMU;MMU对Linux没有意义

  47. 下列选项中对分段存储管理叙述正确的是( ) 每一段必须是连续的存储区

    A.每一段不必是连续的存储区 B.段间的存储区必须是连续的

    C.每一段必须是连续的存储区 D.分段存储管理中每个段必须是大小相等的。

  48. 进程处于()时,它是处于非阻塞状态。 等待操作系统分配CPU时间

    A.等待操作系统分配CPU时间 B.等待从键盘输入数据

    C.等待网络数据进入内存 D.等待协作进程的一个信号

  49. 分区式存储器管理方式,每个程序( )一定在分区中连续,整体存放

  50. 在使用紧缩技术解决外碎片时,如果一个进程正在( )时,则不能在内存中移动。I/O操作

    A.创建 B.处于临界区 C.I/O操作 D.死锁

  51. 虚拟存储管理系统的基础是程序的( )理论。局部性

  52. 下列选项中,在用户态执行的是 。 命令解释程序

    A.时钟中断处理程序 B.缺页处理程序 C.进程调度程序 D.命令解释程序

  53. 逻辑地址是162H,在页式存储管理系统中,页和块的大小均为1K,第0页装入第1块,第1页装入第4块。那么,在程序执行时,CPU将访问的地址是()H。 562

  54. ()是请求分页存储管理方式和基本分页存储管理方式的区别。 不必将作业全部装入内存

  55. 在存储器分层体系结构中,存储器从容量最大到最小的排列顺序是_______。

    辅存一主存一cache—寄存器

  56. 如果分时系统的时间片一定,那么(),则响应时间越长。用户数越多

  57. 以下有关段式存储管理的叙述中,错误的是_______。A

    A.分段方式对低级语言程序员和编译器来说是透明的

    B.每个段表项必须记录对应段在主存的起始位置和段的长度

    C.段是逻辑结构上相对独立的程序块,因此段是可变长的

    D.按程序中实际的段来分配主存,所以分配后的存储块是可变长的

  58. 下列关于页式存储正确的有()。A

    A.在页式存储管理中,若关闭TLB,则每当访问一条指令或存取一个操作数时都要访问2次内存

    B.页式存储方式可以采用静态重定位

    C.页式存储管理当中的页面是为用户所感知的

    D.页式存储管理不会产生内部碎片

  59. 对重定位存储管理方式,应()在整个系统中设置一个重定位寄存器

  60. 下列中断不属于强迫性中断的是_____ 。运行的程序请求分配一块内存

    A.断电 B.传输结束 C.目态程序执行特权指令 D.运行的程序请求分配一块内存

  61. 下列关于Windows NT的说法中,()是错误的。 D

    A. Windows NT中的每一个进程都是对象,有些进程也是可以共享的资源

    B. Windows NT 5.0就是Windows 2000

    C. Windows NT的内核采用微内核的形式

    D. Windows NT中,进程是资源分配和处理机调度的基本单位

  62. 在计算机存储器内表示时,物理地址和逻辑地址相同并且是连续的,称之为( ) 顺序存储结构

  63. 当CPU执行操作系统代码时,称处理机处于 。管态

  64. 以下是有关虚拟存储管理机制中页表的叙述,其中错误的是_______。所有进程都可以访问页表

    A.系统中每个进程有一个页表 B.所有进程都可以访问页表

    C.每个页表项中都包含装入位(有效位) D.页表中每个表项与一个虚页对应

  65. 以下哪一种情况能很好地发挥Cache 的作用?。 程序具有较好的访问局部性

    A.程序中不含有过多的I/O操作 B.程序具有较好的访问局部性

    C.程序的指令间相关度不高 D.程序的大小不超过实际的内存容量

  66. 通常情况下,下列______部件不包含在中央处理器芯片中。DRAM

    A.ALU B.DRAM C.控制器 D.通用寄存器

  67. 链表 - 存储结构链表要求内存中可用存储单元的地址 ▁▁▁▁▁ 。连续或不连续都可以

  68. 文件系统中,使用()管理文件。目录

  69. 下面的( )不是文件的存储结构。 记录式文件

    A.记录式文件 B.索引文件 C.串联文件 D.连续文件

  70. 在下面的I/O控制方式中,需要CPU干预最少的方式是( )I/O通道控制方式

    A.程序I/O方式 B.DMA控制方式 C.I/O通道控制方式 D.中断驱动I/O控制方式

  71. 在创建Linux分区时,至少要创建的两个分区是 ___ 。SWAP/根分区

  72. 文件系统的主要目的是()。实现对文件的按名存取

  73. 文件管理实际上是管理()。外部存储空间

  74. 某系统中磁盘的磁道数为 200(0~199),磁头当前在 184 号磁道上。用户进程提出的磁盘访问请求对应的磁道号依次为 184、187、176、182、199。若采用最短寻道时间优先调度算法(SSTF)完成磁盘访问,则磁头移动的距离(磁道数)是 41

    最短寻道:184->182->187->176->199

    ​ 2 + 5 + 11 + 23 = 41

  75. 下列哪个是文件控制块的缩写( )。FCB

  76. 在安装Linux操作系统时,需要对硬盘分区格式化为特定类型的文件系统,以今年发布的各种Linux系统发行版本为例,系统使用作为缺省的文件系统类型是__ 。 ext4

  77. 下列文件系统中,采用了inode来标识文件的是__ 。 ext4

    A. ntfs B.fat16 C.fat32 D.ext4

  78. assume that a system has 5 processes, their arrival time, length of the CPU-burst time, and priorities (small number implying a smaller priority) are listed below:

    Process Arrival time Burst time Priority
    P1 1 10 3
    P2 2 20 1
    P3 3 3 4
    P4 4 7 3
    P5 5 12 2

    If the scheduler users preemptive priority scheduling algorithm, which process will gain the shortest turnaround time? P2

多选题

  1. 只能在核心态下执行的指令是 。 AB

    A.改变文件内容 B.屏蔽所有中断 C.调用库函数 D.读时钟日期

  2. 在段页式存储管理系统中,内存等分成( D),程序按逻辑模块划分成若干 ( C)。

    A.基址 B.段长 C.段 D.块

  3. 分布式计算机系统具备的基本功能是 。AC

    A.通信、并行计算、资源共享 B.通信、并行计算、存储器共享

    C.通信、并行计算、资源管理 D.并行计算、资源共享、存储器共享

  4. 在首次适应算法中,要求空闲分区按( C)的顺序形成空闲分区链;在最佳适应算法中是按( D)顺序形成空闲分区链;最坏适应算法中是按( B)的顺序形成空闲链。

    A.空闲区起始地址递减 B.空闲区大小递减 C.空闲区起始地址递增 D.空闲区大小递增

填空题

  1. UNIX是一个真正的 用户、 任务的 网格 操作系统。

  2. 在计算机系统中,CPU 是整个系统硬件的核心和基础,而在计算机软件系统中, 操作系统 具有同样的核心和基础作用。

  3. 操作系统中的第一个进程是由 系统初始化 程序建立的一个 空进程 或一个系统主进程。

  4. 操作系统是对计算机进行 控制和管理 的程序,是计算机和 用户 的接口。

  5. 如果一个操作系统兼有批处理操作系统分时操作系统实时操作系统 三者或其中两者的功能,这样的操作系统称为通用操作系统。

  6. 操作系统的5大功能是 处理器管理存储器管理设备管理、文件管理、用户接口。

  7. 操作系统的层次结构中,与 硬件紧密相关 或运行频率较高的模块都安排在紧靠硬件的软件层中,这一部分通常称为内核,它在执行基本操作时,往往是利用 原语操作来实现,该操作具有原子性。

  8. 在操作系统中,使用信号量可以解决进程间的同步互斥问题。

  9. 操作系统中,进程是资源分配调度和管理的最小独立单位,操作系统的各种活动都与进程有关。

  10. 在操作系统中,时钟常有两种用途:报告日历和时间和对资源使用记时。

  11. 在虚拟段式存储管理中,若逻辑地址的段内地址大于段表中该段的段长,则发生 越界中断

  12. 在页式存储器管理系统中,常用的页面淘汰算法有:最佳置换算法,选择淘汰不再使用或最远的将来才使用的页;先进先出置换算法,选择淘汰在内存驻留时间最长的页;

  13. 死锁的检测可以通过 资源分配 图,利用 死锁 定理来实现。

  14. 在请求分页系统中,若逻辑地址中的页号超过页表控制寄存器中的页表长度,则会引起 越界中断 ;否则,若所需的页不在内存中,则会引起 缺页中断

  15. 分页管理的主要任务之一是实现 逻辑页号物理块号 的内存地址映像。

  16. 高级调度 又称为长程调度或作业调度, 中级调度 又称为内存调度。

  17. 采用交换技术获得的好处是以牺牲 CPU时间 为代价的。

  18. 把作业装入内存中随即进行地址变换的方式称为 静态 重定位,而在作业执行期间,当访问到指令或数据时才进行地址变换的方式称为 动态 重定位。

  19. 某页式存储管理系统中,地址寄存器长度为24位,其中页号占14位,则主存的分块大小应该是 1024 字节,程序最多占有 16384 页。

    24-14 = 10 //页号14位,分块地址就是10位

    2 ^ 10 = 1024 //块可以表示的大小为1024B

    2 ^ 14 = 16384

  20. 分页管理的主要任务之一是实现 逻辑页号物理块号 的内存地址映像。

  21. 从计算机设备的数据组织方式分类,设备可以分为块设备和字符,而按设备的共享属性分类,可以分为独占设备、共享设备和虚拟设备

  22. 链接文件可以分布在存储设备中各个存储部位,它可以解决存储器的碎片问题,有利于文件扩充。

  23. 文件的逻辑结构分为有结构的记录式文件无结构的字符流式文件 两种。

  24. 根据文件的性质和用途的不同,可将文件分为三类:系统文件用户文件库文件

  25. 把所有文件的文件目录组织成一个独立的文件,称为目录文件,它是文件系统管理文件的重要依据。常用的目录结构形式有单级两级多级树形

  26. 为了文件的保护和保密,一般为文件的存取设置两级控制:第一级是文件级;第二级是目录级

  27. 在多级目录结构的文件系统中,可以通过路径文件名进行文件访问。

  28. 对索引文件的存取首先查找索引表,然后根据索引表项的地址存取相应的物理块。

  29. UNIX和DOS操作系统都把设备作为一种虚拟文件, 向它操作完成输出功能。

  30. 文件目录就是文件有序块的有序集合。文件目录一般包含基本信息存取控制信息使用信息信息。

  31. 设备分配的具体实现是由操作系统中的设备分配程序负责对提出设备请求的用户(进程)分配设备,这种分配还应包括分配支持部件,如控制器等,以保证分配的完整性。

  32. 引入缓冲技术,有效地改善了系统CPU与I/O设备之间速度不匹配的情况,也减少了I/O设备对CPU的占用率,简化了中断机制,节省了系统开销。

  33. 每一条通道命令规定了设备的一种操作,一般由命令码、内存地址计数及标志码等四部分组成。

  34. 通常的I/O操作通过两种指令实现控制,一种是由操作系统发出的专用I/O指令,另一种是由通道程序提供的。

  35. 设备管理中采用的数据结构有设备控制器控制器控制表通道控制表系统设备表四种。

大题

1.设有4个进程,其执行的先后流图如下图所示。用P、V操作实现其同步

进程Pj 有无前驱 请求信号量 信号量初值 有无后继 释放信号量
P1 NULL NULL NULL P2、P3 S12、S13
P2 P1结束 S12 0 P4 S24
P3 P1结束 S13 0 P4 S34
P4 P2、P3结束 S24、S34 0 NULL NULL

答:按表画得前驱图如下:

计算机操作系统第四版复习+部分课后题+习题_第4张图片

代码框架描述:

var S12,S13,S24,S34;
semaphore = 0, 0, 0, 0;
	begin
		parbegin
			begin 
				P1;//执行自己
				signal(S12);//有后继P2,释放信号量S12
				signal(S13);//有后继P3,释放信号量S13
				end;//结束
			begin wait(S12);P2;signal(S24);end;
			begin wait(S13);P3;signal(S34);end;
			begin wait(S24);wait(S34);P4;end;
		parend
	end

2.在采用页式储存管理的系统中,某进程的逻辑地址空间为4页(每页2048字节),且已知该进程的页面映像表(页表)如下,计算有效逻辑地址4865所对应的物理地址

页号 块号
0 2
1 4
2 6
3 8

地址转换:绝对地址=物理地址 = 块号 * 块长 + 块内地址

答: 4865 / 2048 = 2 ··· 769

得页号P = 2,页内地址d = 769

由页表知道,P = 2对应的块号是6

得物理地址 = 6 * 2048 + 769 = 13057

你可能感兴趣的:(复习,操作系统)