13180自考《操作系统》考点总结

》》计算大题(重要)


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述
在这里插入图片描述


第一章 操作系统概论

考点1 操作系统的定义、特征、功能

定义:操作系统是计算机系统中的一个系统软件,它是这样一些程序模块的集合:它们能有效地组织和管理计算机系统中的硬件及软件资源,合理地组织计算机工作流程,控制程序的执行,并向用户提供各种服务功能,使得用户能够灵活、方便、有效地使用计算机,并使整个计算机系统能高效地运行。
特征:1、并发性2、共享性3、随机性
功能:1、进程管理(处理器管理)2、存储管理3、文件管理4、设备管理5、用户接口
【填空题】1、共享性是指操作系统程序与多个用户程序(共用)系统中的资源,这种共享性是在(操作系统)控制下实现的。

考点2 操作系统的体系结构

1、Windows操作系统的体系结构 2、UNIX操作系统的体系结构 3、Linux操作系统的体系结构 4、Android 操作系统的体系结构
【填空题】1、Windows操作系统的体系结构采用了分层的模块结构,主要层次有硬件抽象层HAL、内核、执行体,系统进程和 系统线程。

考点3 操作系统的分类

按照用户界面的使用环境和功能特征的不同,把操作系统分为三种:批处理系统;分时系统;实时系统。
随着计算机体系结构的发展,有出现了许多种类型的操作系统:个人操作系统;网络操作系统;分布式操作系统;嵌入式操作系统。

考点4 操作系统的结构

1、整体式结构 2、层次式结构 3、微内核(客户/服务器)结构
【选择题】1、将操作系统分成用于实现操作系统最基本功能的内孩和提供各种服务的服务进程两个部分,这样的操作系统结构是(微内核结构)

第二章 操作系统运行环境

考点1 处理器相关的概念

1、处理器的构成
处理器一般由运算器、控制器、一系列的寄存器以及高速缓存构成。
2、处理器中的寄存器的分类
1)用户可见寄存器:数据寄存器、地址寄存器、条件码寄存器。 2)控制和状态寄存器:程序计数器(PC、指令寄存器(IR)、程序状态字(PSW)。
3、指令执行的过程:一个指令周期=取指令+执行指令。
4、指令大致分成五类:
1)访问存储器指令;2) I/O指令;3)算术逻辑指令;4)控制转移指令;5)处理器控制指令。
5、特权指令和非特权指令
6、处理器的工作状态:管态、目态。
操作系统管理程序运行的状态称为管态;系统启动时,处理器的初始状态为管态;当用户程序占用处理器时,应让处理器在目态下工作。

考点2 存储器的类型

存储的最小单位称为**“二进位”(bit)**,它包含的信息为0或1。存储器的最小编址单位是字节(BYTE),而2个字节一般称为一个字, 4个字节称为双字。
1B=8b 1024B=1KB ,MB,GB,TB ; 在为用户分配内存空间时,以块为最小单位。

考点3 中断的概念、中断系统

(1) 中断的概念
所谓中断是指处理器对系统中或系统外发生的异步事件的响应。中断是所有要打断处理器的正常工作次序,并要求其去处理某一
事件的一种常用手段。

中断的作用:(1)能充分发挥处理器的使用效率。(2)提高系统的实时能力
典型的中断包括:
1)时钟中断:由处理器内部的计时器产生,允许操作系统以一定
规律执行函数,如时间片到时、硬件实时钟到时等。
2)输入输出(I/O)中断:由I/O 控制器产生,用于通知一个I/O操作的正常完成或者发生的错误。
3)控制台中断:系统操作员通过控制台发出命令等。
4)硬件故障:掉电、存储器校验错等硬件故障引起等。
(2)中断系统
中断系统的硬件中断装置和软件中断处理程序。中断响应
①处理器接收中断信号;
②保护现场,将中断断点的程序状态字PSW和程序计数器PC值存入系统堆栈;
③分析中断向量,取得中断处理程序的入口地址;
④将处理器的PC值置为中断处理程序的入口地址;
⑤调用中断处理程序。
【简答题】1、什么是程序性中断?程序性中断都必须有操作系统来完成吗?举例说明。
【参考答案】:程序性中断多数是程序指令出错、指令越权或者指令寻址越界而引发的系统保护。不一定。第一类为程序性中断,只能由操作系统完成。第二类为程序性中断,可以由程序自己完成。
【简答题】2、什么是中断?如果同一中断级中的多个设备接口中同时都有中断请求时,如何处理?
【参考答案】:所谓中断是指处理器对系统中或系统外发生的异步事 件的响应。如果同一中断级中的多个设备接口中同时都有中断请求时,可以采用固定优先数或者轮转法。

考点4 中断优先级、中断屏蔽与中断嵌套

2、中断屏蔽:PWS中的中断屏蔽位决定,这些屏蔽位标识了被屏蔽的中断类或者中断。
3、中断嵌套:如果一个中断的处理过程中又发生了中断,那么将引起多个中断处理问题。对多个中断的处理策略一般有如下两种。
1)禁止其他中断 2)中断嵌套

考点5 系统调用概念、与函数调用区别、分类

1、系统调用概念
用户在程序中调用操作系统所提供的一些子功能。这是一种特殊的过程调用,这种调用通常是由特殊的机器指令实现的,并且将系统转入特权方式(管态)。
系统调用程序被看成是一个低级的过程,只能由汇编语言直接访问。系统调用是操作系统提供给编程人员的唯一接口。
编程人员利用系统调用,动态请求和释放系统资源,调用系统中已有的系统功能来完成与计算机硬件部分相关的工作以及控制程序的执行速度等。
2、系统调用与函数调用的区别
(1)运行在不同的系统状态(2)状态的转换(3)返回问题(4)嵌套调用
3、系统调用分类
(1) 进程控制类系统调用(2) 文件操作类系统调用
(3) 进程通信类系统调用(4) 设备管理类系统调用(5) 信息维护类系统调用
【选择题】1、系统调用的目的是(请求系统服务)

第三章 进程与线程

考点1 程序的顺序执行、并发执行、多道程序设计

