当前位置:首页 > 操作系统(1-8章的课后习题答案)doc资料
2-13:软件的中断处理过程主要分为三个阶段过程:(1)保护现场和传递参数(2)执行相应的中断(或自陷)服务例程(3)恢复和退出中断 图如下:
第3章
3-1:系统生成是指为了满足物理设备的约束和需要的系统功能,通过组装一批模块来产生一个清晰的,使用方便的操作系统的过程。
3-2:系统引导的主要任务是将操作系统的必要部分装入主存并使系统运行,最终处于命令接受状态。
3-3:处理应用程序分为的步骤有:(1)编辑(修改):建立一个新文件,或对已有的文件中的错误进行修改。
(2)编译:将源程序翻译成浮动的目标代码,完成这一步工作需要有相应语言编译器,如源程序是C 语言写的,那么必须要有C编译器
(3)连接:将主程序和其他所需要的子程序和例行程序连接装配在一起,使之成为一个可执行的,完整的主存映像文件 。
(4)运行:将主存映像文件调入主存,并启动运行,最后得出计算结果。 这些步骤之间的联系,具体表现为:a:每个步骤处理的结果产生下一个步骤所需要的文件。b:一个步骤能否正确执行,依赖于前一个步骤是否成功的完成。
3-4: 静态连接与动态连接的区别在于:静态连接,当有多个应用程序都需要调用同一个库函数时,这多个应用程序的目标文件中都将包含这个外部函数对应的代码;动态连接不需要将应用程序所需要的外部函数代码从库中提取出来并连接到目标文件中,而是在应用程序需要调用外部函数的地方做记录,并说明要使用的外部函数名和引用入口号,形成调用链表。
3-5:用户与操作系统的接口是:程序接口,命令接口,图形接口。一个分时系统提供的
接口有操作接口和程序接口。一个批处理系统提供的接口是:系统功能调用和作业控制语言 3-6:Windows系统提供的用户接口是图形化用户界面。
3-8 什么是系统调用?对操作系统的服务请求与一般的子程序调用有什么区别?
答:系统调用是用户在程序一级请求操作系统服务的一种手段,它不是一条简单的指令,而是带有一定功能号的访管指令。
区别:操作系统服务的功能都是与操作系统本身有关的,对它的调用是通过一条访管指令来实现的。
3-10 简述系统调用的执行过程?
答:执行过程:在用户程序中,需要请求操作系统服务的地方安排一条系统调用,这样当程序执行到这一条指令时就会发生中断,系统由用户态转为管态,操作系统的访管中断处理程序得到控制权,它将按系统调用的功能号,借助例行子程序入口地址表转到相应的例行程序去执行在完成用户需要的服务功能后,退出中断,返回到用户程序的断点继续执行。
第四章
4-1试解释下列名词,程序的顺序执行,程序的并行执行
答:一个计算机由若干操作组成,若这些操作必须按照某种先后次序来执行,以保证操作结果的正确性,就是程序顺序执行。程序的并行执行时指:若干程序同时在系统中运行,这些程序的执行在时间上是重叠的,一个程序的执行尚未结束,另一个程序的执行已经开始。 4-2.什么是时间有关的错误?试举例说明。
答:程序并行执行时共享了公共变量,其执行结果将与并行执行的相对速度有关,即,给定相同的初始条件,也可能得到不同的结果,此为与时间的有关错误,例如:在程序A和程序B中,共享了变量N=3,程序A进行N++,程序B进行printf和N=0操作,由于程序A和程序B共享N,所以A和B的执行顺序不同会得到不同的结果,就产生了时间有关错误的问题。
4-3:进程是:
(1):进程是这样的计算部分,它是可以和其他计算并行的一个计算。 (2):进程(有时称为任务)是一个程序与其数据一道通过处理机执行所发生的活动。
(3):任务(或称为进程)是由一个程序以及与它相关的状态信息(包括寄存器内容,存储区域和链接表)所组成的。
(4):所谓进程,就是一个程序在给定活动空间和初始环境下,在一个处理机上的执行过程。
(5)根据1978年在庐山召开的全国操作系统会议上关于进程的讨论,结合国外的各种观点,国内对进程这一概念做了如下描述:进程是指一个具有一定独立功能的程序关于某个数据集合的一次运行活动。
进程与程序的主要区别:a:程序是指令的有序集合,是一个静态概念,其本身没有任何运行的含义。而进程是程序在处理机上的一次执行过程,是一个动态概念。程序可以作为一种软件资料长期保存,而进程则是有一定生命期的,它能够动态地产生和消亡。即进程可由”创建“而产生,由调度而执行,因得不到资源而暂停,以致最后由”撤销“而消亡。
b:进程是一个能独立运行的单位,能与其他进程并行地活动。
c:进程是竞争计算机系统有限资源的基本单位,也是进行处理机调度的基本单位。
4-4:(1) 顺序程序的操作是有先后次序的,原因是:以保证操作结果的正确性。
并发程序的操作是可以并发执行的,原因:系统中存在大量的操作,就可以进行并发执行处理,提高系统的处理能力和计算机的利用率。
4-6:进程的基本状态:运行状态,就绪状态,等待状态。在一个系统中必须区分这几种状态的原因是 :
1)系统中处理机的数目总是少于进程数,只有少数进程能够获得处理机控制权。
2)有些进程已经获得处理机控制权(运行状态);
3)有些进程希望获得处理控制权但因处理机太少而暂时得不到(就绪);
4)有些处理机因某种原因暂时不能运行(等待)。
4-9:(1) 变迁2发生的原因是:时间片到;变迁3发生的原因是:服务请求(如请求I/O等);变迁4发生的原因是:服务完成、事件来到。 (2):在运行的状态下,进程因请求某种服务而变成等待状态,当请求的事件完成后,处于等待状态的进程并不能恢复到运行状态,而是转变为就绪状态,通过重新调度程序才能转变为运行状态。
(3):a:2->1,c:4—>1与b:3->2的因果关系可能发生,在阻塞的情况下或者运行因请求某种服务,运行可变成等待状况;在唤醒的情况下或者当请求的事件完成后,处于等待状态的进程并不能恢复到运行状态,等待可变成就绪;通过重新调度程序才能转变为运行状态。
4-10:原因:线程在活动期间,其状态时不断变化的,这些变化是有系统运行的状况,同时存在其他线程和线程本身的算法等因素共同决定的。 4-11:进程控制块是一个数据结构,是标识进程存在的实体。
作用是:当系统创建一个进程时,必须为他设置一个进程控制块(PCB),然后根据PCB的信息对进程实施控制和管理,进程任务完成时,系统撤销它的PCB,进程也随之消亡。总之进程控制块具有控制和管理的作用。
共分享92篇相关文档