自考操作系统问答题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 操作系统结构设计应追求的目标是什么?
正确性、高效性、维护性、移植性。
2. 在磁盘存储空间管理的位示图法中,确定已知空闲块地址的块号、柱面号的通用公式为:
块号=字号×字长+位号
柱面号=\[块号/柱面上的块数\]
请写出确定空闲块地址的磁头号和扇区号的通用公式。
答案:磁头号=\[(块号mod柱面上的块数)/盘面上的扇区数\]
扇区号=(块号mod柱面上的块数)mod盘面上的扇区数
3. UNIX系统调用close是如何处理的?
清除有关的表项。
检查块设备的缓冲区是否还有信息未写回,若有,则写回设备。
检查是否有其他进程仍打开此设备,若有,则不能关闭此设备。
若无其他进程打开此设备,调用驱动程序中的关闭过程,与设备断开。
4. 什么是线程?简述进程与线程的关系。
线程是进程中可独立执行的子任务。
一个进程中可以有一个或多个线程。
一个进程中的各个线程可以并发执行。
系统为进程分配主存空间,同一进程中的各线程共享该进程的主存空间。
5. 操作系统采用层次结构设计方法有什么优点和难点?
主要优点是有利于系统的设计与调试,主要困难在于层次的划分和安排。
6. 目录结构有一级、二级和树形目录结构。
请简单叙述树形目录结构的优点。
解决了重名问题;
有利于文件分类;
提高检索文件的速度;
能进行存取权限的控制。
7. 简述UNIX中系统调用命令OPEN的处理过程。
(1)分配一个活动索引节点,引用计数i_count加1。
(2)在进程打开文件表和系统打开文件表中分配表项。
(3)调用设备驱动程序检查打开的合法性。
(4)初始化驱动程度的数据结构。
(5)建立进程和设备间的联系。
8. 比较进程同步和进程互斥的异同。
答案:同:两者都是对并发进程竞争共享资源的管理。
异:进程互斥——各进程竞争共享资源没有必然的逻辑顺序。
只要无进程在使用共享资源就允许任一进程去使用。
进程同步——对共享资源的使用有一定的逻辑顺序。
9. 某系统有同类资源m个,供n个进程共享,如果每个进程最多申请x(1≤x≤m)个资源,且各进程的最大需求量之和小于(m+n)个资源,证明该系统不会发生死锁。
证:若系统会死锁,则n(x-1)+1≤m一定不成立
即n(x-1)+1>m成立(2分)
于是nx>m+n-1
推得nx≥m+n(1分)
与题意nx<m+n矛盾,故系统不会死锁。
10. 为什么要研究操作系统的结构?
答案:操作系统是一种程序量大且复杂的系统软件,操作系统是否正确关系到计算机系统的安全,结构良好的操作系统能减少自身的开销且提高计算机系统的效率。
11. 进程与程序有什么区别?为什么要引入进程?
进程是一个程序在一个数据集合上的一次执行,是动态的。
而程序是静止的。
从程序的角度无法描述一个程序同时被多个用户调用时的工作状态,而引入进程后,一个程序被多个用户调用时就形成多个进程,它们能正确反映该程序为各用户服务时的动态执行情况。
12. 简述批处理操作系统的作业调度和作业调度选择作业的必要条件。
采用批处理控制方式的计算机一般均提供SPOOL技术,操作员用预输入命令启动预输入程序,将作业信息存放到输入井中。
操作系统按一定算法从输入井中选取若干作业装入主存,使它们有机会获得CPU运行,这项工作称为“作业调度”。
作业调度选取作业的必要条件是系统中现有的资源能满足被选作业的要求。
13. 简述为了降低换进换出的频率并提高系统效率,UNIX系统的交换进程采用的措施。
换出一个进程时,被其他进程正在共享的正文段不能换出。
当对换区有就绪进程并且内存有足够空间时,立即把它换进。
为了换一个进程而必须换出其他进程时,总是先换出在内存睡眠的进程。
14. 什么是文件的保护?简述实现用户共享文件进行文件保护的方法。
文件的保护是防止文件被破坏和非法访问。
文件可能造成的破坏涉及用户对文件使用权限,具体可有多种方法:
①采用树形目录结构,凡能获得某级目录的使用权限的用户,就能使用该级目录的全部目录和文件的规定权限;
②存取控制表,列出所有用户对所有文件的使用权限;
③文件使用权限,以文件为单位,列出文件主、伙伴和一般用户对该文件的使用权限。
15. 分别叙述无关的并发进程和有交往的并发进程及它们执行时的特征。
无关的并发进程,它们分别在各自的数据集合上操作,且任何一个进程的执行都不
依赖其他的进程。
有交往的并发进程,它们一定共享某些资源,且任何一个进程的执行需依赖其他的进程的执行情况。
16. 试述分区存储管理中提高主存利用率的措施。
采用覆盖技术,对换技术(swapping),移动技术。
合理分区(按大小顺序,按作业大小和出现频率,按作业对空间需求)。
合理分配算法(最优、最差适应算法)。
17. 什么叫文件目录?文件目录中应包含哪些基本内容?
用来标识文件和记录文件情况的信息集合称文件目录,文件目录中的每个目录项与一个文件对应。
应有如下基本内容:文件的控制信息;文件的结构信息;文件的管理信息。
(或用户名、文件名、存取方式、存取权限;存储结构,存放位置,建立日期,保留期限等)
18. 什么叫独占设备?什么叫共享设备?各举一例。
每次只允许一道作业使用的设备称独占设备
例如输入机(或打印机)
允许几道作业同时使用的设备称共享设备
例如只读文件(或磁盘)
19. 说明资源的抢夺式分配策略防止死锁的方法。
当一个进程申请的资源尚未被占用时,系统就把资源分配给该进程;
进程A申请资源r已被进程B占用,若进程B处于等待另一个资源,那么系统将抢夺进程B占用的r分配给进程A,否则,系统让进程A等待资源r;
一个等待资源的进程,只有得到所申请的新资源和所有被抢夺的老资源后,才继续运行。
往往只适用于CPU和主存。
20. 简述Unix系统中文件控制块(FCB)的实现技术和优点。
PCB一分为二,一为16字节的(文件名,ino);另一为inode节点。
优点:前者很小,故在目录中查找一文件的目录项会较快,提高了效率。
21. 试述能起到扩充主存空间的虚拟存储技术的原理。
作业信息保留在磁盘上,装入时,只将其中一部分先装入主存运行,其他部门仅当要使用时才调入。
(1)虚拟存储器的容量由地址结构决定,n位地址容量可达2n。
(2)利用表格(段表、页表)构造一个用户的虚拟空间。
22. 解释什么是逻辑文件和物理文件,它们各有哪些基本形式?
(1)用户按自己的使用要求组成的文件称逻辑文件。
(2)逻辑文件可有流式和记录式两种组织形式。
(3)存放在存储介质上的文件称物理文件。
(4)物理文件可有顺序文件、链接文件、索引文件三种基本形式。
23. 什么叫“驱动调度”?比较“最短寻找时间优先”算法和“电梯调度”算法。
当有多个进程在等待访问磁盘时,系统往往采用一定的调度策略来决定各等待访问者的执行次序,把这项工作称驱动调度。
最短寻找时间优先和电梯调度都是要尽量减少移动臂移动时所花的时间。
但前者不考虑移动臂的移动方向,而后者要考虑臂原移动方向。
24. 说明资源的按序分配策略能防止死锁的原因。
答案:资源按序分配策略把系统中所有资源类给一个不同的编号,并规定系统中任何一个进程申请两个以上资源时,必须先申请编号小的资源,再申请编号大的资源(或必须先申请编号大的资源,再申请编号小的资源),这样破坏了死锁的必要条件“循环等待条件”,从而防止了死锁的发生。
25. 现有一命令行program1|program2,program1和program2为可执行程序,试用重定向机制实现与上述命令同样功能的命令文件。
并写出工作过程。
编辑(如VI)文件,prog(名字可自拟),内容为
program1>tmp(1分)
program2<tmp(1分)
rm tmp(1分)
再使prog成为可执行的
chmod+xprog(1分)
执行prog即可。
26、何谓操作系统的可移植性?怎样才能方便移植?
所谓移植性,是指能否方便地把操作系统从一个硬件环境移植到另一个新的硬件环境之中。
为了能方便地移植,在结构设计时,应尽量减少与硬件直接有关的程序量,且将其独立封装。
27、简要说明设计作业调度程序的原则及采用作业调度算法的必要条件。
原则:
公平性:对用户公平,不能无故或无限制地拖延一个作业的执行。
平衡资源使用:尽可能地使系统资源都处
极大的流量:在单位时间内为尽可能多的作业服务,保证计算机系统的吞吐能力。
必要条件:周转时间和平均周转时间与选用的高度算法。
1. 叙述下列术语并说明他们之间的关系:存储介质、卷、块、文件和记录。
存储介质:可用来记录信息的磁带、硬磁盘组、软磁盘片、卡片等称为存储介质,目前常用的存储介质是磁带和磁盘;卷:把存储介质的物理单位定义为“卷”。
块:存储介质上连续信息所组成的一个区域称为“块”。
块是存储设备与主存储器之间进行信息交换的物理单位,每次总是把一块或几块信息读入主存储器,或把主存储器中的信息写到一块或几块中;
文件:是指逻辑上具有完整意义的信息集合;
记录:是指文件内信息按逻辑上独立的含义划分的信息单位,每个单位称为一个逻辑记录,简称为记录。
3. 操作系统与硬件是如何配合来实现存储保护的?
在连续分配的存储系统中,硬件设置两个寄存器:基址寄存器、限长寄存器,用来限定用户程序执行时可以访问的主存空间范围。
程序执行时,系统对每一个访问主存的地址进行核对:“基址寄存器值≤访问地址≤基址寄存器值+限长寄存器值”成立,则允许访问;否则,不允许访问。
这样就保护了该区域以外的存储信息不受到破坏,一旦程序执行中出错也不会涉及其他程序。
5. SPOOL系统由哪些部分组成?各部分的功能是什么?
SPOOL系统即斯普林系统,主要由以下三部分组成:
(1)预输入程序:负责把一批组织在一起的作业流中的每个作业的初始信息传送到“输入井”保存以备作业执行时使用;
(2)井管理程序:包括井管理读程序和井管理写程序两个功能,井管理读程序负责从输入机上读取文件信息供用户使用,井管理写程序负责把作业执行产生的结果保存到输出井中;
(3)缓输出程序:负责查看输出#中是否有待输出的结果信息,若有,则启动打印机把作业的结果文件打印输出。
2. 操作系统怎样提高系统的效率?
操作系统是一种系统程序,其目的是提供一个供其他程序执行的良好环境。
配置操作系统可以使得计算机系统能高效地工作;操作系统扩充硬件的功能,使硬件的功能发挥的更好;操作系统使用户合理共享资源,防止各用户间的相互干扰;操作系统以文件形式管理软件资源,保证信息的安全和快速存取。
5. 启动磁盘执行一次输入输出操作花费的时间由哪几部分组成?
寻找时间—磁头在移动臂带动下移动到指定柱面所花的时间;
延迟时间—指定扇区旋转到磁头位置下所需要的时间;
传送时间—由磁头进行读写完成信息传送的时间。
1. 解释进程的顺序性和并发性。
答案:目前使用的计算机基本上是冯?诺依曼(Von Neumann)式结构,其基本特点是处理器顺序执行指令。
进程在顺序的处理器上的执行是严格按顺序进行的,这就是进程的顺序性。
当一个进程独占处理器顺序执行时,具有两个特性:
(1)封闭性,进程执行的结果只取决于进程本身,不受外界影响;
(2)可再现性,当进程再次重复执行时,必定获得相同的结果。
在多道程序设计的系统中,若干个作业可以同时执行,而每一个作业又需要有许多个进程的协作来完成,因此,系统中会同时存在着许多进程,在单处理器的情况下,这些进程要竞争处理器。
进程具有并发性。
并发进程相互之间可能是无关的,也可能是有交往的。
这些有交往的进程共享某些资源,因此并发进程具有以下特点:
(1)间断性,多个进程竞争处理器,进程执行具有间断性特点;
(2)通信性,进程之间特点是合作进程之间发送有关消息,以协调运行;
(3)不可再现性,程序执行失去了封闭性和可再现性。
2. 批处理操作系统是怎样实现计算机操作自动化的?
用户把准备好的一批作业信息,包括程序、数据、作业控制说明书通过相应的输入设备传送到大容量的磁盘上等待处理。
操作系统中的作业调度程序按照某种原则从磁盘上选择若干作业装入主存储器,主存储器中的这些作业可以占用中央处理器运行。
当某个作业执行结束时,启动打印机,输出计算机结果。
然后又可从磁盘上选择作业装入主存储器,让其运行。
这样,在作业控制说明书的控制下,无需人为干预,批处理操作系统实现了计算机操作的自动化。
4. 存储管理具有哪些功能?
存储管理的功能如下:
(1)主存空间的分配和去配;
(2)实现地址转换;
(3)主存空间的共享和保护;
(4)主存空间的扩充
1. 什么是“前台”作业、“后台”作业?为什么对“前台”作业要及时响应?
批处理操作系统实现自动控制无需人为干预,分时操作系统实现了人机交互对话,这两种操作系统具有各自的优点。
为了充分发挥批处理系统和分时系统的优点,在一个计算机系统上配置的操作系统往往既具有批处理能力,有提供分时交互的能力。
这样,用户可以先在分时系统的控制下,以交互式输入、调试和修改自己的程序;然后,可以把调试好的程序转交给批处理系统自动控制其执行而产生结果。
这些由分时系统控制的作业称为“前台”作业,而那些由批处理系统控制的作业称为“后台”作业。
在这样的系统中,对前台作业应该及时响应,使用户满意;对后台作业可以按一定的原则进行组合,以提高系统的效率。
3. 请阐述解决死锁问题的具体途径包括哪些?
死锁问题的解决有多种途径:
(1)死锁的防止是通过破坏死锁四个必要条件中的任何一个实现的;
(2)死锁的避免是通过避免进程进入不安全状态来实现的;
(3)死锁的检测和解除是配合使用的,当系统检测到出现死锁状态时,就通过死锁解除方法来解除死锁。
5. 可变分区存储管理可采用的存储分配算法有哪几种
系统在寻找空闲区时可采用以下三种分配算法。
(1)首先适应算法。
在空闲表中选取第一个满足申请长度的空闲区。
(2)最佳适应算法。
在空闲区表中选择能满足申请长度的最小空闲区。
(2)最坏适应算法。
在空闲区表中选择能满足申请要求的最大的空闲区。
1. 什么是进程队列?具有什么作用?
在多道程序设计的系统中,往往会同时创建许多进程,这些进程处于不同的状态。
为了便于管理,经常把处于相同状态的进程链接在一起,成为“进程队列”。
就绪队列:若干个等待运行的进程一一就绪进程按一定的次序链接起来的队列;
等待队列:等待资源或等待某些事件的进程组成的队列,有时可以把等待队列按等待的原因分成若干个相应的等待队列。
进程队列是操作系统管理进程的一种数据组织。
2. UNIX进程有什么特点?它有哪两种执行环境?
在UNIX系统中,进程由三部分组成:进程控制块、正文段和数据段。
由于操作系统要管理系统中各种资源以及进行各种控制活动,而用户程序只应在操作系统的管理和控制下执行,所以UNIX进程有两种执行环境,即核心态和用户态。
操作系统程序在核心态执行,用户程序在用户态执行。
进程在不同的状态下执行时拥有不同的权力。
3. 中断分为哪几种类型,给出各自的含义。
(1)硬件故障中断。
它是由于机器故障造成的,例如,电源故障、主存出错等。
(2)程序中断。
这是由于程序执行到某条机器指令时可能出现的各种问题而引起的中断。
(3)外部中断。
这是由各种外部事件引起的中断。
(4)输入输出中断。
输入输出控制系统发现外围设备完成了输入输出操作或在执行输入输出操作时通道或外围设备产生错误而引起的中断。
(5)访管中断。
它是正在运行的进程为了请求调用操作系统的某个功能而执行一条“访管指令”所引起的中断,例如,用户要求分配一台外围设备、要求分配一些主存区域,要求启动外围设备读一批数据等。
4. 作业调度与进程调度之间的区别和关系是怎样的?
作业调度是指按一定的策略从“输入井”中选择资源能得到满足的作业装入主存储器,使作业有机会去占用处理器执行。
而一个作业能否占用处理器、何时占用处理器则是由进程调度来决定。
进程调度是指按照一定调度策略从就绪队列中选择一个进程,让它占用处理器。
5. 为什么说在多道程序设计系统中,并行工作道数与系统效率不能成正比?
从表面上看,增加并行工作道数就可提高系统效率,但实际上并行工作道数与系统效率是不成正比的,因为并行的道数要根据系统配置的资源和用户对资源的要求而定:
(1)主存储器的大小限制了可同时装入的程序数量;
(2)外围设备的数量也是一个制约条件;
(3)多个程序同时要求使用同一资源的情况也会经常发生。
2. 什么叫死锁?什么原因会引起死锁?
答案:当若系统中存在一组进程,他们中的每一个进程都占用了某种资源而又都在等待其中另一个进程所占用的资源,这种等待永远不能结束,则说系统出现了“死锁”,或说这组进程处于“死锁”状态。
引起死锁的原因包括:
(1)若干进程需求资源的总数大于系统能提供的资源数时,进程间就会出现竞争资源的现象;
(2)在多道系统中,不同进程是并发执行的,而并发进程的执行速度是不可预知的,这样,死锁的出现又与并发进程的执行速度有关。
3. 时间片轮转调度算法中,时间片值的选取对系统有什么影响?
时间片值的大小关系到计算机系统的效率和用户的满意度,所以,时间片的值应根据进程要求系统给出应答的时间和进入系统的进程数来决定。
如果要求系统快速应答则时间片小一些,这样使轮转一遍的总时间减少而可对进程尽快应答。
如果进程数少,则时间片可以大一些,这样可减少进程调度的次数,提高系统效率。
4. 是什么影响请求分页系统中的缺页中断率的?
影响缺页中断率的因素有:
(1)分配给作业的主存块数,一般分配给作业的主存块数越多,缺页中断率越低;
(2)页面的大小,页面的大小取决于主存分块的大小,页面越大,装入主存的作业信息越多,缺页中断率也就越低;
(3)编制程序的方法,缺页中断率与程序的局部化程度密切相关;
(4)页面调度算法,页面调度算法对缺页中断率影响也很大,调度不好就会出现“抖动”,提高缺页中断率。
1. 给出系统总体上的中断处理过程。
CPU每执行完一条指令就去扫描中断寄存器,检查是否有中断发生,若没有中断就继续执行下条指令;若有中断发生就转去执行相应的中断处理程序。
中断处理过程可粗略的分为以下四个过程。
(1)保护当前正在运行程序的现场;
(2)分析是何种中断,以便转去执行相应的中断处理程序;
(3)执行相应的中断处理程序;
(4)恢复被中断程序的现场。
2. 固定分区存储管理如何进行存储保护?
当一个已经被装入主存储器的作业能够得到处理器运行时,进程调度应记录当前运行作业所在的分区号,且把该分区的下限地址和上限地址分别送入下限寄存器和上限寄存器中。
处理器执行该作业的指令时必须核对访问的“绝对地址”是否满足,
下限地址<=绝对地址<上限地址
如果上述不等式不成立,则产生“地址越界”,中断事件,停止执行该指令以达到存储保护的目的。
运行的作业在让出处理器时,调度程序选择另一个可运行的作业,同时修改当前运行作业的分区号和下限、上限寄存器内容,以保证处理器能控制作业在所在的分区内正确运行。
3. 简述“关闭文件”操作的系统处理过程。
经过“打开”或“建立”的文件,在读/写完毕后,需要执行“关闭文件”操作,以便将该文件的目录信息从主存中撤消。
执行“关闭”操作时要检查读到主存中的文件目录或索引表是否被修改过,若被修改过,则应把修改过的文件目录或索引表重新保存好。
一个关闭后的文件不能再使用,若要再使用,则必须再次执行“打开”操作。
用户提出“关闭”要求时,必须说明关闭哪个文件。
4. 为什么不能屏蔽自愿性中断?
自愿性中断事件是正在运行程序所期待的中断事件,它是正在运行程序为了请求调用操作系统的某个功能服务而执行一条“访管指令”所引起的中断。
当处理器执行到访管指令时就会产生一个自愿中断,自愿中断的是确定的。
自愿中断不同于强迫性中断,强迫性中断不是正在运行程序所期待的,是由于外部的请求或意外而被迫打断正在运行进程的,系统必须响应这些中断。
自愿中断既然是确定中断,是用户程序访问系统功能的手段,所以,自行中断是不能屏蔽的。
1. 中断屏蔽的作用是什么?
中断优先级只是规定了中断装置响应同时出现的中断的次序,当中断装置响应了某个中断后中断处理程序在进行处理时,中断装置也可能去响应另一个中断事件。
因此会出现优先级低的的中断事件的处理打断优先级高的中断事件的处理,使得中断事件的处理顺序与响应顺序不一致,而且会形成多重嵌套处理,使多现场保护、程序返回等工作变得复杂。
中断屏蔽技术就是为了解决上述问题而提出的在一个中断处理没有结束之前不响应其他中断事件,或者只响应比当前级别高的中断事件。
于是,当中断装置检查到有中断事件后,便去查看PSW中中断屏蔽标志,如果没有屏蔽就响应该中断;否则,暂时不响应该中断,待屏蔽标志消除后再响应。
5. 什么是“抢占式优先级调度”和“非抢占式优先级调度”?
采用“非抢占式”调度时,一旦有某个高优先数的进程占用了处理器,就一直让它运行下去直到该进程由于自身的原因主动让出处理器或进程执行结束而让出处理器。
此时,进程调度才重新按优先进数选择另一个占用处理器的进程。
采用“可抢占式”的调度,这种方式是严格保证任何时刻,总是让具有最高优先数的进程在处理器上运行。
也就是说,当某一进程在处理器上运行时,一旦有另一个更高优先数的进程就绪。
1. 操作系统如何处理缺页中断和缺段中断?
操作系统处理缺页中断的方法为:
(1)查主存分配表找一个空闲主存块,若无空闲块,则由页面调度解决;然后查页表找出该页在磁盘上的位置,启动磁盘读出该页信息;
(2)从磁盘上读出的信息装入找到的主存块中;
(3)修改页表中相应表目,表示该页已在主存中;。