1、程序的顺序执行:把一个具有独立功能的程序独占处理器直到得到最终结果的过程称为程序的顺序执行。
顺序执行的特点: 1)顺序性;2) 封闭性;3) 程序执行结果的确定性;4) 程序执行结果的可再现性。
2、程序的并发执行:所谓程序并发执行,是指两个或两个以上程序在计算机系统中,同时处于已开始执行且尚未结束的状态。
程序的并发执行的特征: 1)在执行期间并发程序相互制约;2) 程序与计算不再一一对应;3) 并发程序的执行结果不可再现;4) 程序的并行执行与程序的并发执行。
3、多道程序设计:为了提高系统中各种资源的利用效率,缩短程序执行的周转时间,广泛采用了多道程序技术,使多种硬件资源能并行工作。
多道程序设计环境的特点: 1)独立性 2) 随机性 3) 资源共享性
多道程序设计的缺陷:1)可能延长程序的执行时间 2)系统的效率的提高程度是有限的
【填空 答案解析】:资源的共享和竞争存在于多道程序的并发执行中,从而制约了各道程序的执行速度。本来并无逻辑关系的程序之间产生了相互制约的关系。并发程序的执行出现了“执行——暂停——执行 ”的活动现象。

考点2 进程的定义

1、进程的概念:进程是具有一定独立功能的程序在某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位。
(1)进程和程序的联系:
程序是构成进程的组成部分之一,一个进程的运行目标是执行它所对应的程序,如果没有程序,进程就失去了其存在的意义。从静态的角度看,进程是由程序、数据和进程控制块(PCB)三部分组成的。
(2) 进程和程序的区别
程序是静态的,而进程是动态的。
进程是程序的一个执行过程。程序的存在是永久的。而进程是为了程序的一次执行而暂时存在的。进程有生命周期,有诞生,亦有消亡。
2、可再入程序:能够被多个用户同时调用的程序称作是“可再入”的程序。
3、进程的特征
1) 并发性;2) 动态性;3) 独立性;4) 交往性;5) 异步性;6) 结构性。

考点3 进程的状态与转换

1、三状态进程模型
运行中的进程可以处于以下三种状态之一:运行、就绪、等待
三种状态之间的转换及转换原因: 1)就绪—运行 2)运行—就绪 3)运行—等待 4)等待—就绪
2、五状态进程模型 1)运行状态(Running): 2)就绪状态(Ready): 3)阻塞状态(Blocked): 4)创建状态(New):5) 结束状态(Exit):
在这里插入图片描述
五状态进程模型中的主要状态转换: 1)创建新进程 2)提交(Admit) 3)调度运行(Dispatch) 4)释放(Release) 5)超时(Timeout)或被抢占 6)事件等待(Event Wait) 7)事件出现(Event Occurs)
3、七状态进程模型
1) 就绪状态(Ready):进程在内存且可立即进入运行状态。
2) 阻塞状态(Blocked):进程在内存并等待某事件的出现。 3)阻塞挂起状态:进程在外存并等待某事件的出现。4)就绪挂起状态:进程在外存,但只要进入内存,即可运行。
在七状态进程模型中,新引入的状态转换有挂起和激活两类,意义有变化的转换有事件出现和提交两类。
1) 挂起(Suspend):把一个进程从内存转到外存;可能有以下几种情况。
1、阻塞到阻塞挂起 2、就绪到就绪挂起 3、运行到就绪挂起
2) 激活(Activate):把一个进程从外存转到内存;可能有以下几种情况。
1、就绪挂起到就绪 2、阻塞挂起到阻塞 3)事件出现(Event Occurs) 4)提交(Admit)

【简答题】1、在七状态进程模型中,什么是阻塞状态?什么是阻塞挂起状态?两个状态之间如何转换?
【参考答案】:阻塞状态(Blocked):进程在内存并等待某事件的出现。阻塞挂起状态(Blocked,Suspend):进程在外存并等待某事件 的出现。没有进程处于就绪状态或就绪进程要求更多内存资源时,就 会把阻塞状态变成阻塞挂起状态。当一个进程释放足够内存时,系统 会把一个高优先级阻塞挂起进程激活,由阻塞挂起状态变成阻塞状态。

考点4 进程控制块与进程控制

一、进程控制块
1.PCB的内容:进程控制块的内容可以分成调度信息和现场信息两大部分。
2.进程的组成:进程由程序、数据和进程控制块三部分组成。
3.PCB组织:(1) 线性方式(2)索引方式(3)链接方式
二、进程控制
1、所谓原语,是由若干条指令所组成的一个指令序列,用来实现某个特定的操作功能。
2、进程控制原语
用于进程控制的原语一般有:创建进程、撤销进程、挂起进程、激活进程、阻塞进程、唤醒进程以及改变进程优先级等。
【填空题】1、原语是操作系统核心的一个组成部分,由若干条组成,用来实现某个特定的操作功能,执行时具有封闭性
【简答题】1、进程控制通过进程控制原语来实现,请分别描述创建原语和撤销原语的操作过程。
【参考答案】:创建原语过程:先申请一空闲PCB区域,然后将有关信息填入PCB,置该进程为就绪状态,最后把它插入就绪队列中。
撤销原语过程:找到要被撤销进程的PCB,将它从所在队列中消去,撤销属于该进程的一切“子孙进程”,释放被撤销进程所占用的全部资源,并消去被撤销进程的PCB。

考点5 线程的基本概念及线程的实现机制

1、什么是线程:线程是进程中的一个实体,是处理器调度和分派的基本单位。
2、线程的属性
1) 每个线程有一个唯一的标识符和一张线程描述表,线程描述表记录了线程执行的寄存器以及栈等现场状态。
2) 不同的线程可以
执行相同的程序
,即同一个服务程序被不同用户调用时操作系统为它们创建不同的线程。
3) 同一个进程中的各个线程共享该进程的内存地址空间
4) 线程是处理器的独立调度单位,多个线程是可以并发执行的。在单处理器的计算机系统中,各线程可交替地占用处理器。
5) —个线程在被创建后便开始了它的生命周期,直至终止。
3、线程的实现机制
用户级线程; 内核级线程; 混合实现方式

