第一章:操作系统引论
1. 什么是操作系统?可以从哪些角度阐述操作系统的作用?
答:操作系统是计算机系统中的一个系统软件,是能有效地组织和管理计算机系统中的硬
件和软件资源,合理地组织计算机工作流程,控制程序的执行,并向用户提供各种服务功能,使得用户能够灵活、方便、有效地使用计算机,并使整个计算机系统能高效地运行的一组程序模块的集合。
作用:控制管理计算机的全部硬软件资源,合理组织计算机内部各部件协调工作,为用户提供操作和编辑界面的程序集合。
2、简要叙述批处理操作系统、分时操作系统和实时操作系统的概念及特点。 答:批处理操作系统:通常是把一批作业以脱机方式输入到磁带(磁盘)上,并在系统中配上监督程序(Monitor),在它的控制下使这批作业能一个接一个地连续处理,直到磁带(磁盘)上所有的作业全部完成。其特点:(1)自动性;(2)顺序性。
分时操作系统:是指在一台主机上连接多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中的资源。其特点:(1)多路性;(2)独立性;(3)及时性;(4)交互性。
实时操作系统:是指系统及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行。其特点:(1)多路性;(2)独立性;(3)及时性;(4)交互性;(5)可靠性。 3操作系统需要管理哪些资源?它的基本功能是什么?
答:硬件资源:CPU,打印机等,软件资源:数据,程序等
4操作系统对外提供了哪些接口?
答:(1) 操作系统的命令接口
通过在用户和操作系统之间提供高级通信来控制程序运行,用户通过输入设备发出一系列命令告诉操作系统执行所需功能,它包括了键盘操作命令和作业控制命令,称为作业一级的用
户接口。命令接口的两种最普遍和主要的方式是直接命令方式(命令行)和间接命令方式(命令文件)。
(2) 操作系统的程序接口
它是用户程序和操作系统之间的接口,用户程序通过它们使用系统资源及系统服务,这种接口方式通常采用若干系统调用组成。系统调用是操作系统对外提供的一批系统子功能,是一类特殊的过程调用,由机器指令完成。 (3) 操作系统的交互界面
它直接支持界面和程序界面,提供一个易用性的操作平台,使用户非常方便地寻找和使用各种命令、执行各类程序,完成各种操作。 例:菜单驱动、视窗操作环境等
交互界面要求是友好的,设计时应考虑简化命令、用户响应(提示、求助)和系统后援(命令重呼、确认)等问题
第二章:进程管理
1.PCB有什么作用?PCB中主要包括什么信息?为什么说PCB是进程存在的唯一标志?
答: 操作系统管理的进程是多种多样的,要对这些进程实施有效的管理,必须对进程进行抽象。为了便于系统控制和描述进程的活动,在操作系统核心为进程定义了一个进程控制块PCB。PCB用于描述进程的基本情况以及进程运行和变化的过程,它与进程一一对应。当系统创建进程时,为进程分配一个PCB;在进程运行过程中,系统通过PCB对进程实施管理和控制;进程结束时,系统将收回PCB。
PCB中的内容主要包括调度信息和现场信息两大部分。调度信息包括进程名、进程号、优先级、当前状态、资源信息、程序和数据的位置信息、隶属关系和各种队列指针信息等。现场信息主要包括程序状态字、时钟寄存器和界限寄存器等描述进程运行情况的信息。
在进程的整个生命周期中,系统总是通过其PCB 对进程进行控制,系统是根据进程的PCB 而不是任何别的什么而感知到该进程的存在的,所以说,PCB 是进程存在的唯一标志.
2.请画出完整的进程状态转换图并说出在什么情况下进程会出生何种状态转换。
答:进程状态转换图如下:
3.进程在运行时存在那两种制约关系?并举例说明。
答:1、间接相互制约;2、直接制约关系;
7.进程同步应遵守哪些基本准则?常用的同步机制有哪些?
答:a. 空闲让进.当无进程处于临界区时,表明临界资源处于空闲状态,允许一个请求进入临界区的进程立即进入临界区,以有效利用临界资源
b. 忙则等待.当已有进程处于临界区时,表面临界资源正在被访问,因而其他试图进入临界区的进程必须等待,以保证对临界资源的互斥访问
c. 有限等待.对要求访问临界资源的进程,应保证在有限时间内能进入自己的临界区,以免陷入“死等”状态
d. 让权等待.当进程不能进入自己的临界区时,应立即释放处理机,以免进程陷入“忙等”状态
8.用信号量(signal和wait操作)实现下图所示前趋关系:
9.试比较进程间低级和高级通信工具。当前有哪几种进程间高级通信工具? 答:用户用低级通信工具实现进程通信很不方便,因为其效率低,通信对用户不透明,所
有的操作都必须由程序员来实现,而高级通信工具则可弥补这些缺陷,用户可直接利用操作系统所提供的一组通信命令,高效地传送大量的数据。
第三章:处理机调度与死锁
1.什么是处理机高级、中级和低级调度?各级调度的主要任务是什么?
答:高级调度:又称为作业调度、长程调度,用于决定把外存上处于后备队列中的哪些作业调入内存,并为它们创建进程、分配必要的资源,排在就绪队列上。中级调度:平衡负载调度,中程调度。低级调度:进程调度、短程调度。
高级调度的主要任务:用于决定把外存上处于后备队列中的哪些作业调入内存,并为它们创建进程,分配必要的资源,然后,再将新创建的进程插入就绪队列上,准备执行。 中级调度的主要任务:根据存储资源量和进程的当前状态来决定辅存和主存中进程的对换。 低级调度的主要任务:用于决定就绪队列中的哪个进程应获得处理机,然后再由分派程序执行将处理机分配给该进程的具体操作。
2.什么是死锁?产生死锁的原因和必要条件是什么? 答:死锁:多个进程在运行过程中因争夺资源而陷入僵局。
产生死锁的原因:1)竞争资源,2)进程间推进顺序非法。
产生死锁的必要条件:1)互斥条件(资源独占);2)请求和保持条件(占资源A,要资源B) ;3)不剥夺条件(未使用完的资源不能被剥夺);4)环路等待条件(资源占用形成环链)。
3.下列A、B、C、D四个进程在FCFS和SJF调度方式下的平均周转时间和调度先后顺序。
1?i?答:平均周转时间 =T???Ti?(1+1+100+2+1+3+100)/4=52
n?i?1?调度先后顺序为:ACBD
进程名 到达时服务时间 A B C D 0 1 2 3 间 1 100 1 100 4.银行家算法中,若出现下述资源分配情况:
Process P0 P1 P2 P3 P4 Allocation 0032 1000 1354 0332 0014 Need 0012 1750 2356 0652 0656 Avilable 1622 试问:(1)该状态是否安全?
(2)若进程P2提出请求Request(1,2,2,2)后,系统能否将资源分配给它?
答:不安全,不会分配。
5.资源分配图法判断下图中是否存在死锁。
答:产生死锁
第四章:存储器管理
1.简述存储器层次结构分几层,每层存放什么数据,作用是什么? 答:分五层
层0:CPU内寄存器组:由编译器完成分配,传送速度按处 理机速度 层1:高速缓存(cache):可几个层次,MMU控制
层2:主存储器:基本存储器,MMU与操作系统管理,存取策略 层3:外存储器(硬盘):联机存储器(I/O处理)