自考《操作系统概论》串讲笔记Word文件下载.docx
《自考《操作系统概论》串讲笔记Word文件下载.docx》由会员分享,可在线阅读,更多相关《自考《操作系统概论》串讲笔记Word文件下载.docx(54页珍藏版)》请在冰豆网上搜索。
![自考《操作系统概论》串讲笔记Word文件下载.docx](https://file1.bdocx.com/fileroot1/2022-11/28/08283d49-f9e4-4ec8-9d00-5d37cd29ab85/08283d49-f9e4-4ec8-9d00-5d37cd29ab851.gif)
(2)分时操作系统的主要特点:
同时性、独立性、及时性、交互性。
3.实时操作系统
(1)计算机系统接收到外部信号后及时进行处理,并且要在严格的时限内处理完接收的事件并且给出反馈信号的系统称为实时系统。
(2)实时操作系统的主要特点:
快速响应,及时处理;
高可靠性和安全性。
(3)实时操作系统的及时性更强。
4.(补充):
什么是前台作业和后台作业?
答:
在批处理兼分时的系统中,由分时系统控制的作业称为前台作业;
由批处理系统控制点作业称为后台作业。
四、操作系统的发展
1.(了解)微机操作系统
微机操作系统的主要功能是实现文件管理、输入/输出控制和命令的解释。
系统每次只允许一个用户使用计算机,称为“单用户操作系统”。
如CP/M,MS-DOS等。
操作系统提供给用户的接口是“命令语言”,用户通过键盘或鼠标输入命令请求操作系统服务。
2.网络操作系统(NOS)
把为计算机网络配置的操作系统称为网络操作系统。
网络操作系统的主要功能是实现各台计算机系统之间的通信以及网络中各种资源共享。
3.分布式操作系统
分布式计算机系统是由多台计算机组成的一种特殊的计算机网络。
分布式操作系统采用客户/服务器模式(C/S)。
分布式操作系统的主要特点:
统一性、透明性。
网络操作系统与分布式操作系统的异同:
相同点:
(1)都是安装在计算机网络上的操作系统;
(2)都能实现资源共享和通信。
不同点:
(1)是否有主次之分。
网络操作系统有,但分布式操作系统没有。
(2)是否共同完成一项任务。
分布式操作系统是,但网络操作系统不是。
5.嵌入式操作系统
嵌入式操作系统是指运行在嵌入式(计算机)系统中对各种部件、装置等资源进行统一协调、处理和控制的系统软件。
嵌入式操作系统的主要特点:
微型化和实时性。
6.当前流行的操作系统简介
(1)Windows:
多用户、多任务、图形化、窗口式的操作系统。
(2)UNIX:
多用户、多任务、分时操作系统。
UNIX的主要特点:
①短小精悍;
②具有可装卸的多层次文件系统;
③可移植性好;
④网络通信功能强。
UNIX是目前唯一可以安装和运行在从微机、工作站、大型机到巨型机上的操作系统。
(3)Linux:
多用户、多任务、通用操作系统。
Linux的特点:
支持TCP/IP网络协议,并能与其他网络集成,使异种机能方便地入网;
它支持并行处理和实时处理,能充分发挥硬件性能;
它支持多种文件系统,方便用户使用,等等。
五、处理器的工作状态(重点)
1.特权指令
(1)把CPU执行的指令分成两类:
特权指令和非特权指令。
(2)把不允许用户程序中直接使用的指令称为特权指令,其余的为非特权指令。
例如,I/O指令、设置时钟、设置控制寄存器、停机指令、设置中断屏蔽、传送PSW的指令等都是特权指令。
(3)I/O指令只允许在操作系统中使用,不允许在用户程序中使用。
若用户程序直接使用这些指令,则可能引起冲突或由于某些意外而造成错误。
2.管态和目态
为避免用户程序中错误地使用特权指令,计算机硬件结构中的中央处理器具有两种工作状态:
目态和管态。
系统程序运行的状态为管态(包括特权指令)。
用户程序运行的状态为目态。
3.怎样限制用户程序使用特权指令?
如果中央处理器在目态工作,却取到了一条特权指令,此时中央处理器将拒绝执行该指令,并形成一个“程序中使用了非法指令”的信号。
硬件的中断装置识别到该信号后,将暂停用户程序的执行,并转交给操作系统去处理。
操作系统通知用户:
“程序中有非法指令”,应进行修改。
这样可限制用户使用特权指令。
4.程序状态字
程序状态字(PSW)是用来控制指令执行顺序并且保留和指示与程序有关的系统状态。
程序状态字包含三部分内容:
(1)程序基本状态(指令地址、条件码、目态/管态、等待/计算)
(2)中断码
(3)中断屏蔽位。
六、操作系统与用户的接口
1.操作系统提供了两类接口:
程序员接口和操作员接口。
2.什么是访管指令?
常见的有哪些?
访管指令不是特权指令,既可在管态下执行,又可在目态下执行,主要功能是自愿进管,引起访管中断。
例如,INT,drop。
3.(重点)什么是“系统调用”?
为什么要提供“系统调用”?
操作系统编制了许多不同功能的子程序,供用户程序执行中调用。
这些由操作系统提供的子程序称为系统功能调用程序,简称系统调用。
系统调用是操作系统为用户程序提供的一种服务界面,或者说,是操作系统保证程序设计语言能正常工作的一种支持。
在源程序一级,用户用程序设计语言描述算题任务的逻辑要求,例如读文件、写文件、请求主存资源等。
这些要求的实现只有通过操作系统的系统调用才能完成,其中有些要求还必须执行硬件的特权指令(如I/O指令)才能达到目的。
4.用户程序执行时,若取了访管指令,CPU将转入了管态。
当系统调用程序后,CPU回到了目态。
5.操作系统提供了让联机用户表示作业执行步骤的手段:
操作控制命令、作业控制语言。
第2章处理器管理
1.多道程序涉及的概念
2.进程的定义及其四大属性
3.进程控制块(PCB)和进程队列的组织
4.中断及中断处理的概念
5.进程调度和作业调度及其计算
6.线程的相关概念
1.多道程序设计
2.进程、原语
3.进程调度和作业调度
本章考试分值约为20~25分。
出题形式多以单选题、多选题、填空题、简答题、综合应用题为主。
一、多道程序设计(重点)
1.(了解)程序的顺序执行和并行执行
一个计算机问题,往往要依一定的顺序执行,执行的顺序是由编制的程序确定的。
例如,某个数据处理问题,程序的编制方法如图2-1所示。
图2-1程序的顺序执行
这个程序执行时,不能使输入机、处理器、打印机同时忙碌。
现代计算机具有处理器与外围设备并行工作的能力,我们可以把上述计算问题的升序分成三个可独立执行的程序模块:
输入程序、处理程序、打印程序。
这样,输入机、处理机、打印机就可能经常同时在忙碌,实现并行工作。
程序的并行执行,发挥了处理器与外围设备并行工作的能力,使处理器的效率有所提高。
但是由于处理器的执行速度远远高于外围设备的传输速度。
为了进一步提高效率,可以考虑同时接收两道以上的算题,这样有可能当一道算题在等待外围设备传输的同时让另一道算题占用暂时空闲的处理器。
2.(重点)多道程序设计
让多个计算题同时进入一个计算机系统的主存储器并行执行,这种程序设计方法称为多道程序设计,这样的计算机系统称为多道程序涉及系统。
实现多道程序设计的物质基础:
通道技术和中断系统。
3.多道程序设计的优缺点。
优点:
能充分发挥处理器的使用效率,增加单位时间内的算题量。
缺点:
(1)系统的效率和道数不成正比;
(2)可能延长某些作业的周转时间。
二、进程的概念(重点)
1.进程的定义
程序的执行必须依赖于一个实体——数据集。
把一个程序在一个数据集上的一次执行称为一个进程。
程序是静止的,进程是动态的。
2.进程的组成
进程由程序、数据集合和进程控制块(PCB)组成。
3.为什么要引入进程?
(1)提高资源的利用率;
(2)正确描述程序的执行情况。
4.(重点)进程和程序有什么区别?
(1)进程是动态的,程序是静态的;
(2)多个进程可以有相同的程序;
(3)进程可以并发执行,但程序不可以,程序只能并行执行;
(4)进程是有生命期的,而程序没有生命期,可以做文档资料,长期保存。
5.进程的属性
答:
(1)进程是动态的,它包含了数据和运行在数据集上的程序
(2)多个进程可以含有相同的程序
(3)多个进程可以并发执行
(4)进程有三种基本状态:
等待态、就绪态、运行态
6.进程的状态转换(重点)
(1)运行态→等待态
(2)等待态→就绪态
(3)运行态→就绪态
(4)就绪态→运行态
进程刚被创建是,它的初始状态为“就绪态”。
当它能占用处理器时变成“运行态”。
7.进程的特性
(1)动态性
(2)并发性
(3)异步性。
三、进程控制块
1.进程控制块(PCB)包含四类信息
(1)标识信息
(2)说明信息
(3)现场信息
(4)管理信息。
2.一个进程在执行过程中,为了请求某种服务,可以再要求创建其它进程。
3.(重点)原语
操作系统中往往设计一些能完成特定功能且不可中断的过程。
这些不可中断的过程称为原语。
用于控制进程的原语有:
创建原语、撤销原语、阻塞原语、唤醒原语。
四、进程队列(了解)
1.进程的基本队列
等待队列和就绪队列。
2.入队、出队及队列管理的定义
一个进程从所在的队列中退出称为出队。
一个进程排入到一个指定的队列中称为入队。
系统中负责进程入队和出队的工作称为队列管理。
五、中断和中断处理
1.中断、中断源及中断处理程序的定义
由于某些事件的出现,中止现行进程的运行,而由操作系统去处理出现的事件,待适当的时候让被中止的进程继续运行,这个过程称为中断。
引起中断的事件称为中断源。
对出现的事件进行处理的程序称为中断处理程序。
2.中断类型
(1)硬件故障中断
(2)程序中断
(3)外部中断
(4)输入/输出中断
(5)访管中断。
前四类中断是由于外界的原因迫使正在运行的进程被打断,因此称为强迫性中断,第五类中断是正在运行的进程所期待的,它表示正在运行的进程对操作系统有某种需求,故称为自愿性中断。
3.中断响应的定义
通常在处理器执行完一条指令后,硬件的中断装置立即检查有无强迫性中断事件发生。
无论发生那类中断事件,都由于硬件的中断装置暂停现行进程的运行,而让操作系统的中断处理程序占用处理器。
这一过程称为中断响应。
4.程序状态字寄存器的定义
在单处理器的计算机系统中,整个系统设置一个用来存放当前运行进程的PSW的寄存器,该寄存器称为程序状态字寄存器。
5.硬件发现中断事件应做哪些事情?
中断装置应首先把出现的中断事件存放到程序状态字寄存器中的中断码为止,然后把程序状态字寄存器中的当前PSW作为旧PSW存放到预先约定好的主存固定单元中保护起来,再把已经确定好的操作系统处理程序的新PSW送到程序状态字寄存器中,成为当前PSW。
这一过程称为交换PSW。
中断装置通过交换PSW完成中断响应,使被中断进程让出处理器,且使处理器按照中断处理程序的新PSW控制执行。
6.中断处理中,中断处理程序应做哪些事情?
(1)保护好被中断进程的现场信息。
(2)分析引起中断的原因。
(3)对中断事件进行具体处理。
7.(了解)中断事件的处理原则
(1)硬件故障中断事件的处理
(2)程序中断事件的处理
(3)外部中断事件的处理
(4)输入/输出中断事件的处理
(5)访问中断事件的处理
六、处理器调度(重点)
1.输入井、后备作业的定义
在操作系统中,把磁盘上用来存放作业信息的专用区域称为输入井。
把在输入井中等待处理的作业称为后备作业。
2.作业调度的定义
根据系统设计时确定的允许并行工作的道数和一定的规则(或称算法)从输入井的后备作业中选取若干作业,让它们进入主存储器,使它们有机会去获得处理器执行的工作称为作业调度。
3.(重点)作业调度的必要条件
系统现有的尚未分配的资源可以满足被选作业的资源要求。
4.进程调度的定义
按照一定的规则从就绪进程中选取一个进程,让它占用处理器。
这项从就绪进程中选取一个进程,让它占用处理器的工作称为进程调度。
5.进程调度从就绪态选进程,作业调度从后备态(收容态)选作业。
6.作业调度与进程调度的区别
作业调度是按一定的作业调度算法从输入井的后备态中选择资源可以满足的作业装入主存,使其有机会占用CPU执行,而一个作业能否占用CPU,何时占用CPU则由进程调度决定的,进程调度则按一定的进程调度算法从就绪队列中选择一个进程为其分配CPU去运行,作业调
度从输入井中选中作业并拖它装入主存中,为其创建一个进程,多个不同的进程初始态都为就绪态,然后由进程调度选择当前可占用CPU的进程,进程运行中由于某种原因状态发生变化,当它让出处理器时,进程调度又再选另一个作业的进程去执行。
7.(重点)在涉及调度算法时,可考虑如下原则:
(1)公平性;
(2)平衡资源使用;
(3)极大的流量;
8.一个理想的调度算法应该是既提高系统效率,又能使进入系统的作业及时得到计算结果。
9.作业i周转时间=作业i得到计算结果的时间-作业i进入输入井的时间
对n个作业来说,它们的平均周转时间T为:
T=(
)÷
n
周转时间和平均时间与选用的调度算法有关。
10.(重点)常用的作业调度算法
(1)先来先服务算法
它是按照作业进入输入井的先后次序来挑选作业,先进入作业的优先被挑选。
一个先进入的作业,若它所需要的资源或其中的一部分资源已被在它之前的作业占用且尚未归还,那么,这个作业将被推迟执行,而去选择在它之后进入的资源能满足的作业先执行。
一旦有作业执行结束归还资源后,作业调度再次选择作业时,仍要按进入输入井的次序去挑选,刚刚被推迟的作业有可能被优先选中。
先来先服务算法具有一定的公平性,容易实现。
但增加了平均周转时间,降低了系统的吞吐能力。
(2)计算时间短的作业优先算法
采用这种算法时,要求用户对自己的作业需要计算的时间预先作一个估计,在作业控制说明书中加以说明。
作业调度时依据在输入井中的作业提出的计算时间为标准,优先选择计算时间短且资源能得到满足的作业。
这种算法能降低作业的平均周转时间,从而提高系统的吞吐能力,但可能使大作业等待时间过长。
(3)响应比高者优先算法
响应比最高者优先连算法综合考虑等待时间和计算时间,把响应比定义为:
响应比=等待时间/计算时间
一个计算时间短的作业容易得到较高的响应比,作业能被优先选中。
一个大作业在等待了相当长的时间后,也或得了较高的响应比。
(4)优先数调度算法
(5)均衡调度算法
(注意):
作业调度的必要条件和开始调度时间。
【例1】:
有一个多道程序设计系统,设供用户使用的主存空间为100K。
现有一作业序列如下:
作业号
进入输入井时间
需计算时间
主存量要求
A
B
C
D
E
10.1时
10.3时
10.5时
10.6时
10.7时
42分钟
30分钟
24分钟
12分钟
15K
60K
50K
10K
20K
该系统采用多道程序设计技术,请分别写出采用“先来先服务调度算法”和“计算时间短优先算法”选中的作业的平均周转时间。
先来先服务算法:
装入输入井时间
开始执行的时间
执行结束的时间
周转时间
11.3时
10.8时
11.7时
12.1时
12.3时
0.7小时
1.0小时
1.6小时
1.1小时
5个作业的平均周转时间为:
(0.7+1.0+1.6+1.1+1.6)÷
5=1.2(小时)
计算时间短的作业优先算法:
11.9时
1.8小时
1.2小时
(0.7+1.0+1.8+1.1+1.2)÷
5=1.16(小时)
【例2】:
某单道程序设计系统中有3个作业A、B、C,它们到达输入井的时间及需要的计算时间如下表:
作业名
到达输入井时间
8:
50
9:
00
30
1.5小时
0.4小时
当这3个作业全部到达输入井后,系统以响应比高者优先调度算法选择作业,忽略调度所用的时间,则作业被选中的次序应是怎样的呢?
由于进行作业调度的时间是在作业全部到达输入井之后,即在9:
30开始进行调度,此时作业A、B、C分别等待了40分钟、30分钟和0分钟,因而它们的响应比为:
A作业的响应比=40/90=4/9
B作业的响应比=30/24=5/4
C作业的响应比=0/60=0
可见,作业B的响应比最高,当然优先选择作业B装入主存储器执行。
作业B执行结束后,又要进行调度,由于等待时间发生了变化,故应重新计算响应比。
此时的计算结果如下:
A作业的响应比=64/90=32/45
C作业的响应比=24/60=2/5
显然作业A的响应比高于作业C的响应比,因而先选择在作业A执行,最后再让作业C进入主存储器执行。
11.进程切换的定义及原因
我们把一个进程让出处理器由另一个进程占用处理器的过程称为进程切换。
下列情况均会引起进程的切换(原因):
(1)一个进程从运行状态变成等待状态。
(2)一个进程从运行状态变成就绪状态。
(3)一个进程从等待状态变成就绪状态。
(4)一个进程完成工作后被撤销。
12.(重点)常用的进程调度算法
(1)先来先服务调度算法
按照进程进入就绪队列的先后次序可占用处理器的进程。
一旦一个进程占有了处理器,它就一致运行下去,直到该进程完成工作而结束或者因等待某事件而不能运行时才让出处理器。
(2)最高优先级调度算法
进程占用处理器后有两种方式:
第一种方式是非抢占式的(非剥夺式的),第二种方式是可抢占式的(剥夺式的)。
在实时系统中,可把处理紧急情况的报警进程定为最高优先级的进程,一旦有紧急事件发生时,这个报警进程就可抢占处理器进行紧急处理和发出报警信号。
优先数大的优先级高,出Unix之外。
(3)时间片轮转调度算法
时间片是指允许进程一次占用处理器的最长时间。
时间片轮转调度算法把就绪进程按就绪的先后次序排成队列,调度时总是选择就绪队列中的第一个进程,让它占用处理器,但规定它一次连续占用处理器的实践不能超过预定的时间片。
在分时操作系统中,经常采用时间片轮转调度算法。
【例】:
假设有5个进程,只有一个在执行,有5个进程在等待,有4个进程在就绪。
七、线程的概念
1.线程的定义
线程又称轻量级进程,是进程中可独立执行的子任务。
一个进程中可以有一个或多个线程,每个线程都应有一个唯一的标识符和一张线程描述表。
线程描述表记录线程执行时的现场信息及状态等。
2.线程的基本属性:
(1)同一个进程中的各线程驻留在分配给进程的主存地址空间中,且共享该进程的所有资源。
(2)一个线程被创建后便开始了它的生命周期,直至执行结束而终止。
线程在生命期内会经历等待态、就绪态和运行态等各种状态变化。
(3)线程是处理器的独立调度单位,多个线程可以并发执行。
(4)不同的线程可以执行相同的程序,即同一个服务程序若被不同用户调用时操作系统就为它们创建不同的线程。
3.线程与进程的根本区别
线程与进程的根本区别是把进程作业资源分配单位,而线程是调度和执行单位;
每一个进程都有自己的主存空间,但同一进程中的各线程共享该进程的主存空间,进程中的所有线程对进程的整个主存空间都有存取权限。
更多优质自考资料尽在XX贴吧自考乐园俱乐部
(
第3章存储管理
1.计算机系统中的存储器
2.逻辑地址和绝对地址
3.重定位
4.单用户连续存储管理
5.固定分区管理
6.可变分区存储管理及常用的分配算法
7.页式虚拟存储管理、虚拟存储器、页面调度
1.可变分区方式的主存分配算法以及移位技术
2.页式主存空间的分配与回收
3.页面调度算法
本章考试分值约为15分。
一、计算机系统中的存储器
1.存储器的分类
若把CPU中的寄存器看作是一种特殊的存储器,则可把存储器分为:
寄存器、主存储器和高速缓冲存储器、辅助存储器三个层次。
2.寄存器
寄存器是计算机中价格最昂贵飞存储器,它的存取速度快,但容量小。
常用的寄存器有:
指令寄存器、通用寄存器、控制寄存器。
3.主存储器
主存储器容量较大,存储速度也较快。
存储单元以字节为单位进行编址,若干字节组成一个字,处理器能按地址读/写一个字节或一个字。
主存用于存放用户当前需要执行的程序和数据,以及操作系统进行控制和管理的信息。
高速缓冲寄存器的速度快于主存,但造价比主存高,因而存储容量不大。
用于存放经常被访问的单元,以提高主存的速度。
4.辅助存储器
辅助存储器的存储容量大,可用来长期存储信息,但处理器不能直接读/写辅助存储器,因此速度较慢。
二、重定位
1.绝对地址和逻辑