考点6 进程调度算法

1、先来先服务算法
2、最短进程优先算法
3、最短剩余时间优先算法
4、最高响应比优先算法
5、轮转算法
6、最高优先级算法
在这里插入图片描述
在这里插入图片描述
【简单题】2、什么是轮转调度算法?请分析时间片长短对算法性能的影响?
【参考答案】:轮转算法的基本思想是,将处理器的处理时间划分成 一个个时间片,就绪队列中的诸进程轮流运行一个时间片。当时间片 结束时,就强迫运行进程让出处理器,该进程进入就绪队列,等待下 一次调度。如果时间片长度很小,则调度程序剥夺处理器的次数频繁,加重系统开销;反之,如果时间片长度选择过长,例如一个时间片就 能保证就绪队列中所有进程都执行完毕,则轮转法就退化成先来先服 务算法。

【简答题】3、简述进程最短剩余时间优先调度算法的基本思路和实现方法?
【参考答案】:最短进程优先算法的抢占式版本是最短剩余时间优先算法。使用这个算法,调度程序总是选择其剩余运行时间最短的那个进程运行。当一个新的进程 到达时,其整个时间同当前进程的剩余时间做比较。如果新的进程比 当前运行进程需要更少的时间,当前进程就被挂起,而运行新的进程。这种方式可以使新的短进程获得良好的服务。

第四章 进程同步与互斥

考点1 进程的同步、互斥、临界区

1、进程的同步:进程的同步是指进程之间一种直接的协同工作关系,一些进程相互合作,共同完成一项任务。
2、进程的互斥:许多进程常常需要共享资源,而这些资源往往要求排他性的使用,即一次只能为一个进程服务,因此,各进程间只能互斥使用这些资源,进程间的这种关系就是进程的互斥。
3、临界区:若在系统中的某些资源一次只允许一个进程使用,则这类资源称 为临界资源或共享变量,而在进程中访问临界资源的程序称为临界区。
如果有若干进程共享某一临界区,则该临界区称为相关临界区。系统对相关临界区的调度使用原则包括: 有空让进、无空等待、
多中择一、有限等待、让权等待

考点2 信号量及P、V操作

1、信号量的定义:信号量是一种特殊的变量,它的表面形式是一个整型变量附加一个队列;而且,它只能被特殊的操作(即P操作和V操作)使用。
2、P、V操作:P操作和V操作定义如下: P(S)
{
S=S-1;
若S<0,将该进程状态置为等待状态,然后将该进程的PCB插入相应的S信号量等待队列末尾,直到有其他进程在S上执行V操作为止;
}
V(S)
{
S=S+1;
若S≤0,释放在S信号量队列中等待的一个进程,将其状态改变为就绪态,并将其插入就绪队列;然后,执行本操作的进程继续执行;

}
3、信号量及P、V操作的物理含义
信号量S表示某类可用的临界资源。对于不同的临界资源,则用不同的信号量表示。
当S>0时,S值的大小表示某类可用资源的数量,即表示有该类资源可以分配。
当S<0时,表示没有可分配的资源数量,其S的绝对值表示排在S信号量的等待队列中进程的数目。

每执行一次P操作,意味着请求的进程分配到一个资源。每执行一次V操作,意味着进程释放了一个资源。
4、用P、V操作实现进程间的互斥
1) 假设有进程A、B竞争进入临界区,用P、V 操作实现进程之间的互斥的程序。
2) 考虑同步关系,有两个信号量S1 和S2,赋予它们的初值均为0,S1表示在一个缓冲区中是否装满信息,S2表示该缓冲区中信息是否取走。
5、信号量及P、V操作注意事项:
1) P、V操作在使用时必须成对出现,有一个P操作就一定有一个V操作。
2) 当为互斥操作时,它们同处于同一进程;当为同步操作时,则不在同一进程中出现。
3) 一个同步P操作与一个互斥P操作在一起时,同步P操作应出现在互斥P操作前。而两个V操作的顺序无关紧要。
在这里插入图片描述
【参考答案】:P1和P2并发执行后,X=5、Y=12、Z=9;进程Pl和P2之间是同步关系。

考点3 经典的进程同步问题

(1) 简单生产者——消费者问题。
(2) 多个生产者——消费者问题。
(3) 读者——写者问题。
在这里插入图片描述
在这里插入图片描述

考点4 管程的概念、组成、条件变量

1、管程的概念:一个管程是一个由过程、变量及数据结构等组成的一个集合,它们组成一个特殊的模块或软件包
2、管程由四个部分组成:
1) 管程名称;
2) 共享数据的说明;
3) 对数据进行操作的一组过程;
4) 对共享数据赋初值的语句。
3、管程的三个特征:
1) 模块化:管程是基本程序单位,可单独编译。
2) 抽象数据类型:数据+对数据的操作代码。
3) 信息隐蔽:外部函数的功能实现对外不可见。
【填空题】1、 一个管程由管程名称、共享数据说明、对数据进行操作的一组过程 和对共享数据 赋初值的语旬四个部分组成。
【填空题】1、管程定义了一个共享变量的数据结构,以及在该数据结构上执行的一组操作

考点5 进程通信的三种方式

解决进程之间的大量信息通信的问题有三类方案:
1、共享内存、2、消息机制、3、通过共享文件进行通信(管道通信)。
1、共享内存
解决两个问题:
第一个问题是怎样提供共享内存;
第二个是公共内存中的读写互斥问题。
操作系统一般只提供要共享的内存空间,而处理进程间在公共内存中的互斥关系则是程序开发人员的责任。
2、消息机制
消息机制是用于进程间通信的高级通信原语之一
1)消息缓冲通信
基本思想:根据“生产者——消费者”原理,利用内存中公用消息缓冲区实现进程之间的信息交换。
2)信箱通信
为了实现进程间的通信,可以设立一个通信机构——信箱,以发送信件以及接收回答信件为进程间通信的基本方式。
3、通过共享文件进行通信(管道通信)
管道(Pipe)通信首先出现在UNIX操作系统中。
所谓管道,就是连接两个进程之间的一个打开的共享文件,专用于进程之间进行数据通信。
管道通信的基础是文件系统
管道通信机制中的同步与互斥都由操作系统自动进行,对用户是透明的。

