1 引论小结1.计算机系统由硬件和软件组成。
硬件是计算机系统的物质基础,操作系统是硬件之上的第一层软件,是支撑其他所有软件运行的基础。
2.多道程序设计是指在内存中同时存放多道程序,这些程序在管理程序的控制下交替运行,共享处理机及系统中的其他资源。
在单处理机系统中多道程序运行的特点是:·多道:计算机内存中同时存放多道相互独立的程序。
·宏观上并行:同时进入系统的多道程序都处于运行过程中,即它们先后开始了各自的运行,但都未运行完毕。
·微观上串行:内存中的多道程序轮流占有CPU,交替执行。
3.操作系统是一组控制和管理计算机硬件和软件资源,合理地组织计算机工作流程,以及方便用户的程序的集合。
4.操作系统有三种基本类型,即批处理操作系统、分时操作系统及实时操作系统。
·批处理操作系统能对一批作业自动进行处理,在批处理系统中引入多道程序设计技术就形成了多道批处理系统。
多道批处理系统的主要特征是用户脱机使用计算机、成批处理及多道程序运行。
·在分时操作系统中,处理机的运行时间被分成很短的时间片,系统按时间片轮流把处理机分配给各联机作业使用,若某个作业在分配给它的时间片内不能完成其计算,则该作业暂时停止运行,把处理机让给另一个作业使用,等待下一轮时再继续其运行。
分时系统的特征是同时性、交互性、独立性和及时性。
·实时系统能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时设备和实时任务协调一致地工作。
实时系统的主要特征是响应及时和可靠性高。
5.操作系统的特征是并发性、共享性、虚拟性及不确定性。
·并发是指两个或多个事件在同一时间间隔内发生。
·共享是指系统中的资源供多个用户共同使用。
·虚拟是指把一个物理实体变为若干个逻辑实体。
·不确定性是指系统中各种事件发生的时间及顺序是不可预测的。
6.操作系统的主要功能包括处理机管理、存储器管理、设备管理和文件管理。
处理机管理的主要功能包括:进程控制、进程同步、进程通信及调度。
存储器管理的主要功能包括:内存分配、内存保护、地址映射及内存扩充。
设备管理的主要功能包括:设备分配、设备驱动及设备独立性。
文件管理的主要功能包括:文件存储空间的管理、目录管理、文件操作管理及文件保护。
7.操作系统提供两种类型的用户接口:命令接口提供一组操作命令供用户直接或间接控制作业的运行;程序接口提供一组系统调用供用户在程序中请求操作系统服务。
习题1(1)什么是操作系统从资源管理的角度看,操作系统应具有哪些功能(2)操作系统有哪几种基本类型它们各有何特点(3)什么是多道程序设计技术多道程序设计技术的特点是什么(4)简述并发与并行的区别。
(5)简述操作系统在计算机系统中的位置。
(6)操作系统有哪些特征(7)操作系统是随着多道程序设计技术的出现逐步发展起来的,要保证多道程序的正确运行,在技术上要解决哪些基本问题(8)用户与操作系统之间存在哪几种接口(9)有一台计算机,具有1MB 内存,操作系统占用200KB,每个用户进程各占200KB。
如果用户进程等待I/O 的时间为80%,若增加1MB 内存,则CPU 的利用率提高多少(10)一个计算机系统,有一台输入机和一台打印机,现有两道程序投入运行,且程序A先开始做,程序B后开始运行。
程序A的运行轨迹为:计算50ms、打印100ms、再计算50ms、打印100ms,结束。
程序B的运行轨迹为:计算50ms、输入80ms、再计算100ms,结束(假设开始时刻为0)。
试说明:①两道程序运行时,CPU有无空闲等待若有,在哪段时间内等待为什么会等待②程序A、B 有无等待CPU 的情况若有,指出发生等待的时刻。
2 进程描述与控制小结1.一个程序通常由若干个操作组成,这些操作必须按照某种先后次序执行,仅当前一个操作执行完成后才能执行后继操作,这类计算过程就是程序的顺序执行过程。
程序顺序执行时具有如下特征:·顺序性:处理机的操作严格按照程序所规定的顺序执行,当上一个操作完成后下一个操作才能开始。
·封闭性:程序一旦开始运行,其执行结果不受外界因素影响。
·可再现性:只要程序执行时的初始条件和执行环境相同,当程序重复执行时,都将获得相同的结果。
2.程序的并发执行是指若干个程序或程序段同时在系统中运行,这些程序或程序段的执行在时间上是重叠的,一个程序或程序段的执行尚未结束,另一个程序或程序段的执行已经开始。
程序并发执行时有如下特征:·间断性:程序在并发执行时具有“执行—暂停执行—执行”这种间断性的活动规律。
·失去封闭性:并发执行的程序共享系统中的各种资源,因而这些资源的状态将由多个程序来改变,致使程序的运行失去封闭性。
·不可再现性:程序并发执行时,由于失去了封闭性,也将导致失去其运行结果的可再现性。
3.进程是程序在一个数据集合上的运行过程,是系统进行资源分配和调度的一个独立单位。
进程具有以下特征:·动态性:进程是一个动态的概念,是程序在处理机上的一次执行过程。
·并发性:多个进程实体同时存在于内存中,在一段时间内并发执行。
·独立性:进程是能独立运行的基本单位,也是系统进行资源分配和调度的独立单位。
·异步性:系统中的各进程以独立的、不可预知的速度向前推进。
·结构性:从结构上看,进程由程序段、数据段和一个进程控制块组成。
4.进程控制块是描述进程属性的数据结构,进程控制块中通常包含进程名、进程当前状态、进程队列指针、程序和数据地址、进程优先级、CPU现场保护区、通信信息、家族关系、资源清单等信息。
5.进程有三种基本状态:·就绪状态:进程已获得除处理机外的所有资源,一旦获得处理机就可以立即执行。
·执行状态:进程获得必要的资源并正在处理机上执行。
·阻塞状态:进程因等待某事件的发生而暂时无法执行下去。
6.进程控制的职责是对系统中的所有进程实施有效的管理。
常见的进程控制原语有进程创建、进程撤消、进程阻塞和进程唤醒。
7.操作系统内核是基于硬件的第一次软件扩充。
现代操作系统中把一些与硬件紧密相关或运行频率较高的模块以及公用的一些基本操作安排在靠近硬件的软件层次中,并使它们常驻内存以提高操作系统的运行效率,通常把这部分软件称为操作系统内核。
操作系统内核的主要功能包括中断、时钟管理、进程管理、存储器管理、设备管理等。
8.原语是由若干条机器指令构成的一段程序,用以完成特定功能,这段程序在执行期间不可分割。
9.计算机系统中有两种运行状态:核心态和用户态。
核心态是操作系统管理程序执行时机器所处的状态。
用户态是用户程序执行时机器所处的状态。
10.线程是进程内一个相对独立的、可调度的执行单元。
线程自己基本上不拥有资源,只拥有一点在运行时必不可少的资源(如程序计数器、一组寄存器和栈),但它可以与同属一个进程的其他线程共享进程拥有的全部资源。
习题2(1)进程的定义是什么它最少有哪几种状态(2)什么是管态什么是目态(3)试画出下面四条语句的前趋图:S1:a=x+2; S2:b=y+4;S3:c=a+b; S4:d=c+6;(4)试利用Bernstein条件证明解答题3中的语句S1和S2可以并发执行,而语句S3和S4不能并发执行。
(5)进程与线程的主要区别是什么(6)进程控制块何时产生何时消除它有什么作用(7)已知一个求值公式(A2+3B)/(B+5A),若A,B已赋值,试画出该公式求值过程的前趋图。
(8)试对下列系统任务作出比较:①创建一个进程与创建一个线程;②两个进程间通信与同一进程中两个线程间通信;③同一进程中两个线程的上下文切换与不同进程中两个线程的上下文切换。
(9)在一个分时操作系统中,进程可能出现如图1所示的变化,请把产生每一种变化的具体原因填在表1的相应框中。
、表1 进程状态变化原因变化原因(1)(2)(3)(4)(5)图1 进程状态变化图3 进程同步与通信小结1.进程之间的相互制约关系有两类:直接制约及间接制约。
进程之间因相互合作而产生的制约关系称为直接制约关系,进程之间因共享资源而产生的相互制约关系称为间接制约关系。
2.一次仅允许一个进程使用的资源称为临界资源。
进程中访问临界资源的那段代码称为临界区。
3.对临界资源的访问过程可以分成四个部分:进入区、临界区、退出区及剩余区。
4.访问临界资源的进程必须满足如下条件:·当有若干进程要求进入它们的临界区时,应在有限时间内使一个进程进入临界区。
·每次至多有一个进程处于临界区内。
·进程在临界区内仅逗留有限的时间。
5.多个相互合作的进程在一些关键点上可能需要互相等待或互相交换信息,这种相互制约关系称为进程同步。
当一个进程正在使用某资源时,其他希望使用该资源的进程必须等待,当该进程用完资源并释放后,才允许其他进程去访问此资源,进程之间的这种相互制约关系为互斥。
6.锁是一个代表资源状态的变量,通常用0表示资源可用,用1表示资源已被占用。
利用锁机制解决互斥问题的方法是:上锁、访问临界资源、开锁。
7.信号量由两个成员构成,其中一个是具有非负初值的整型变量,另一个是初始状态为空的队列。
除信号量的初值外,信号量的值仅能由P、V操作改变。
8.信号量值的含义是:当其大于0时表示系统中当前可用资源的数目;当其小于0时,其绝对值表示系统中因请求该资源而阻塞等待的进程数目。
9.设s为一个信号量,P(s)的主要功能是:先执行s=s-1;若s≥0则进程继续运行;若s<0则阻塞该进程,并将它插入该信号量的等待队列中。
V(s)的主要功能是:先执行s=s+1;若s>0则进程继续执行;若s≤0则从该信号量等待队列中移出第一个进程,使其变为就绪状态并插入就绪队列,然后再返回原进程继续执行。
10.管程定义了一个数据结构和能为并发进程所执行的一组操作,这组操作能同步进程和改变管程中的数据。
管程由局部于管程的共享数据结构说明、对这些数据结构进行操作的一组过程以及对这些数据结构设置初值的语句组成。
11.管程具有以下基本特性:·局部于管程的数据只能被局部于管程内的过程所访问。
·一个进程只有通过调用管程内的过程才能进入管程访问共享数据。
·每次仅允许一个进程在管程内执行某个内部过程。
12.进程通信是指进程之间的信息交换。
高级进程通信方式是指进程之间以较高的效率传送大量数据。
13.目前常用的高级进程通信方式有:共享存储器系统、消息传递系统以及管道通信系统。
14.根据消息传递系统实现方式不同可以分为:·直接通信方式:发送进程直接把消息发送给接收进程,并将它挂在接收进程的消息缓冲队列上,接收进程从消息缓冲队列中取得消息。