计算机操作系统期末复习资料
- 格式:doc
- 大小:116.50 KB
- 文档页数:15
第一章 什么是OS,它在计算机系统中处在什么位置? 加载在硬件上的第一层软件,是硬件功能的首次延伸; 是系统资源的管理机构;是人、机之间的接口。
OS的发展过程----几类典型操作系统(多道批处理、分时、实时),每类操作系统的原理、特征(优缺点) 多道批处理系统: 原理: 20世纪60年代中期引入多道程序设计技术,由此形成了多道批处理系统。在该系统中,用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”;然后,由作业调度程序按一定的算法从后备队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。 特征(优缺点): (1)资源利用率高 (2)系统吞吐量大 (3)平均周转时间长 (4)无交互能力
分时系统: 原理: 分时系统是指在一台主机上连接了多个带有显示器和键盘的终端,同时允许多个用户通过自己的终端,以交互方式使用计算机,共享主机中的资源。 特征(优缺点): (1)多路性 (2)独立性 (3)及时性 (4)交互性
实时系统: 原理: 实时系统是指系统能及时(或即时)响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致的运行。 特征(优缺点): (1)多路性 (2)独立性 (3)及时性 (4)交互性 (5)可靠性
OS的基本特性(并发、共享、虚拟、异步)----其中“并发”是最重要的特性 并发性、共享性、虚拟性和异步性四个基本特征;最基本的特征是并发性。
OS的主要功能----资源管理器和用户接口 资源管理功能: 处理机管理 存储器管理 设备管理 文件管理 操作系统和用户之间的接口: 用户接口:联机用户接口,脱机用户接口和图形用户接口 程序接口:该接口是为用户程序在执行中访问系统资源而设置的,它是由一组系统调用组成。
试说明推动多道批处理系统形成和发展的主要动力是什么? 主要动力来源于四个方面的社会需求与技术发展: (1)不断提高计算机资源的利用率; (2)方便用户; (3)器件的不断更新换代; (4)计算机体系结构的不断发展。 第二章 进程的概念,进程与程序(作业)的区别 进程是操作系统结构的基础;是一个正在执行的程序;计算机中正在运行的程序实例;可以分配给处理器并由处理器执行的一个实体。 进程实体:为使程序(含数据)能独立运行,应为之配置一进程控制块,即PCB;而由程序段、相关的数据段和PCB三个部分便构成了进程实体。进程的实质是进程实体的一次执行过程。 进程和程序区别: (1)进程是一个动态概念,强调执行的过程,每个进程中包含了程序段和数据段两个部分,以及进程控制块PCB; 而程序是一个静态概念,程序是指令的有序集合,无执行含义; (2)进程具有并行特征(独立性,异步性),程序则没有; (3)一个进程可以执行多个程序(如Linux中通过exec调用),同一程序的多次执行将产生多个不同的进程。同一个程序的一次执行也可产生多个进程(如在程序中多次调用Linux中的fork)。 进程和作业的区别在于: 一个进程是一个程序对某个数据集的执行过程,是分配资源的基本单位。作业是用户需要计算机完成某项任务,而要求计算机所做工作的集合。一个作业的完成要经过作业提交、作业收容、作业执行和作业完成四个阶段。而进程是已提交完毕的程序所执行过程的描述,是资源分配的基本单位。 其主要区别关系如下: (1)作业是用户向计算机提交任务的任务实体。在用户向计算机提交作业之后,系统将它放入外存中的作业等待队列中等待执行;而进程则是完成用户任务的执行实体,是向系统申请分配资源的基本单位。任一进程,只要它被创建,总有相应的部分存在于内存中; (2)一个作业可由多个进程组成,且必须至少由一个进程组成,但反过来不成立; (3)作业的概念主要用在批处理系统中,像UNIX这样的分时系统中,则没有作业的概念;而进程的概念则用在几乎所有的多道程序系统中。
什么是PCB,PCB包含的主要信息,PCB的作用 为了描述和控制进程的运行,系统为每个进程定义了一个数据结构——进程控制块PCB(Process Control Block)。 PCB中主要包括下述四方面的信息: 进程标识符:内部标识符,外部标识符; 处理机状态; 进程调度信息; 进程控制信息。 PCB的作用: ① PCB是系统只为每个进程定义的一个数据结构,是为了使程序(含数据)能独立运行,为之配置的一进程控制块; ② PCB、程序段和相关的数据段三部分构成了进程实体,创建进程,实质上是创建进程和实体中的PCB,而撤销进程,实质上是撤销进程的PCB;PCB是为了保证程序的并发执行; ③ PCB使一个在多道程序环境下不能独立运行的程序(含数据),成为一个能独立运行的基本单位,一个能与其它进程并发执行的进程。
进程的3种基本状态,状态间的转换以及引起状态转换的原因 进程的三种基本状态:就绪状态,执行状态,阻塞状态 还存在两种比较常见的进程状态,即创建状态和终止状态
创建→就绪:在当前系统的性能和内存容量均允许的情况下,完成对进程创建的必要操作, 相应的系统进程将进程的状态转换成活动就绪状态 执行→终止:当一个进程到达了自然结束点,或是出现了无法克服的错误,或是被操作系统所终结, 或是被其他有终止权的进程所终结,进程即进终止状态
(1) 就绪→执行 处于就绪状态的进程,当进程调度程序为之分配了处理机后,该进程便由就绪状态转变成执行状态。 (2) 执行→就绪 处于执行状态的进程在其执行过程中,因分配给它的一个时间片已用完而不得不让出处理机, 于是进程从执行状态转变成就绪状态。(时间片用完) (3) 执行→阻塞 正在执行的进程因等待某种事件发生而无法继续执行时,便从执行状态变成阻塞状态。(I/O请求) (4) 阻塞→就绪 处于阻塞状态的进程,若其等待的事件已经发生,于是进程由阻塞状态转变为就绪状态。(I/O完成) 什么是临界资源 临界资源是指每次仅允许一个进程访问的资源。
进程间的两种相互制约关系(--同步、互斥--)的概念(是进程间的低级通信) 进程同步(直接相互制约关系): 它主要源于进程合作,是进程间共同完成一项任务时直接发生相互作用的关系。为进程之间的直接制约关系。在多道环境下,这种进程间在执行次序上的协调是必不可少的。 举例:有输入进程A 通过单缓冲向进程B 提供数据。当缓冲空时,计算进程因不能获得所需数据而阻塞,当进程A 把数据输入缓冲区后,便唤醒进程B;反之,当缓冲区已满时,进程A 因没有缓冲区放数据而阻塞,进程B 将缓冲区数据取走后便唤醒A。
进程互斥(间接相互制约关系): 它主要源于资源共享,是进程之间的间接制约关系。在多道系统中,每次只允许一个进程访问的资源称为临界资源,进程互斥就是保证每次只有一个进程使用临界资源。 举例:有两进程A 和B,如果A 提出打印请求,系统已把唯一的一台打印机分配给了进程B,则进程A只能阻塞;一旦B释放打印机,A才由阻塞改为就绪。
什么是信号量 信号量是Dijkstra提出的用于解决进程同步的有效工具。信号量是一个数据结构以及对其的操作。除初始化外,仅能通过两个标准的原子操作wait(S)和signal(S)来访问。两个语句在执行到一半的时候不能被中断。
什么是P操作、什么是V操作(P、V操作的处理流程,以记录型信号量为例) P(S):wait(S) 每次wait操作,意味着进程请求一个单位的该类资源,使系统可供分配的该类资源数减少一个。 ① 将信号量S的值减1,即S.value:=S.value-1; ② 当S.value<0时,表示该类资源分配完毕,进程调用block原语,进行自我阻塞,放弃处理机,并插入到信号量链表中。 V(S):signal(S) 每次signal操作,表示执行进程释放一个单位资源,使系统中可供分配的该类资源数增加一个 ① 将信号量S的值加1,即S.value:=S.value+1; ② 如果S.value<=0,表示在该信号量链表中,仍有等待该资源的进程被阻塞,故还应调用wakeup原语,将链表中的第一个等待进程唤醒。
用信号量和P、V操作机制实现互斥和同步的方法,信号量取值的含义 利用信号量和PV操作实现进程互斥时应该注意的是:
(1)每个程序中用户实现互斥的P,V操作必须成对出现,先做P操作,进临界区,后做V操作,出临界区。若有多个分支,要认真检查其成对性。 (2)P,V操作应分别紧靠临界区的头尾部,临界区的代码应尽可能短,不能有死循环。 (3)互斥信号量得初值一般为1 其中信号量S用于互斥,初值为1。
利用信号量和PV操作实现进程同步 PV操作是典型的同步机制之一。用一个信号量与一个消息联系起来,当信号量的值为0时,表示期望的消息尚未产生;当信号量的值非0时,表示期望的消息已经存在。用PV操作实现进程同步时,调用P操作测试消息是否到达,调用V操作发送消息。 使用PV操作实现进程同步时应该注意的是: (1)分析进程间的制约关系,确定信号量种类。在保持进程间有正确的同步关系情况下,哪个进程先执行,那些进程后执行,彼此间通过什么资源(信号量)进行协调,从而明确要设置那些信号量。 (2)信号量的初值与相应资源的数量有关,也与P,V操作在程序代码中出现的位置有关。 (3)同一信号量的P,V操作要成对出现,但他们分别在不同的进程代码中。