第五章 死锁

考点1 死锁的定义、产生的原因、产生的必要条件

1、死锁的定义
所谓死锁是指在多道程序系统中的一种现象,一组进程中的每个进程均无限期地等待被该组进程中的另一个进程所占有且永远不会释放的资源。系统发生这种现象称为系统处于死锁状态,简称死锁。
2、死锁产生的原因:产生死锁的原因主要有两个:
1)竞争资源,系统资源在分配时出现失误,进程间对资源的相互争夺而造成僵局;
2)多道程序运行时,进程推进顺序不合理。

3、死锁产生的必要条件
对于永久性资源,产生死有四个必要条件:
1) 互斥条件。
2) 不可剥夺条件,又称不可抢占或不可强占。
3) 请求和保持条件,又称部分分配或占有申请。
4) 循环等待条件,又称环路等待。
只要系统发生死锁,则以上四个条件一定成立。

考点2 死锁预防

破坏产生死锁的四个必要条件之一。打破四个必要条件中的2、3和4使用静态分配策略。
对于条件1,我们要区别对待不同的资源情况:
1)若某些资源是由于资源数量不足而造成的,可以通过增加资源数量的方法来进行预防。这种死锁预防的方法代价高昂。
2)另一类资源的数量有限和互斥使用是资源的固有特性,所以这种情况下通过破坏互斥条件来预防死锁不现实。
在预防死锁的静态分配策略中,资源分配的原则如下:
一个进程在申请新资源的要求不能立即得到满足时,便处于等待状态。而一个处于等待状态的进程的全部资源可以被剥夺、重新加入到资源表中。仅当该进程重新获得它原有的资源以及得到新申请的资源时,才能重新启动执行。
这种方法破坏了
不可剥夺条件

具体实现方法:
1)若一个进程已占用了某些资源,又要申请一个新的资源,在申请新的资源时,不能立即得到满足,在变为等待状态之前,该进程必须释放已占有的所有资源,即阻塞前释放资源
2) 首先系统应检查这些资源是否可用,如果可用,就分配给该进程。否则,系统检查这些资源是否分配给另外某个等待进程。若是,则系统将剥夺所需资源,分配给这个进程。如果资源没有被等待进程占有,那么,该进程必须等待。在其等待过程中,其资源也有可能被剥夺。
总结:只能剥夺等待进程的资源。“不可剥夺条件”不成立。
3) 每个进程必须在开始执行前就申请它所需要的全部资源,仅当系统能满足进程的资源申请要求且把资源一次性分配给进程后,该进程才能开始执行。
总结:一次性请求。“请求和保持”条件不成立
4) 当进程没有占用资源时才允许它去申请资源,如果进程已经占用了某些资源而又要再申请资源,则它应先归还所占的资源后再申请新资源。

【简答题】1、什么是资源有序分配法?请筒述此方法能够预防死锁的原因。
【参考答案】:采用资源有序分配策略,其基本思想是将系统中所有资源顺序编号。一般原则是,较为紧缺、稀少的资源的编号较大。即一个进程只有得到编号小的资源,オ能申请编号较大的资源;释放资源时,应按编号递减的次序进行。
采用资源有序分配策略,破坏了死锁四个必要条件中的循环等待条件。预防了死锁的产生。

考点3 死锁避免

1、死锁避免的基本思想是:
系统对进程发出的每一个系统能够满足的资源申请进行动态检查,并根据检查结果决定是否分配资源;如果分配后系統可能发生死锁, 则不予分配,否则予以分配。这是一种保证系统不进入死锁状态的动态策略
2、安全状态与安全序列
所谓安全状态是指,如果存在一个由系统中所有进程构成的安全序列{P1,…,Pn},则系统处于安全状态。(对于每一个进程它以后需要的资源量不超过系统当前剩余资源量与所有进程当前占用资源量之和。)
系统处于安全状态则不会发生死锁。
如果不存在任何一个安全序列,则系统处于不安全状态。
系统若处于不安全状态则可能发生死锁。

3、银行家算法
为保证资金的安全,银行家规定如下。
1) 顾客资金需求<=银行家现有资金——>可接纳该顾客。
2) 贷款总数<=最大需求量——>顾客可以分期贷款。
3) 银行家现有资金<=贷款总数当——>可推迟支付顾客贷款(时间有限)。
4) 顾客得到需要的全部资金后,有限的时间里归还所有的资金。顾客=进程 银行家=操作系统
在这里插入图片描述
【参考答案】:
(1) 有四类资源:ABCD。
(2) 是安全状态,存在一个安全序列(如:P1,P3,P5,P2,P4)。
【答案解析】:P145。银行家算法。先将每个进程的尚需资源量计算出来。然后看剩余资源量是否能分配给某一个进程,让其执行,再释放资源,以此类推,执行完所有进程,找到一个安全序列。

考点4 死锁检测与解除

1、死锁检测概念
操作系统可定时运行一个“死锁检测”程序,
检测死锁的实质是确定是否存在“循环等待”条件,检测算法确定死锁的存在并识别出与死锁有关的进程和资源,以供系统采取适当的解除死锁措施。
2、死锁解除的方法归为两类:
1) 剥夺资源
使用挂起/激活机制挂起一些进程,剥夺它们占有的资源给死锁进程,以解除死锁,待以后条件满足时,再激活被挂起的进程。
经常使用的方法如下。
1)还原算法,即恢复计算结果和状态。
2)建立检查点主要是用来恢复分配前的状态。(对实时系统和长时间运行的数据处理是一种常用技术。)
2)撤销进程
撤销死锁进程,将它们占有的资源分配给另一些死锁进程,直到死锁解除为止。
以下几点可作为衡量撤销代价的标准: 1)进程优先数,即被撤销进程的优先数。
2) 进程类的外部代价。
3) 运行代价。

考点5 资源分配图

