操作系统作业参考答案及其知识点
第一章
思考题:
10、试叙述系统调用与过程调用的主要区别? 答:
(一)、调用形式不同 (二)、被调用代码的位置不同 (三)、提供方式不同 (四)、调用的实现不同
提示:每个都需要进一步解释,否则不是完全答案
13、为什么对作业进程批处理可以提高系统效率?
答:批处理时提交程序、数据和作业说明书,由系统操作员把作业按照调度策略,整理为一批,按照作业说明书来运行程序,没有用户与计算机系统的交互;采用多道程序设计,可以使CPU和外设并行工作,当一个运行完毕时系统自动装载下一个作业,减少操作员人工干预时间,提高了系统的效率。
18、什么是实时操作系统?叙述实时操作系统的分类。
答:实时操作系统(Real Time Operating System)指当外界事件或数据产生时,能接收并以足够快的速度予以处理,处理的结果又能在规定时间内来控制监控的生产过程或对处理系统做出快速响应,并控制所有实时任务协调一致运行的操作系统。 有三种典型的实时系统:
1、过程控制系统(生产过程控制) 2、信息查询系统(情报检索) 3、事务处理系统(银行业务)
19、分时系统中,什么是响应时间?它与哪些因素有关?
答:响应时间是用户提交的请求后得到系统响应的时间(系统运行或者运行完毕)。它与计算机CPU的处理速度、用户的多少、时间片的长短有关系。
应用题:
1、有一台计算机,具有1MB内存,操作系统占用200KB,每个用户进程占用200KB。如果用户进程等待I/0的时间为80%,若增加1MB内存,则CPU的利用率提高多少? 答:CPU的利用率=1-Pn,其中P为程序等待I/O操作的时间占其运行时间的比例 1MB内存时,系统中存放4道程序,CPU的利用率=1-(0.8)4=59% 2MB内存时,系统中存放9道程序,CPU的利用率=1-(0.8)9=87% 所以系统CPU的利用率提高了28%
2、一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A先开始做,程序B后开始运行。程序A的运行轨迹为:计算50ms,打印100ms,再计算50ms,打印100ms,结束。程序B的运行轨迹为:计算50ms,输入80ms,再计算100ms,结束。
1
试说明(1)两道程序运行时,CPU有无空闲等待?若有,在哪段时间内等待?为什么会等待?(2)程序A、B有无等待CPU的情况?若有,指出发生等待的时刻。 答:单处理机A、B程序执行的时序图如下所示
在100-150毫秒期间,打印机和输入机同时工作,CPU等待。 在180-200毫秒期间,程序A在150毫秒处开始执行,180毫秒处程序B要执行,但是不得不等待到程序A执行完毕。
50
100 150 180 200 250 300
时 间
A
A
打印机
A
A
B
B
处理器 输入机
B
知识点:
1、操作系统的概念
2、操作系统的目标、层次结构
3、操作系统的作用与功能、主要特性 4、多道程序设计中CPU利用率的计算
5、操作系统提供的接口:程序接口与系统调用
第二章
思考题:
5、为什么要把机器指令分成特权指令和非特权指令?
答:当前计算机中都采用操作系统来管理资源,控制系统的执行流程,操作系统核心程序能够使用全部指令,但用户程序只能使用机器指令系统的一个子集,即非特权指令。因为用户程序如何使用有关资源管理的特权指令很容易造成系统的混乱,造成系统或用户信息的破坏。
28、进程最基本的状态有哪些?哪些事件可能引起不同状态之间的转换? 答:进程有三个最基本的状态:运行态(running)、就绪态(ready)、等待态(blocked)。
2
35、何谓进程控制块?它包含哪些基本信息?
答:进程控制块PCB,是操作系统用于记录和刻画进程状态及有关信息的数据结构。也是操作系统掌握进程的唯一资料结构,它包括了进程执行时的情况,以及进程让出处理器后所处的状态、断点等信息。 包含三类基本信息: (1)标识信息
?PID用于唯一地标识一个进程,分由用户使用的外部标识符和被系统使用内部标识号。 ?常用的标识信息有进程标识符、父进程的标识符、用户进程名、用户组名等。 (2)现场信息
?保留进程运行时存放在处理器现场中的各种信息,进程让出处理器时必须把处理器现场信息保存到PCB中,当该进程重新恢复运行时也应恢复处理器现场。
?现场信息包括通用寄存器内容、控制寄存器内容、用户堆栈指针、系统堆栈指针等。 (3)控制信息
?进程调度相关信息 ?进程组成信息
?进程间通信相关信息
?进程在二级存储器内的地址信息 ?CPU资源的占用和使用信息 ?进程特权信息
?资源清单,包括进程所需全部资源、已经分得资源等
40、什么叫模式切换?它与进程切换有何主要区别?
答:模式切换:为了提高系统资源利用率,当中断发生时,暂时中断正在执行的用户进程,把进程从用户状态切换到内核状态,去执行操作系统例行程序以获得服务,这就是一次模式切换。
? 模式切换不同于进程切换,它并不引起进程状态变化,也不一定引起进程的切换,在完
成了中断调用之后,完全可以再通过一次逆向的模式切换来继续执行用户进程。 ? 有效合理使用它们可以提高OS效率和安全性
76、解释:(1)作业周转时间;(2)作业带权周转时间;(3)响应时间;(4)吞吐率。 答:
? 作业周转时间:批处理用户从作业提交给系统开始,到作业完成为止的时间间隔。 ? 作业带权周转时间:如果作业i的周转时间为ti,所需运行时间为tk,则称wi=ti /tk为
该作业的带权周转时间,n个作业的带权周转时间的平均值为作业带权周转时间。 ? 响应时间:互式进程从提交一个请求(命令)到接收到响应之间的时间间隔。
3
? 吞吐率:单位时间内处理的作业数。
89、叙述典型的实时调度算法。 答:
1)单比率调度算法
基本思想:为每个进程分配一个与事件发生频率成正比的优先数。例如,周期为20ms的进程优先数为50,周期为100ms的进程优先数为10,运行时调度程序总是调度优先数最高的就绪进程,并采取抢占式分配策略。 2)限期调度算法
基本思想:当一个事件发生时,对应的进程就按照截止期限被加入就绪进程队列。对于一个周期性事件,其截止期限即为事件下一次发生的时间。该调度算法首先运行队首进程,即截止时间最近的那个进程 3)最少裕度法
基本思想:首先计算各个进程的富裕时间,即裕度(laxity),然后选择裕度最少的进程执行。裕度=截止时间-(就绪时间+计算时间)
90、试述典型的多CPU调度算法。 答:
1)负载共享调度算法
基本思想:进程并不分配给一个特定处理器,系统维护一个全局性就绪线程队列,当一个处理器空闲时,就选择一个就绪线程占有处理器运行。 2)群调度算法
基本思想:把一组进程在同一时间一次性调度到一组处理器上运行。 3)处理器专派调度算法
基本思想:给一个应用指派一组处理器,一旦一个应用被调度,它的每个线程被分配一个处理器并一直占有处理器运行直到整个应用运行结束。 4)动态调度算法
基本思想:由操作系统和应用进程共同完成调度。
应用题: 15、单道批处理系统中,下列三个作业采用FIFO调度算法和最高响应比优先算法进行调度,哪一种算法性能好?请完成下表: FIFO调度算法 作业 提交时间 运行时间 1 2 3 最高响应比优先算法 作业 提交时间 运行时间 1 2
开始时间 10:00 12:00 13:00 完成时间 12:00 13:00 13:25 周转时间 2:00 2:50 3:00 带权周转时间 1 17/6=2.83 7.2 10:00 10:10 10:25 2:00 1:00 0:25 平均作业周转时间: 2:37 平均作业带权周转时间W=3.68 开始时间 10:00 12:25 4
完成时间 12:00 13:25 周转时间 2:00 3:15 带权周转时间 1 3.15 10:00 10:10 2:00 1:00 3 10:25 0:25 12:00 12:25 2:00 4.8 平均作业周转时间:2:25 平均作业带权周转时间W=3.13 通过平均作业周转时间和平均作业带权周转时间比较,最高响应比优先算法比FIFO调度算法性能好。
知识点:
1、单处理器与多处理器的概念
2、处理器的状态分类及其执行的指令分类 3、中断的概念、过程
4、进程的定义和属性、三种基本状态及其转化事件
5、进程包含的三大类基本信息、进程的创建、阻塞、唤醒、撤销、挂起、激活的基本过程 6、处理器调度的分类及其常见的调度算法(HRRF算法) 7、平均周转时间的计算
8、周转时间、响应时间、等待时间、执行时间的概念 9、作业的四种状态
第三章
思考题:
10、什么是临界区和临界资源?对临界区管理的基本原则是什么? 答:临界区:并发进程中与共享变量有关的程序段。
临界资源:在临界区中共享变量代表的资源。 ? 一次至多允许一个进程进入临界区内 ? 一个进程不能无限地停留在临界区内 ? 一个进程不能无限地等待进入临界区
14、什么是信号量?如何对它们进行分类?
答:信号量,一个进程在某一特殊点上被迫停止执行直到接收到一个对应的特殊变量值,这种特殊变量。
信号量按其用途分为:公用信号量和私有信号量。 信号量按其取值分为:二元信号量和一般信号量。
17、何谓管程?它有哪些属性? 答:管程,是由局部于自己的若干公共变量及其说明和所有访问这些公共变量的过程所组成的软件模块。
?共享性 ?安全性 ?互斥性
25、什么是消息队列机制?叙述其工作原理。
答:消息队列机制,通过OS统一管理一组用于通信的消息缓冲存储区,来实现通信双方相互传递消息的机制,接收方的缓冲区采用队列进行管理,这就是消息队列机制。
5