1、自考操作系统概论笔记资料仅供参考一、 操作系统概论1、计算机系统:硬件由中央处理器、存储器、输入输出控制系统、各种输入输出设备组成、软件由系统软件、支撑软件、应用软件组成;2、操作系统:是管理计算机系统资源、控制程序执行、改进人机界面和为应用软件提供支持的一种系统软件;主要作用有:1、管理计算机系统资源;2、为用户提供方便的使用接口;3、扩充硬件; 操作系统按功能分为:处理器管理、存储管理、文件管理、设备管理; 操作系统的类型:批处理操作系统、分时操作系统、实时操作系统; 微机操作系统、网络操作系统、分布式操作系统、嵌入式操作系统3、处理器的工作状态:特权指令:不允许用户程序中直接执行的指令称
2、特权指令;管态和目态:能执行特权指令时称管态,否则称目态4、程序状态字:用来控制指令执行顺序而且保留和指示与程序有关的系统状态,分成程序基本状态、中断码、中断屏蔽位三个部分;操作系统与用户程序的接口:系统调用操作系统与用户的接口:操作控制命令;二、 处理器管理1、 多道程序设计:是指允许多个程序同时进入一个计算机系统的主存储器并启动进行计算的方法。 多道程序技术运行的特征:多道、宏观上并行、微观上串行。 多道程序设计不但提高了处理器的利用率,而且降低了完成计算所需的总时间、从而提高了单位时间内的算题能力,也提高了吞吐量。2、 进程的概念:把一个程序在一个数据集上的一次执行称为一个进程。 为什么
3、要引入进程:1.提高资源的利用率;2.正确描述程序的执行情况 进程的属性:1.进程是动态的,它包含了数据和运行在数据集上的程序 2.多个进程能够含有相同的程序 3.多个进程能够并发执行 4.进程有三种基本状态:等待态、就绪态、运行态。 每个进程在执行过程中的任一时刻当且仅当处于上述三种基本状态之一。(运行态-等待态、等待态-就绪态、运行态-就绪态、就绪态-运行态) 进程的三个特性:动态性、并发性、异步性。3、 进程控制块:是对进程进行管理和调度的信息集合。它包含四类信息:标识信息、说明信息、现场信息、管理信息。 原语:操作系统中往往设计一些能完成特定功能且不可中断的过程,称为原语。原语分为两类
4、:1.机器指令级:其特点是执行期间不允许中断,是一个不可分割的单位。2.功能级的:其特点是作为原语程序段不允许并发执行。 用于进程控制的原语有:1. 创立原语:为一个程序分配一个工作区和建立一个进程控制块,并置该进程为就绪态;2. 撤销原语:一个进程完成工作后,收回它的工作区和进程控制块;3. 阻塞原语:进程运行过程中发生等待事件时,把进程改为等待态;4. 唤醒原语:当进程等待事件发生时,把进程的状态改为就绪态。4、 进程队列:把处于相同状态的进程链接在一起,称进程队列,由于进程控制块能标示进程的存在和动态刻画进程的特性,因此,进程队列能够用进程控制块的链接来形成。(两种链接方式:单向和双向)
5、 进程的基本队列:1.就绪队列:由若干就绪进程按一定次序链接起来的队列; 2.等待队列:把等待资源或等待某些事件的进程排队的队列。 出队:一个进程从所在的队列退出的操作称为出队; 入队:一个进程排入到一个指定的队列称为入队; 队列管理:系统中负责进程出队和入队的工作称为队列管理。5、 中断与中断处理:由于某些事件的出现,中止现行进程的运行,而由操作系统去处理出现的事件,待适当的时候让被中止的进程继续运行,这个过程称为中断。而引起中断的事件称为中断源。对出现的事件进行处理的程序称为中断处理程序。 中断事件的类型:一、强迫性中断事件:是由于外界的原因迫使正在运行的进程被打断,不是正在运行的进程所期
6、待的,称为强迫性中断事件。断点可能发生在任何位置。包括以下事件:l 硬件故障中断:它是由机器故障造成的。l 程序中断:是由于程序执行到某条机器指令时可能出现的各种问题而引起的中断。l 外部中断:这是由各种外部事件引起的中断。l 输入/输出中断:输入输出控制系统发现外围设备完成了输入输出操作而引起的中断,或在执行输入输出操作时通道或外围设备产生错误而引起的中断。二、自愿性中断事件:表示正在运行的进程对操作系统有某种需求,是正在运行的进程所期待的,称为自愿性中断事件。在小型和微型计算机中称系统调用。自愿中断的断电是确定的。包括:l 访管中断:它是正在运行的进程为了请求调用操作系统的某个功能而执行一
7、条访管指令而引起的中断。 中断响应:处理器没执行一条指令后,硬件的中断装置立即检查有无中断事件发生,若有,则暂停现行进程的执行,而让操作系统的中断处理程序占用处理器,这一过程称中断响应。中断响应过程中,中断装置的三项工作:l 判断是否有中断事件发生;l 判别自愿性中断,只要检查操作码是否为访管指令即可;l 判别强迫性中断,则要检查中断寄存器的内容。若为0则无中断,若非0则有中断发生,若有中断发生,保护断点信息。 程序状态字(PSW):每一个程序都有一个程序状态字来反映本程序的执行状态,如基本状态、中断码和中断屏蔽位等内容。 程序状态字寄存器:系统设置一个用来存放当前运行进程的PSW的寄存器。
8、三种PSW:l 当前PSW:放在程序状态寄存器中断的PSW是当前正在占用处理器的进程的PSW。l 新PSW:中断处理程序的PSW。l 旧PSW:把保护好的被中断进程的PSW称为旧PSW。l 当出现中断事件后,把被中断进程的PSW保存为旧PSW,即完成断点信息保护。 启动操作系统的中断处理程序工作:中断装置经过“交换PSW”过程完成此项任务,即把出现的中断事件放到当前PSW中断码位置,然后当前PSW保存为旧PSW,再把操作系统中断处理程序的新PSW送到程序状态字寄存器中,称为当前的PSW。 中断处理:中断处理程序对中断事件的处理分两步:第一步是保护好被中断进程的现场信息,即把中断进程的通用寄存器
9、和控制寄存器内容以及被中断进程的旧PSW保存起来,这些信息能够保存在被中断进程的进程控制块。第二步是根据旧PSW中指示的中断事件进行具体处理。 各类中断事件的处理原则:多数情况下,中断处理程序只需做一些现场保护、分析事件性质等原则性的处理,而具体的处理可由适当的例行程序来完成。6、 处理器调度:处理器的两级调度:作业调度和进程调度。 在操作系统中,把磁盘上用来存放作业信息的专业区域称为输入井,把在输入井中等待处理的作业称为后备作业。 作业调度:从输入井中选取后备作业装入主存储器的工作称为作业调用。(必须遵循一个必要条件:即系统现有的尚未分配的资源能够满足被选作业的资源要求)。 进程调度的职责:
10、按选定的进程调度算法从就绪队列中选择一个进程,让它占用处理器。 选择进程调度算法的几个准则:1.提高处理器的利用率;2.增大吞吐量;3.减少等待时间;4.缩短响应时间。 作业调度算法:设计算法是时考虑的原则:公平性、平衡资源使用、极大的流量。l 先来先服务(FCFS)方法:按照作业进入输入井的先后次序来挑选作业,先进入的作业优先被挑选。优点(具有一点的公平性,容易实现。)缺点(可能使计算时间短的作业周转时间很长,从而也增加了平均周转时间,降低了系统的吞吐能力。)l 短作业优先算法(SJF):对预计执行时间短的作业(进程)优先分派处理器。优点(改进平均周转时间和平均带权周转时间,缩短作业的等待时
11、间;提高系统的吞吐量)。缺点(对长作业非常不利,可能长时间得不到执行;未能依据作业的紧迫程度来划分执行的优先级;难以准确估计作业(进程)的执行时间,从而影响调度的性能。)l 最高响应比优化法:同时考虑每个作业的等待时间长短和估计需要的执行时间长短,从中选出响应比最高的作业投入执行。l 优先级调度算法:为每一个作业确定一个优先级,优先级高的作业优先被选取,当几个作业有相同优先级时,对这些具有相同优先级的作业再按照先来先服务原则进行调度。l 均衡调度算法:这种算法是根据作业对资源的要求进行分类,作业调度轮流从不同的作业中去挑选作业,尽可能地使得不同资源的作业同时执行。 进程切换:一个进程让出处理器
12、由另一个进程占用处理器的过程称。以下情况会引起进程切换:1.一个进程从运行状态变成等待状态; 2.一个进程从运行状态变成就绪状态;3.一个进程从等待状态变成就绪状态; 4.一个进程完成工作后背撤销。 常见的进程调度算法有以下几种:1. 先来先服务调度算法:按进程先进入就绪队列的先后次序选择能够占用处理器的进程。2. 最高优先级调度算法:进程调度总是让当时具有最高优先级的进程先使用处理器。(对于高优先级进程占用处理器的两种对待方式:非抢占式和可抢占式)3. 时间片轮转调度算法:时间片是指允许进程一次占用处理器的最长时间。时间片轮转调度算法让就绪进程按就绪的先后次序排成队列,每次总选择该队列中第一
13、个进程占用处理器,但规定只能使用一个时间片,如该进程尚未完成,则排入队尾,等待下一个供它使用的时间片。(该算法经常见于分时操作系统中)7、 线程的概念:又称轻型进程,线程是程序执行流的最小单元。一个线程由线程ID,当前指令指针,寄存器集合和堆栈组成。线程有就绪、阻塞和运行三钟基本状态。 引入线程的原因:进程能够提高CPU的利用率,进程之间的切换是非常耗费资源和时间的,为了能更进一步的提高操作系统的并发性,从而引进了线程。 线程的属性:1. 同一进程中的各线程驻留在分配给进程的主存地址空间中,且共享该进程的所有资源。2. 一个线程被创立后便开始了她的生命周期,直到执行结束而终止。线程在生命周期内
14、会经历等待态、就绪态和运行态。3. 线程是处理器的独立调度单位,多个线程能够并发执行。4. 不同线程能够执行相同的处理程序,即一个服务程序被不同的用户调用时,操作系统为她们创立不同的线程。 进程与线程的根本区别是把进程作为资源分配单位,而线程是调度和执行单位。每一个进程都有自己的主存空间,但同一进程中的各线程共享该进程的主存空间,进程中所有线程对进程的整个主存空间都有存取权限。三、 存储管理1. 计算机系统中的存储器:存储器可分为:寄存器、主存储器和高速缓冲存储器、辅助存储器(包括磁带、软盘、硬盘、光盘等)三个层次。 寄存器:计算机中价格最昂贵的存储器,它的存取速度快,但容量小。常见的有:指令
15、寄存器-用于存放当前从主存储器中读出的指令; 通用寄存器-用于存放当前参加运算的操作数、操作结果等; 控制寄存器-用于存放控制信息以保证程序的正确执行和系统的安全。 主存储器:唯一能够由CPU直接访问的存储器。存储容量较大,存储速度也较快。主存用于存放用户当前需要执行的程序和数据,以及操作系统进行控制和管理的信息。 高速缓冲存储器:速度快于主存,造价高于主存,存储容量不大。用于存放经常被访问的单元,以提高主存的速度。 辅助存储器:存储容量大,可用来长期存储信息,但处理器不能直接读/写辅助存储器,故速度较慢。用于存放当前暂不参与运行的程序和数据以及一些需要永久性保存的信息。2. 重定位:把逻辑地
16、址转换称绝对地址的工作称为重定位或者地址转换。 绝对地址:主存储器以字节为编址单位,容量为n的主存储器中,每个单元有唯一的编号,从0到n-1,这个唯一的编号就是主存储器的绝对地址,与绝对地址对应的主存空间称为物理地址空间。 逻辑地址:在多道程序设计的系统中,操作系统为了方便用户,就允许每个用户都认为自己的作业的程序和数据存放在地址是0开始的连续空间中。这样用户程序中使用的地址就是逻辑地址,与其对应的存储空间称为逻辑地址空间。 静态重定位:在装入一个作业时,把作业中的指令地址和数据地址全部转换成绝对地址,由于地址转换工作是在作业执行前集中一次完成的,因此在作业执行过程中就无需再进行地址转换工作,
17、这种定位方式称为静态重定位。 动态重定位:在装入一个作业时,不进行地址转换,而是直接把作业装到分配的主区域中。在作业执行过程中,每当执行一条指令时都由硬件的地址转换机构转换成绝对地址。这种方式的地址转换是在作业执行时动态完成的。 动态重定位由软件(操作系统)和硬件(地址转换机构)相互配合来实现,动态重定位的系统支持“程序浮动”,而静态重定位则不能。3. 单用户连续存储管理:是一种最简单的存储管理方式。在这种管理方式下,操作系统占了一部分主存空间,其余剩下的主存空间都分配给一个作用使用,即任何时刻主存储器中最多只有一个作业。 地址转换方法如下:1.设置一个界限寄存器(BR),其内容是主存中用户区
18、的首地址,只当操作系统功能扩充或修改时,改变了所占区域的长度,才更改界限寄存器的内容。 2.绝对地址=逻辑地址+BR的值(界限地址) 3.采用静态重定位。 处理器在执行指令时要检查其绝对地址是否=界限地址a,且=最大地址c。若绝对地址在规定的范围内,则可执行,否则产生一个“地址越界”中断事件,由操作系统进行处理,以达到存储保护的目的。4. 固定分区存储管理:把主存储器中可分配的用户区域预先划分成若干个连续区,每一个连续区称为一个分区,一旦划分好后,这些分区的大小和个数就固定不变。 固定分区管理利用一张“主存分配表”说明各分区情况。表中指出各分区的起始地址和长度,并为每一个分区设置标志位。当标志
19、位为0时表示空闲,非0时表示已被占用。5. 可变分区存储管理6. 页式虚拟存储管理四、 文件管理1.概述:文件管理(文件系统):指操作系统中设计对信息进行管理的部分; 文件:逻辑上具有完整意义的信息集合,每个文件都要用一个名字作标识; 文件系统的功能:1、实现从逻辑文件到物理文件之间的转换;2、有效地分配文件存储空间;3、建立文件目录;4、提供合适的存取方式以适应各种不同的应用;5、确保文件安全性;6、提供一组文件操作。 文件分类:按用途分系统文件、库文件和用户文件;按保护级别分:只读文件、读写文件、执行文件和不保护文件;2、文件的存储介质:可用来记录信息的磁带、硬磁盘组、软件磁盘片、光盘、卡
20、片等称为存储介质;存储介质上可连续存储信息的一个区域称为块,或称为 ;3、文件的组织: 文件的逻辑结构:逻辑文件:一是流式文件;二是记录式文件; 文件的存储结构:物理文件:存放在存储介质上的文件称为物理文件;记录式文件的三种结构:顺序结构、链接结构、索引结构;文件的存取方式:顺序存取、随机存取; 记录的成组和分解:把若干个记录合并成一组存入一块的工作称为记录的成组;从一组逻辑记录中把一个逻辑记录分离出来的工作称为记录的分解;4、储空间的分解: 位示图法:一个简单的管理办法是在主存储器的系统区中取若干个字组成的存储区构造成一张位示图来指示磁盘存储空间的使用情况。 空闲块链接法:分为单块链接、成组
21、链接;5、文件目录:一组目录、二组目录、树形目录6、件的安全性: 文件的保护:1、防止天灾人祸造成的破坏;2、防止系统故障造成的破坏;3、防止用户共享文件时造成的破坏;4、防止计算机病毒的侵害; 文件的保密:是指防止她人窃取文件。为文件设置口令是实现文件保密的一种可行方法。对极少数极为重要的保密文件,可把文件信息翻译成密码形式保存。7、文件系统提供给用户的最基本的文件操作有:建立、打开、读、写、关闭、删除等操作。五、 设备管理1、设备管理的功能:1、实现对外围设备的分配与回收;2、实现外围设备的启动;3、实现对磁盘的驱动调度;4、处理外围设备的中断事件;5、实现虚拟设备。2、外围设备的分类:外
22、围设备可分成两大类:一类是只能让一个作业独占使用的设备,一般把在作业执行期间只允许一个作业独占使用的设备称为独占设备;另一类是能够由几个作业同时使用的设备,一般称这种能够让几个作业同时使用的设备为可共享设备,同时使用的含义是指一个作业尚未撤离,另一个作业即可使用,但每一时刻仍只有一个作业能启动设备,允许她们交替地启动。3、独占设备的分配: 设备的绝对号:计算机系统对每一台设备进行登记,且为每一台设备确定一个编号,以便区分和识别,这个确定的编号称为设备的绝对号; 设备的相对号:由用户对自己需要使用的若干台同类设备给出的编号称为设备的相对号; 设备的独立性:用户编制程序时使用的设备与实际占用的设备
23、无关,设备的这种特性称为设备的独立性。具有设备独立性的计算机系统,在分配设备时适应性好,灵活性强。这是因为:1、系统只要从指定的那一类设备中找出“好的且尚未分配的”设备来进行分配;2、万一用户使用的设备出了故障,系统就能够从同类设备中找出另一台“好的且尚未分配的”设备来替换;4、磁盘驱动的调度: 执行一次信息传输操作所花的时间有三部分:寻找时间、延迟时间、传送时间 驱动调度:决定等待访问者执行次序的工作称为驱动调度,采用的调度策略称为驱动调度算法。对磁盘来说,驱动调度包括“移臂调度”和“旋转调度”两部分。一般总是先进行移臂调度,再进行旋转调度。移臂调度的目标是尽可能地减少寻找时间,旋转调度的目
24、标是尽可能地减少延尽时间。 移臂调度:先来先服务、最短寻找时间优先、电梯调度;l 最短寻找时间优先算法与电梯调度算法的区别:最短寻找时间优先算法不考虑臂的移动方向,总是优先选择离前位置最近的那个柱面的访问者,这种选择可能导致移动臂来回改变移动方向;电梯调度算法是沿着臂移动方向去选择,仅当沿臂移动方向无等待访问者进才改变臂的移动方向。 旋转调度:进行旋转调度需区分的几种情况若干请求要访问同一磁头下的不同扇区、不同磁头下的不同编号扇区、不同磁头下的相同编号的扇区; 信息的优化分布:信息在磁道上的排列方式也会影响旋转调度的时间;5、设备的启动和I/O中断处理 输入输出操作:指主存储器与外围设备之间的
25、信息传送操作; 输入输出处理器:通道能单独地完成输入输出操作,因此称通道为输入输出处理机。 IBM系统的通道命令:命令码(1字节)、数据主存地址(3字节)、标志码(1字节)、传送字节个数(3字节); 命令码分三类:数据传输类、通道转移类、设备控制类; 外围设备的启动:准备阶段、中央处理器执行“启动I/O指令阶段、通道向中央处理器汇报命令执行情况阶段。 设备处理一致性:不考虑设备的具体物理特性(实际上设备的物理特性隐含在通道程序中)的处理方法称为设备处理一致性; I/O中断处理事件:操作正常结束、操作异常结束;6、缓冲技术:操作系统把利用缓冲区来缓解处理器与外围设备之间工作速度不匹配的矛盾而采用
26、的技术称为缓冲技术。 单缓冲:是一种最简单的缓冲技术,操作系统在主存储器的系统区中只设立一个缓冲区;双缓冲:双缓冲技术是利用两个缓冲区来完成输入输出操作的工作。 缓冲池:操作系统能够在主存中设置一组缓冲区,这一组缓冲区称为缓冲池。缓冲池中的各缓冲区是系统的公共资源,可供各进程共享,并由操作系统统一分配和管理。 系统初始化时缓冲池中的各缓冲区都是未被使用的,称为空缓冲区。7、虚拟设备: 脱机外围设备操作:完成输入输出任务的外围计算机无需进行计算,只是把信息从一种存储介质传送到另一种存储介质上,这种操作是独立于主计算机的,不是在主计算机控制下进行的,称之为脱机外围设备操作。脱机外围设备操作存在的问
27、题:1、使用多台计算机、成本高。2、操作操作员的手工操作,在主计算机和外围计算机之间来回搬动磁盘,既费时间又增加了出错的可能。3、增加了作业的周转时间,脱机外围设备操作必须将一批作业传送到磁盘之后,才能把磁盘移动到主计算机系统上。 联机同时外围设备操作:又称为斯普林操作,是指预输入程序把作业流中的作业信息传送到输入井保存,作业被选中执行时不必再启动输入机,而只要从磁盘上的输入井区域中读取信息。作业执行中产生的结果也可暂时先存入在输出井中,待作业执行结束后由缓输出程序把作业结果打印输出,由于预输入程序和缓输出程序的执行是在计算机的控制下进行的。 井管理程序:操作系统中实现从输入井读信息和把作业执
28、行结果写到输出井的程序称为 虚拟设备:把由操作系统模拟的独占设备称为 斯普林系统:操作系统中实现联机同时外围设备操作功能的部分称为斯普林系统由三分部组成:预输入程序、井管理程序、缓输出程序,这三部分相互协调,为用户提供虚拟设备。六、 并发进程1、进程的并发性 当一个进程独占处理器顺序执行时具有的两个特性:封闭性、可再现性 并发性:在一个进程的工作没有全部完成之前,另一个进程就能够开始工作,我们说这些进程是可同时执行的,称,而且把可同时执行的进程称为并发进程;进程的并发执行会破坏“封闭性”和“可再现性”;2、与时间有关的错误:P1113、临界区与PV操作 临界区:并发进程中与共享变量有关的程序段
29、称为临界区; 相关临界区:指并发进程中涉及到相同变量的那些临界区;对于若干个并发进程共享某一变量的相关临界区的管理有三个要求:1、一次最多一个进程能够进入临界区;2、不能让一个进程无限制地在临界区执行;3、不能强迫一个进程无限制地等待进入它的临界区。 PV操作:由P操作和V操作组成,不可中断的过程称为原语;1、P操作:将信号量S减去1,若结果小于0,则把调用P(S)的进程置成等待信号量S的状态;2、V操作:将信号量S加1,若结果不大于0,则释放一个等待信号量S的进程。4、进程的互斥与同步 进程的互斥:指当有若干个进程都要使用某一共享资源时,任何时刻最多只允许一个进程去使用该资源,其它要使用它的
30、进程必须等待,直到该资源的占用者释放了该资源; 进程的同步:指在并发进程之间存在一种制约关系,一个进程的执行依赖另一个进程的消息,当一个进程没有得到另一个进程的消息时应等待,直到消息到达才能被唤醒;l 同步机制:这种机制应能测试进程所需的消息是否达到,还能把其它进程所需的消息发送出去。l 生产者/消费者问题p120,同步与互斥的混合问题p124 进程互斥实际上是进程同步的一种特殊情况;P操作测试资源是否能够使用,相当于测试“资源能够使用”的消息是否到达;5、进程通信:经过专门的通信机制实现进程间交换大量信息的通信方式成为进程通信。 常见的高级通信方式有:信箱通信、消息缓冲通信、管道通信; 信件
31、:一个进程要向其它进程发送信息时,应先组织好一封信,信件的内容包括:发送者名、信息(或信息存放的地址和长度)、等/不等回信、回信存放地址。 信箱:每个信箱能够由“信箱说明”和“信箱体”两部分组成。 两个通信原语:接收原语和发送原语;发送原语:send(N,M),功能:把信件M送到指定的信箱N中。接收原语:receive(N,Z),功能:从指定的信箱取一封信,存到指定的地址Z中。6、死锁 死锁:系统中存在一组进程,它们中的每一个进程都占用了某种资源,而又都在等待该组进程中另一个进程所占用的资源,这种等待永远不能结束,即出现死锁;PV操作可实现资源互斥使用,但不能排除死锁; 死锁的必要条件:互斥地
32、使用资源、占有且等待资源、非抢夺式分配、循环等待资源; 死锁的防止:1、 静态分配资源:是指资源必须在开始执行前就申请自己所要的全部资源,仅当系统能满足进程的全部资源申请要求且把资源分配给进程后,进程才开始执行。2、 按序分配资源:指对系统中每一个资源给出一个编号。规定任何一个进程申请两个以上资源时,总要先申请编号小的资源,再申请编号大的资源。3、 剥夺式分配资源:当一个进程申请资源得不到满足时,可从另一个进程那里去抢夺。(当前只适用于对处理器和主存资源的分配)。 死锁的避免:古典的测试方法:银行家算法:该算法规定,只有当系统现存的资源能够满足进程的最大需求量时,才把资源分配给该进程。P137 操作系统处于安全状态:保证所有的进程在有限时间内得到需要的全部资源
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100