1、资源分配图的概念
资源分配图是一张有向图,一个系统资源分配图SRAG(System Resource Allocation Graph)可定义为一个二元组,
即SRAG=(V,E),其中V是顶点的集合,而E是有向边的集
2、死锁定理
1) 如果资源分配图中没有环路,则系统没有死锁。
2) 如果资源分配图中出现了环路,则系统中可能存在死锁。
①如果处于环路中的每个资源类中均只包含一个资源实例,则环路的存在即意味着死锁的存在。此时,环路是死锁的充分必要条件。
②如果处于环路中的每个资源类中资源实例的个数不全为1,则环路的存在是产生死锁的必要条件而不是充分条件。

第六章 存储管理

考点1 存储体系、存储管理的任务、地址转换

在这里插入图片描述
二、存储管理的任务
通过对用户需求分析,得到操作系统中存储管理的主要任务:
1、内存分配和回收 2、存储共享 3、存储保护
4、“扩充”内存容量
1、内存分配和回收:内存分配和回收采用的方法—内存分配表:
①位示图表示法 ②空闲页面表 ③空闲块表
内存分配有两种方式: 1)静态分配 2)动态分配
2、存储共享:所谓存储共享是指两个或多个进程共用内存中相同区域。
共享的内容包括代码共享和数据共享,特别是代码共享要求代码必须是纯代码。
3、存储保护:(1) 地址越界保护(2) 权限保护
4、“扩充”内存容量:具体实现是在硬件支持下,软件、硬件相互协作,将内存和外存结合起来统一使用。
借助虚拟存储技术或其他交换技术,达到在逻辑上扩充内存容量的目的。
三、地址转换
这些地址称为内存的“绝对地址”,由绝对地址对应的内存空间称为“物理地址空间”。
用户程序中使用的地址称为“逻辑地址”,由逻辑地址对应的存储空间称为“逻辑地址空间”。
把逻辑地址转换成绝对地址的工作称“地址重定位”或“地址转换”,又称“地址映射”。
重定位的方式可以有“静态重定位”和“动态重定位”两种。

考点2 可变分区基本思想、紧缩技术空闲分区分配策略、分区管理方案的优缺点

1、可变分区基本思想
可变分区是指系统不预先划分固定分区,而是在装入程序时划分内存分区,使为程序分配的分区的大小正好等于该程序的需求量,且分区的个数是可变的。
优点:1)可变分区有较大的灵活性,2)较之固定分区能获得较好的内存利用率。
2、紧缩技术
内存经过一段时间的分配回收后,会存在很多很小的空闲块,这些空闲块被称为碎片。
解决碎片问题的办法是在适当时刻进行碎片整理,通过移动内存中的程序,把所有空闲碎片合并成一个连续的大空闲区且放在内存的一端而把所有程序占用区放在内存的另一端,这一技术称为“紧缩技术”,或“压缩技术”。
3、空闲分区分配策略:(1) 最先适应算法(2) 最优适应算法(3) 最坏适应算法
4、分区管理方案的优缺点
分区管理是实现多道程序设计的一种简单易行的存储管理技术。
优点:1) 理算法比较简单;2) 实现起来比较容易;3) 内存额外开销较少;
4) 存储保护措施也很简单;5) 在内存利用率方面,可变分区的内存利用率比固定分区高。
缺点:1) 内存使用仍不充分,并且存在着较为严重的碎片问题。2) 浪费了处理器时间。
3) 不能为用户提供“虚存”,即不能实现对内存的“扩充”受到物理存储器实际存储容量的限制。
4) 内存中可能包含有一些实际不使用的信息。

考点3 覆盖技术、交换技术

1、覆盖技术
覆盖技术是指一个程序的若干程序段,或几个程序的某些部分共享某一个存储空间。
覆盖技术不需要操作系统的特殊支持,可以完全由用户实现,即覆盖技术是用户程序自己附加的控制。
2、交换技术:交换技术又称对换技术。进程从内存移到磁盘,并再移回内存称为交换。
交换技术是进程在内存与外存之间的动态调度,是由操作系统控制的。
使用交换技术需要考虑的相关问题:
(1) 换出进程的选择;(2) 交换时机的确定;(3) 交换空间的分配;(4) 换入进程换回内存时位置的确定。
与覆盖技术相比:1)交换技术对用户而言是透明的。
2)交换可以发生在不同的进程或程序之间,而覆盖发生在同一进程或程序内部,而且只能覆盖那些与覆盖段无关的程序段。

【简答题】1、简述存储管理中交换技术的实现原理及主要作用?
【参考答案】:交换技术又称对换技术。进程从内存移到磁盘,并再移回内存称为交换。交换技术是进程在内存与外存之间的动态调度,是由操作系统控制的。交换技术的目的是尽可能达到“足够快地交换进程,以使当处理器调度程序想重新调度处理器时,总有进程在内存中处于就绪(准备执行)状态”的理想状态,从而提高内存利用率。

考点4 虚拟存储技术以及虚拟页式存储管理

1、虚拟存储技术
虚拟存储技术的基本思想:利用大容量的外存来扩充内存,产生 一个比有限的实际内存空间大得多的、逻辑的虚拟内存空间,简称虚 存,以便能够有效地支持多道程序系统的实现和大型程序运行的需要,从而增强系统的处理能力。
实现虚拟存储器需要以下的硬件支持: 1)系统有容量足够大的外存。2) 系统有一定容量的内存。3) 最主要的是,硬件提供实现虚-实地址映射的机制。

虚拟存储器的工作原理:
当进程开始运行时,先将一部分程序装入内存,另一部分暂时留在外存;当要执行的指令不在内存时,由系统自动完成将它们从外存调入内存的工作;当没有足够的内存空间时,系统自动选择部分内存空间,**将其中原有的内容交换到磁盘上,并释放这些内存空间供其他进程使用。**这样做的结果使程序的运行丝毫不受影响,使程序在运行中感觉到拥有一个不受内存容量约束的、虚拟的、能够满足自己需求的存储器。
2、虚拟页式存储管理
支持页式存储管理的硬件部件通常称为“存储管理部件”。
存储管理部件首先把内存分成大小相等的许多区,把每个区称为 “物理页面”。
逻辑地址也进行分页,页的大小与物理页面的大小一致。 “逻辑地址”可被称为虚拟地址。
页式存储器提供编程使用的虚拟地址由两部分组成:虚拟页号和页内地址

