操作系统原理复习提纲解析.docx
《操作系统原理复习提纲解析.docx》由会员分享,可在线阅读,更多相关《操作系统原理复习提纲解析.docx(17页珍藏版)》请在冰豆网上搜索。
操作系统原理复习提纲解析
第一章
1、存储程序式计算机的特点
存储程序式计算机的结构包括中央处理器(CPU)、存储器和输入/输出设备
特点是集中顺序过程控制。
其计算是过程性的,完全模拟手工操作过程,即首先取原始数据,执行一个操作,将中间结果保存起来,再取一个数,与中间结果一起执行下一个操作,如此计算下去,直到计算完成。
系统中的程序计数器体现其顺序性(在单CPU的计算机系统中只有一个程序计数器),计算机根据程序设定的顺序依次执行每一个操作。
集中控制是指机器各部件的工作由CPU集中管理和指挥。
2、操作系统发展的几个阶段的名称及特点
(1)手工操作阶段
特点:
无任何软件、由人工干预、独占性、串行性
(2)批处理阶段
联机批处理特点:
监督程序、作业自动过渡
脱机批处理特点:
主机与卫星机并行操作
(3)执行系统
主机、外设并行操作;增强了保护能力。
3、多道程序设计技术定义及特征
在计算机主存中同时存放几道相互独立的程序。
这些程序在管理程序控制之下,相互穿插地运行。
当某道程序因某种原因不能继续运行下去时(如等待外部设备传输数据),管理程序便将另一道程序投入运行。
特征:
(1)多道:
计算机主存中同时存放几道相互独立的程序
(2)宏观上并行:
同时进入系统的几道程序都处于运行过程中,即它们都开始运行,但都未运行完毕。
(3)微观上串行:
从微观上看,主存中的多道程序轮流或分时地占用处理机,交替执行。
4、操作系统定义和特征
操作系统是一个大型的程序系统,它负责计算机的全部软、硬资源的分配、调度工作,控制和协调并发活动,实现信息的存取和保护。
它提供用户接口,使用户获得良好的工作环境。
特征:
(1)并发:
并发性是指处理多个同时性活动的能力。
(2)共享:
共享是指多个计算任务对系统资源的共同享用。
(3)不确定性:
操作系统能处理大量的、随机的事件序列,使个用户的计算任务正确地完成。
5、操作系统的资源管理功能
(1)处理机管理
制订调度策略(调度原则):
解决将CPU先分给哪个用户程序,它占用多长时间,下一个又该轮到哪个程序运行等问题。
给出进程调度算法;
具体的实施处理机分派:
在调度时机到来时,进行处理机分派。
(2)存储器管理
存储分配和存储无关性:
确定各应用程序在主存中的位置及所占区域的大小;应用程序无需关心存储细节,由存储管理模块提供地址重定位能力。
存储保护:
系统提供基址、界限寄存器等存储保护方法,使各应用程序相互隔离。
存储扩充:
系统提供虚拟存储技术,扩大逻辑主存。
(3)设备管理
设备无关性:
用户向系统申请和使用的设备与实际操作的设备无关,以达到方便用户、提高设备利用率的目的。
设备分配:
为各个应用程序和运行实体分配各种设备。
设备分配通常采用三种基本技术:
独享、共享及虚拟技术。
设备的传输控制:
启动设备、中断处理、结束处理等。
(4)信息管理(文件系统)
为用户提供一种简便的、统一的存取和管理信息的方法,并要解决信息的共享、数据的存取控制和保密等问题。
6、操作系统的基本技术:
多道程序设计技术、分时技术
7、操作系统的基本类型(四个:
批量、分时、实时和分布式)
第2章操作系统结构和硬件支持
1、操作系统虚拟机的指令系统
{操作系统虚拟机:
在裸机上配置了操作系统程序后就构成了操作系统虚拟机;操作系统的核心在裸机上运行;用户程序在扩充后的机器上运行。
在裸机的指令系统是机器指令。
}
(1)操作命令(命令接口)
作业控制语言、键盘命令和图形化用户界面
(2)系统功能调用(程序接口)
2、操作系统的层次结构
{操作系统的4种设计方法:
一体化结构、模块化结构、可扩展内核结构和层次化结构}
操作系统在逻辑上分为若干层次,每一层调用下层的功能,又为上层提供服务。
3、处理机的状态
管态:
又称为系统态,是操作系统的管理程序执行时机器所处的状态。
在此状态下中央处理机可以使用全部机器指令,包括一组特权指令,可以使用所有的资源,允许访问整个存储区。
用户态:
又称为目态,是用户程序执行时机器所处的状态。
在此状态下禁止使用特权指令,不能直接取用资源与改变机器状态,并且只允许用户程序访问自己的存储区域。
特权指令:
改变机器状态的指令;修改特殊寄存器的指令;涉及外部设备的输入/输出指令
4、中断定义,分类,中断过程描述
(1)所谓中断是指某个事件(例如电源掉电、定点加法溢出或I/O传输结束等)发生时,系统中止现行程序的运行、引出处理事件程序对该事件进行处理,处理完毕后返回断点,继续执行。
(2)分类:
按中断功能分类
输入输出中断:
I/O传输结束或出错终端
外中断:
时钟中断、操作员控制台中断、通信中断等
机器故障中断:
电源故障、主存取指令错等
程序性中断:
定点溢出、用户态下用核态指令、非法操作等
访管中断:
对操作系统提出某种需求时所发出的中断
按中断方式分类
强迫性中断:
不是正在运行的程序所期待的中断,如输入输出中断、外中断、机器故障中断、程序性中断
自愿中断:
是运行程序所期待的事件,如访管中断
按中断来源分类
中断:
由处理机外部事件引起的中断
俘获:
由处理机内部事件引起的中断
(3)中断过程描述
(一)中断响应
现场:
在中断的那一刻能够保证程序能够继续运行的有关信息;(后继指令所在主存的单元号;程序运行所处的状态;指令执行情况;程序执行的中间结果等)
保护现场:
当中断发生时,必须立即把现场信息保存在主存中,这一工作称为保护现场。
恢复现场:
程序重新运行之前,把保留的该程序现场信息从主存中送至相应的指令计数器、通用寄存器或一些特殊的寄存器中,完成这些工作称为恢复现场。
中断响应是当中央处理机发现已有中断请求时,中止现行程序的执行,并自动引出中断处理程序的过程。
实质是交换用户程序和处理该中断事件的中断处理程序的指令执行地址和处理器状态。
中断响应过程:
保留程序断点及处理机有关信息---------自动转入相应的中断处理程序执行。
第3章用户接口
1、操作系统的生成与系统初启过程描述
所谓系统生成,就是指为了满足物理设备的约束和需要的系统功能,通过组装一批模块来产生一个清晰的、使用方便的操作系统的过程。
系统生成的内容包括:
根据硬件部件确定系统构造的参数,编辑系统模块的参数,并且连接系统模块成为一个可执行的程序。
系统初启又叫系统引导。
它的任务是将操作系统的必要部分装入主存并使系统运行,最终处于命令接收状态。
系统引导分为三个阶段:
(1)初始引导:
把系统核心装入主存中的指定位置,并在指定地址启动
(2)核心初始化:
执行系统核心的初启子程序,初始化系统核心数据
(3)系统初始化:
为用户使用系统做准备
独立引导方式(滚雪球方式)的过程
(1)初始引导
系统加电;
执行初始引导程序,对系统硬件和配置进行自检,保证系统没有硬件错误;
从硬件中读入操作系统引导程序,并将控制权交给该程序模块
(2)引导程序执行
引导程序执行,将操作系统核心文件读入内存,并将控制交给核心的初始化程序
(3)核心初始化
初始化系统数据结构及参数:
系统加电建立进程有关的数据结构;
获得自由存储空间的容量,建立存储管理的数据结构;
建立系统设备和文件系统的数据结构;
初始化时钟。
(4)系统初始化
完善OS的操作环境,装载命令处理程序(或图形用户界面),并初始化;
在多用户系统中,为每个终端建立命令解释进程,使系统处于命令接收状态。
2、应用程序加工处理的步骤
(1)编辑(修改)
建立一个新文件,或对已有的文件中的错误进行修改
(2)编译
将源程序翻译成浮动的目标代码。
(3)连接
主程序和其他所需要的子程序和例行程序连接装配在一起,使之成为一个可执行的、完整的主存映像文件。
(4)运行
将主存映像文件调入主存,并启动运行,最后得出计算结果。
3、操作系统用户接口分类
(1)操作界面(命令接口)
用户使用这个操作界面来组织工作流程和控制程序的运行
(2)系统功能服务界面(程序接口)
用户程序在其运行过程中,使用系统功能调用来请求操作系统的服务
4、系统功能调用的定义及实现过程
系统功能调用是用户在程序一级请求操作系统服务的一种手段,它是带有一定功能号的“访管指令”。
其功能是由操作系统中的程序完成的,即由软件方法实现的自愿。
在用户程序中,需要请求操作系统服务的地方安排一条系统调用。
这样,当程序执行到这一条命令时,就会发生中断,系统由用户态转为管态,操作系统的访管中断处理程序得到控制权,它将按系统调用的功能号,借助例行子程序入口地址表转到相应的例行程序去执行,在完成了用户所需要的服务功能后,退出中断,返回到用户程序的断点继续执行。
第4章进程及进程管理
1、顺序程序特点
一个计算的若干操作必须按照严格的先后次序顺序地执行,这类计算过程就是程序的顺序执行过程。
(1)顺序性:
处理机的操作按照严格程序所规定的顺序执行
(2)封闭性:
程序一旦开始执行,其计算结果不受外界因素的影响
(3)可再现性:
程序执行的结果与它的执行速度无关(即与时间无关),而只与初始条件有关。
2、程序的并发执行定义及并发程序的特点
若干个程序段同时在系统中运行,这些程序段的执行在时间上是重叠的,一个程序段的执行尚未结束,另一个程序段的执行已经开始,即时这种重叠是很小的一部分,也称这几个程序段是并发执行的。
(1)失去程序的封闭性和可再现性:
若一个程序的执行可以改变另一个程序的变量,那么,后者的输出就可能有赖于各程序执行的相对速度,即失去了程序的封闭性特点。
(2)程序与计算不再一一对应:
一个程序可以对应多个计算
(3)程序并发执行的相互制约:
间接的相互制约关系——资源共享;直接的相互制约关系——公共变量
与时间有关的错误:
程序并发执行时若共享了公共变量,其执行结果将与并发程序执行的相对速度有关,即给定相同的初始条件,也可能会得到不同的结果,此为与时间有关的错误。
3、进程定义,进程与程序的区别与联系
所谓进程,就是一个程序在给定活动空间和初始环境下,在一个处理机上的执行过程。
(1)程序是指令的有序集合,是一个静态的概念;而进程是程序在处理机上的一次执行程序,是一动态概念。
(2)进程是一个能独立运行的单位
(3)进程是竞争系统资源的基本单位
联系:
一个程序可以对应多个进程;一个进程至少包含一个程序
4、进程的基本状态及状态变迁图
运行状态:
该进程已获得运行所必须的资源,它的程序正在处理机上执行
等待状态:
进程正等待着某一事件的发生而暂时停止执行。
这时,即使给它CPU控制权,它也无法执行,则称该进程处于等待状态
就绪状态:
进程已获得除CPU之外的运行所必须的资源,一旦得到CPU控制权,立即可以执行。
5、线程的定义及特点
线程是比进程更小的活动单位,它是进程中的一个执行路径
线程可以这样来描述:
(1)进程中的一条执行路径
(2)它有自己私有的堆栈和处理机执行环境
(3)它与父进程共享分配给父进程的主存
(4)它是单个进程所创建的许多个同时存在的线程中的一个
特点:
(1)创建一个线程比创建一个进程开销要小得多;
(2)实现线程间通信十分方便,因为一个进程创建的多个线程可以共享地址区域和数据。
6、临界资源、临界区的含义
一次仅允许一个进程使用的资源称为临界资源。
在每个进程中,访问临界资源的那段程序能够从概念上分离出来,称为临界区或临界段。
它就是进程中对公共变量(或存储区)进行审查与修改的程序段,称为相对于该公共变量的临界区。
7、同步、互斥的概念及区别
在操作系统中,当某一进程正在访问某以存储区域时,就不允许其他进程来读出或者修改存储区的内容,否则,就会发生后果无法估计的错误。
进程间的这种相互制约关系称为互斥。
同步,就是并发进程在一些关键点上可能需要互相等待与互通消息,这种相互制约的等待与互通消息称为进程同步。
互斥:
是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。
但互斥无法限制访问者对资源的访问顺序,即访问是无序的。
同步:
是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。
在大多数情况下,同步已经实现了互斥,特别是所有写入资源的情况必定是互斥的。
少数情况是指可以允许多个访问者同时访问资源。
8、能够灵活的应用锁、信号灯同步机构实现同步和互斥
第5章资源分配与管理
1、资源管理的具体内容
批处理系统的顾客分为作业和进程两级。
而在分时操作系统和个人计算机操作系统中,用户任务提交给系统时建立相应的进程,所以请求资源的顾客是进程。
资源管理应达到的目标是:
(1)保证资源的高利用率;
(2)在“合理”时间内使所有顾客有获得所需资源的机会;(3)对不可共享的资源实施互斥使用;(4)防止由资源不当而引起的死锁。
资源的静态分配:
系统对作业一级采用资源静态分配方法
资源的动态分配:
系统对进程一级采用资源动态分配方法
(1)资源数据结构的描述
构造资源分配所需的数据结构,应包含该资源的物理名、逻辑名、类型、地址、分配状态等信息。
(2)确定资源的分配原则(调度原则)
即决定资源应分给谁,何时分配,分配多少等问题
(3)实施资源分配
根据所确定的资源分配原则以及用户的要求,执行资源分配。
当资源使用完毕后,收回资源以便重新分配给其他作业和进程使用。
(4)存取控制和安全保护
对资源的存取进行控制并对资源实施安全保护措施
主存分区分配方法中,最小分配单位——主存分区
磁盘最小分配单位——磁盘面中的一个扇区
2、会灵活应用资源分配的三种策略及移臂调度算法
常用的资源分配策略
(1)先请求先服务:
按请求的先后次序排序
(2)优先调度:
按优先级的高低排序
(3)针对设备特性的调度策略:
当有大量I/O请求时,降低完成这些I/O服务的总时间
移臂调度:
总是选取与当前移动臂前进方向上最近的那个I/O请求,使移臂距离最短
旋转调度:
总是选取与当前读写头最近的那个I/O请求,使旋转圈数最少
几种移臂调度算法:
最短寻道时间优先算法(SSTF);扫描算法(电梯调度算法)(SCAN)
3、死锁产生的原因及必要条件、解决的策略
在两个或多个并发进程中,如果每个进程持有某种资源而又都等待着别的进程释放它或它们现在保持着的资源,否则就不能向前推进。
此时,称这一组产生了死锁。
死锁的起因:
系统资源不足;进程推进顺序
产生死锁的必要条件:
(1)互斥条件:
涉及的资源是非共享的,即为临界资源
(2)不剥夺条件:
进程所获得的资源在未使用完毕之前,不能被其他进程强行夺走
(3)部分分配:
进程每次申请它所需要的一部分资源,在等待新资源的同时,进程继续占用已分配到的资源
(4)环路条件:
存在一种进程的循环链,链中的每一个进程已获得的资源同时被链中下一个进程所请求
(资源——进程有向图:
从资源到进程的箭头,表示资源分配给进程,构成资源分配边;
从进程到资源的箭头表示进程请求资源,构成资源的请求边。
如果环涉及一组资源类型,而每个资源类型只有一个实例,那么有环就意味着出现死锁。
)
解决死锁的策略:
(1)采用资源静态分配方法预防死锁
(2)采用资源动态分配、有控分配方法来避免死锁
(3)当死锁发生时检测出死锁,并设法修复
(4)忽略死锁,一旦死锁发生便重启系统。
4、银行家算法
申请者事先说明对各类资源的最大需求量。
在进程活动期间动态申请某类资源时,由系统审查系统现有该资源的数目是否能满足当前进程的最大需求量,如能满足就予以分配,否则拒绝。
第6章进程调度
1、处理机调度评价指标
(1)周转时间是指将一个作业提交给计算机系统后到该作业的结果返回给用户所需要的时间
(2)吞吐率是指在单位时间内,一个计算机系统所完成的总工作量。
(3)响应时间是指从用户向计算机发出一个命令到计算机把相应的执行结果返回给用户所需要的时间
(4)设备利用率主要指输入输出设备的情况,特别是对某些要求I/O处理能力强的系统。
2、作业的状态及两个重要指标
作业是用户要求计算机所做的关于一次业务处理的全部工作
(1)提交状态:
一个作业在其处于从输入设备进入外部存储设备的过程称为提交状态。
其信息未全部进入系统,故不能被调度程序选取
(2)收容状态(后备状态):
若一个作业的全部信息已全部被输入进输入井,在它还未被调度去执行之前,该作业处于收容状态。
输入井是专门用来存放待处理作业信息的一组外存分区。
(3)执行状态:
作业调度程序从后备作业中选取若干个作业到内存投入运行。
这些被选中的作业处于执行状态。
作业调度为这些作业建立进程并分配必要的资源。
(4)完成状态:
当作业运行完毕,但它所占用的资源尚未全部被系统回收时,该作业处于完成状态。
3、多级调度的含义
(1)作业调度:
又称宏观调度,或高级调度。
其主要任务是按一定的原则对外存输入井上的大量后备作业进行选择,给选出的作业分配内存、输入输出设备等必要的资源,并建立相应的进程。
另外,当该作业执行完毕时,还负责回收系统资源。
(2)交换调度:
又称中级调度。
其主要任务是按照给定的原则和策略,将处于外存交换区中的就绪状态或等待状态的进程调入内存,或把处于内存就绪状态或内存等待状态的进程交换到外存交换区。
(3)进程调度:
又称微观调度或低级调度。
其主要任务是按照某种策略和方法选取一个处于就绪状态的进程占用处理机。
在确定了占用处理机的进程后,系统必须进行进程上下文切换以建立与占用处理机进程相适应的执行环境。
(4)线程调度。
(在多道批处理系统中,存在着作业调度和进程调度。
但是,在分时系统和实时系统中,一般不存在作业调度,而只有进程调度、交换调度和线程调度。
)
4、作业调度策略并会计算
先来先服务调度算法(FCFS):
按作业来到的先后次序进行调度
短作业优先调度算法:
按作业请求运行的时间长短进行调度
5、进程调度的方式
(进程调度的功能:
记录进程的有关情况;决定调度策略分派;实施处理机的分配和回收)
(1)非剥夺方式
让正在执行的进程继续执行,直到该进程完成或发生某事件而进入“完成”或“阻塞”状态时,才把处理机分配给“重要而紧迫”的进程。
(2)剥夺方式
当“重要而紧迫”的进程一到,便暂停正在执行的程序,立即把处理机分配给优先级更高的进程。
6、常用的进程调度算法及算法思想
循环轮转调度:
系统规定一个时间片,每个进程被调度时被分得一个时间片,当这一时间片用完时,该进程转为就绪态并进入就绪队列末端。
简单循环轮转调度算法:
当CPU空闲时,选取就绪队列首元素,赋予一个时间片,当时间片用完时,该进程转为就绪态并进入就绪队列末端。
可变时间片轮转调度:
每当一轮开始时,系统便根据就绪队列中已有的进程数目计算一次时间片,然后进行轮转。
在此期间所到达的进程都暂不进入就绪队列,而要等到此次轮转完毕后再一并进入。
第7章主存管理
1、主存管理的功能
地址映射:
实现逻辑地址到物理主存地址的映射
主存分配:
构造分配用的数据结构、制定策略、实施主存分配与回收,
存储保护:
在多用户环境中,主存储器按区分配给各用户程序使用。
为了互不影响,必须由硬件(软件配合)保证各用户程序只能在给定的存储区域内活动,这种措施叫做存储保护。
主存扩充
2、静态地址映射与动态地址映射的内涵与区别
在作业装入过程中随即进行的地址变换方式称为静态地址映射;
在程序执行期间,随着每条指令和数据的访问自动地连续地进行地址映射,这种地址变换方式称为动态地址映射。
(什么是虚拟存储器
由操作系统和硬件相配合来完成主存和辅存之间的信息的动态调度。
这样的计算机系统好像为用户提供了一个其存储容量比实际主存大得多的存储器,这个存储器称为虚拟存储器
)
(存储保护:
上下界防护,基地址、限长防护)
3、灵活应用三类作业放置策略