考点5 转换检测缓冲区(TLB)

按给定的虚拟地址进行读写时,必须访问两次内存。第一次按页号读出页表中对应的块号,
第二次按计算出来的绝对地址进行读写。
两次访问内存显然延长了指令的执行周期,降低了执行速度。为了提高存取速度,有两种方法:
1) 在地址映射机制中增加一组高速寄存器保存页表。需要硬件支持,经济上不可行。
2) 在地址映射机制中增加一个小容量的联想寄存器(相联存储器),它由高速缓冲存储器组成。

考点6 页面调度策略

虚拟存储器系统通常定义三种策略来规定如何进行页面调度:
调入策略:虚拟存储器的调入策略决定了什么时候将一个页由外存调入内存之中。
置页策略:当线程产生缺页时,内存管理器还必须确定将调入的虚拟页放在物理内存的何处。用于确定最佳位置的一组规则称为“置页策略”。
置换策略:如果缺页发生时物理内存已满,“置换策略”被用于确定哪个虚页面必须从内存中移出为新的页面腾出空位。

考点7 页面置换算法

1、常用页面置换算法: 最佳页面置换算法(OPT)先进先出算法(FIFO)最近最少使用算法(LRU)
2、缺页率:
假定一个程序共有n页,系统分配给它的物理页面是m个(m、n均为正整数,且1≤m≤n)。
因此,该程序最多有m页可同时被装入内存。如果程序执行中访问页面的总次数为A,其中有F次访问的页面尚未装入内存,故产生了F次缺页异常。
现定义:f=F/A 把f称为“缺页率”。
在这里插入图片描述
在这里插入图片描述
【正确答案】:FIFO:缺页9次。缺页率:9/12=75%。 LRU:缺页6次。 缺页率:6/12=50%。

考点8 虚拟页式存储管理的优缺点

优点:由于它不要求进程的程序段和数据在内存中连续存放,从而有效地解决了碎片问题。这既提高了内存的利用率,又有利于组织多道程序执行。
缺点:存在页面空间的浪费问题。这是由于各种程序代码的长度是各不相同的,但页面的大小是固定的,所以在每个程序的最后一页内总有一部分空间得不到利用。如果页面较大,则由此引起的存储空间的损失仍然较大。

第七章 文件系统

考点1 文件及文件系统的定义

1、文件可以被解释为一组带标识的、在逻辑上有完整意义的信息项的序列。这里所谓“标识”是指文件名,“信息项”构成了文件的内容。
1) 文件的长度。2) 文件内容的具体意义。3) 文件名。4) 信息项。
系统为一个正在使用的文件提供读写指针。
2、所谓文件系统,是操作系统中统一管理信息资源的一种软件。 它管理文件的存储、检索、更新,提供安全可靠的共享和保护手段,并且方便用户使用。
从用户的角度来看,文件系统负责为用户建立文件、读写文件、修改文件、复制文件和撤销文件。文件系统还负责完成对文件的按名存取和对文件进行存取控制。
1、外存储设备的存储介质:常见的外存储设备有以下4种介质:
(1) 磁带(2) 磁盘(3) 光盘(4) 闪存

考点2 外存储设备的存储介质及存取方式、文件分类

2、文件在存储设备中的存取方式
文件常用的存取方法有:顺序存取和随机存取两种方式。
选择哪一种文件的存取方式,既取决于用户使用文件的方式,也与文件所使用的存储介质有关。
(1) 顺序存取:顺序存取就是按从前到后的次序依次访问文件的各个信息项。
(2) 随机存取:随机存取又称直接存取。
UNIX类操作系统的文件系统以及MS-DOS操作系统都采用了顺序存取和随机存取等两种方法。
3、文件分类
按文件的用途分类:(1) 系统文件(2) 库函数文件(3) 用户文件
按文件的组织形式分类:(1) 普通文件(2) 目录文件(3) 特殊文件

考点3 文件的逻辑结构和物理结构

1、逻辑结构
可以按逻辑结构把文件划分成二类:(1) 流式文件
(2) 记录式文件 a:定长记录文件 b:不定长记录文件构成的记录文件
2、物理结构:常用的文件物理结构有顺序结构、链接结构、索引结构
【填空题】1、文件的物理结构采用索引结构,能够支持文件插入、删除要求,适合顺序存取,也适合随机存取。

考点4 文件控制块及三种文件目录

1、文件控制块
文件系统的一个特点是“按名存取”,文件控制块(FCB),把所有文件的文件控制块有机地组织起来,就构成了文件控制块的一个有序集合,称为文件目录。
文件目录实际就是文件符号名到文件物理地址之间的一种映射机制。
文件控制块FCB是系统为管理文件而设置的一个数据结构。

2、三种文件目录
文件目录是实现用户按名存取文件的一种手段。一般把文件目录设计成:
一级目录结构、二级目录结构、多级目录结构。

考点5 磁盘空间管理及分配回收算法

1、磁盘空间管理
外存储设备中的空间容量比较大,对文件删除之后而不再使用的空间,必须加以回收,然后在建立文件等操作中重新利用。
对于只读的存储设备(如CD-ROM光盘),无所谓回收,也无所谓动态分配,这种存储设备在物理上就是不可重用的。
为了进行存储空间的分配与回收,在外存储设备上设置有空闲空间登记表。
2、磁盘空间分配及回收算法
1) 位示图 2) 空闲块表 3) 空闲块链表 4) 空闲块成组链接法

考点6 典型的文件操作和典型的目录操作

1、典型的文件操作
1) 建立文件:create(文件名,访问权限,(最大长度))
2) 打开文件:fd=open(文件路径名,打开方式)
3) 读文件:read(文件名,(文件内位置),要读的长度,内存目的地址)
4) 写文件:write(文件名,记录键,内存位置)
5) 关闭文件:close(文件名)
6)删除文件:delete(文件名)
7)指针定位:seek(fd,新指针的位置)
2、典型的目录操作
1)create,创建目录。
2)delete,删除目录。只有当一个目录为空时,该目录方可删除。
3)opendir,打开目录。使内容可被读取。
4)closedir,关闭目录。

考点7 磁盘高速缓存及RAID

1、磁盘高速缓存
基本思想:系统在内存中保存一些磁盘块,这些磁盘块在逻辑上属于磁盘,内存的这一区域被称为块高速缓存。
缓存的一种应用是记录的成组。 1)记录成组。2)记录分解。
2、RAID
几种常见的组成RAID结构
1) RAID0采用多个磁盘并行以提高读写速度;
2) RAID1用磁盘镜像的方法来提高存储的可靠性;
3) RAID2和RAID3以“位”或“字节”作为并行单位;
4) RAID4的并行单位是“块”,为提高可靠性加入了校验,校验码是独立存储的;
【填空题】1、记录的成组和分解技术是磁盘高速缓存的一种应用,虽然需要代价,但是具有提高储存空间利用率和减少设备启动次数的优点。
【简答题】2、假定某系统中,磁带的记录密度为每 英寸800个字符,每个逻辑记录长为160个字符。块与块之间的间隙为0.5英寸。现有600个逻辑记录需要存储到磁带上,请问:
(1) 如果不采用成组操作,磁带空间的利用率是多少?
(2) 在采用6个逻辑记录为一组的成组操作时,磁带空间的利用率是多少?
答案:
(1) 当不采用成组操作时,每个逻辑记录需要占用160/800=0.2英寸,块与块之间间隔0.5英寸,所以磁带的空间利用率是: 0.2/(0.2+0.5)=2/7=28.5%。
(2) 在采用6个逻辑记录为一组的成组操作时:
(6*160)/800=12英寸。块与块之间间隔0.5英寸,所以磁带空间利用率是:1.2/(1.2+0.5)=12/17=70.59%。

第八章 I/O设备管理

考点1 I/O设备的概念、分类、I/O设备管理的任务

1、I/O设备的概念
广义的I/O设备:输入输出设备(I/O设备)也称为外部设备
(Peripheral),有时简称为设备或外设,包括计算机系统中除 CPU和内存储器以外的所有的设备和装置。
狭义的I/O设备:不包括外存设备。
2、I/O设备的分类
按设备的使用特性分类:(1) 输入设备(2) 输出设备(3) 交互式设备(4) 存储设备等
按设备的信息组织方式分类:(1) 字符设备(2) 块设备
按设备使用可共享性分类:(1) 独占设备(2) 共享设备(3) 虚拟设备

考点2 I/O硬件和软件组成、设备独立性

1、I/O硬件组成
一个典型的计算机系统硬件结构:中央部分是处理器和内存,
通过总线与第二层的接口(适配器)部件相连,第三层是各种外围设备控制器,
最外层是外围设备:外围设备包括输入设备、输出设备、外存设备、数据通信设备和过程控制设备几大类。
设备控制器是一种电子部件,每个设备控制器都有若干个寄存器用来与处理器进行通信,包括:
1) 控制寄存器;
2) 状态寄存器;
3) 数据寄存器。

为了使处理器能够访问设备控制器中的寄存器,必须为每个寄存器分配唯一的地址,该地址称为I/O端口地址或I/O端口号。I/O端口地址主要有两种编址方式:
1) 内存映射编址;
2) I/O独立编址。
2、I/O软件组成
一般的I/O 软件结构分为四层: 1)中断处理程序;
2) 设备驱动程序;
3) 设备独立的操作系统软件;
4) 用户级软件。
从功能上看,设备独立层是I/O软件的主要部分; 从代码量上看,设备驱动层是I/O软件的主要部分。
【选择题】2、一般的I/0软件结构分为四层,即中断处理层软件、设备驱动层软件、设备独立层软件和用户层软件。

考点3 四种I/O设备控制方式

1、程序控制方式
程序控制方式也称为PI〇(Programmed I/O,程控I/O)方式,是指由用户进程直接控制处理器或内存和外围设备之间进行信息传送的方式,也称为“忙-等”方式、轮询方式或循环测试方式。
优点:
1) 处理器和外设的操作能通过状态信息得到同步;2) 硬件结构比较简单。
缺点:
1) 处理器效率较低;2) 对外部出现的异常事件无实时响应能力。
2、中断控制方式
中断是一种在发生了一个异常事件时,调用相应处理程序(通常称为中断服务程序)进行服务的过程。
采用中断控制方式,可以做到以下内容:
1)处理器与外设在大部分时间内并行工作,有效地提高了计算机的效率。
2) 具有实时响应能力,可适用于实时控制场合。
3) 及时处理异常情况,提高计算机的可靠性。
如要采用中断方式进行数据传送,则处理器和设备控制器就应具备中断机构。
中断控制方式的处理过程:
1)处理器通过数据总线发出命令,启动外设工作,当前进程阻塞,调度程序调度其他进程。
2)外设数据准备好,置位中断请求触发器。
3) 若此时接口中断屏蔽触发器状态为非屏蔽状态,则接口向处理器发中断请求(1R)。
4) 处理器接受中断请求,且中断为允许中断状态,则中断判优电路工作。
5) 中断判优电路对优先级最高的中断请求给予响应(INTA),处理器中断正在执行的其他进程,转而执行中断服务程序。
3、DMA控制方式
DMA是直接内存访问(Direct Memory Access)的缩写,它是一种完全由硬件执行I/O数据交换的工作方式。
DMA控制器(DMA Controller,DMAC)从处理器完全接管对总线的控制,数据交换不经过处理器,而直接在内存和I/O设备之间进行。
采用DMA方式工作时,由DMA控制器向内存发出地址和控制信号,进行地址修改,对传送字的个数计数,并且以中断方式向处理器报告传送操作的结束。
DMA方式的数据块传送三阶段: 1)预处理阶段 2) 数据传送阶段 3) 后处理阶段
优点:
1) 操作均由硬件电路实现,传输速度快;
2) 处理器仅在初始化和结束时参与,对数据传送基本上不干预,可以减少大批量数据传输时处理器的开销;
3) 处理器与外设并行工作,效率高。
缺点:DMA方式也有一定的局限性,这是因为DMA方式在初始化和结束时仍由处理器控制。
4、通道控制方式
通道(Channel)是一个特殊功能的处理器,它有自己的指令和程序,可以实现对外围设备的统一管理和外围设备与内存之间的数据传送。
与DMA方式相比:
1)通道方式增加了处理器与通道操作的并行能力;
2) 增加了通道之间以及同一通道内各设备之间的并行操作能力;
3) 为用户提供了灵活增加外设的可能性。
按照信息交换方式的不同,一个系统中可以设立三种类型的通道:
1)选择通道、2) 数组多路通道、3) 字节多路通道。

【简答题】2、I/0设备的中断控制方式与DMA控制方式的区别是什么?
【参考答案】:(1)中断方式在数据缓冲寄存器满之后发中断要求处理器进行中断处理的,而DMA方式则是等所要求传输的数据块完全传送结束时要求处理器进行中断处理。
(2)中断方式的数据传送是由处理器控制完成的,而DMA方式是在DMA控制器的控制下完成的。

考点4 设备分配原则、策略、独占设备的分配

1、设备分配原则
设备分配的总原则是:要充分发挥设备的使用效率,尽可能地让设备忙碌,但又要避免由于不合理的分配方法造成进程死锁。
设备分配方式有两种,即静态分配和动态分配。

2、设备分配策略
考虑的因素有:I/O设备的固有属性,I/O设备的分配算法,设备分配的安全性以及设备独立性。
与进程调度相似,设备的分配策略通常采用先来先服务(FIFS)和高优先级优先等。
3、独占设备的分配
(1) 设备的绝对号和相对号(2) 设备的指定方式:一种是指定设备的绝对号,另一种是指定设备类、相对号。
(3) 独占型设备的分配和释放
操作系统设置“设备分配表”用来记录计算机系统所配置的独占设备类型、台数以及分配情况等。
设备分配表=“设备类表”+“设备表” 。

考点5 移臂调度算法及旋转调度优化

1、移臂调度算法
(1) 先来先服务算法
(2) 最短寻找时间优先算法
(3) 电梯调度算法 1)移动臂由里向外移动 2)移动臂由外向里移动

(4) 单向扫描算法
2、旋转调度优化
进行旋转调度时应分析下列情况:
1)若干访问等待者请求访问同一磁道上的不同扇区。
2) 若干访问等待者请求访问不同磁道上的不同编号的扇区。
3) 若干访问等待者请求访问不同磁道上的具有相同编号的扇区。

【综合题】1、假设对磁盘的请求为柱面号95、180、35、120、 10、122、64、68,磁头的初始位置为30,求在下列移臂调度算法下的服务顺序和移动臂需要移动的距离。
(1) 最短寻找时间优先调度算法;
(2) 移动臂由外向里移动(向柱面号增大的方向)的电梯调度算法。
答案:
(1)最短寻找时间优先调度算法
服务顺序:
30 -> 35 -> 10-> 64 -> 68 -> 95 -> 120 -> 122->180。
因为:
(35-30)+(35-10)+(64-10)+(68-64)+(95-68)+(120- 95)+(122-120)+(180-122)=200。
所以:移动臂需要移动的距离为200柱面。

(2) 移动臂由外向里移动(向柱面号增大的方向)的电梯调度算法:
服务顺序:
30 -> 35 -> 64 -> 68 -> 95 -> 120 -> 122 -> 180 -> 10。
因为:
(35-30)+(64-35)+(68-64)+(95-68)+(120-95)+(122- 120)+(180-122)+(180-10)=320。
所以:移动臂需要移动的距离为320柱面。

考点6 信息的优化分布

记录在磁道上的排列方式也会影响磁盘的输入输出操作的时间。
【综合题】1、假定某磁盘的旋转速度是每圈48ms,格式化后每个盘面被分成8个扇区,现有8个逻辑记录存储在同一磁道上,安排如下所示:
在这里插入图片描述
处理程序要顺序处理以上记录,每读出一个记录后要花12ms的时间进行处理,然后再顺序读下一个记录并进行处理。请问:
(1) 顺序处理完这8个记录总共花费了多少时间?
(2) 现对记录进行优化分布,使处理程序能在最短时间内处理完这10个记录。请给出记录优化分布的示意图,并计算所需时间。
在这里插入图片描述

考点7 缓冲技术

1、引入缓冲的作用:
1) 为了匹配I/O设备与处理器之间的处理速度
2) 减少外部中断的次数和处理器进行中断处理所花费时间
3) 解决DMA或通道方式中可能出现的瓶颈问题

2、实现缓冲区的方法有两种:
(1) 采用专用的硬件设置数据缓冲区。这种方法常常应用在外部设备的I/O控制器中。打印机、键盘。
(2) 在内存划出一定容量的专用数据缓冲区,以便存储输入/输出的数据,这种设置在内存的缓冲区又称为“软件缓冲”。其中软件缓冲是在某种设备中划出一定容量的专用数据缓冲区,这种设备是( 内存)

3、缓冲的种类
根据系统设置的缓冲区的个数,可把缓冲技术分为以下几种:
1)单缓冲:在I/O设备和处理器之间设置一个缓冲区。
2) 双缓冲区:解决两台I/O设备或者打印机和终端之间的并行操作问题。
3) 多缓冲:一种具有多个缓冲区,其中一部分缓冲区专门用于输入,另一部分缓冲区专门用于输出的缓冲结构。
4) 缓冲池:把多个缓冲区连接起来统一管理,在缓冲池中的每个缓冲区既可用于输入又可用于输出的一种缓冲结构。
4、缓冲池
缓冲区是一种临界资源,所以在使用缓冲区时都有一个申请、释放和互斥的问题需要考虑。
缓冲池由多个缓冲区组成,而一个缓冲区由两部分组成:
(1) 用来标识和管理该缓冲器的缓冲首部;
(2) 用于存储数据的缓冲体。
这两部分有一一对应的映射关系。

考点8 SPOOLing技术

【填空题】1、在SPOOLing系统中,作业执行时,从磁盘上的输入井中读取数据,并把作业的执行结果暂时存放在磁盘上的输出井中。

  • 36
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 11
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值