1. 操作系统概述
操作系统有三个重要的作用 :
- 管理计算机中运行的程序和分配各种软硬件资源
- 为用户提供友善的人机界面
- 为应用程序的开发和运行提供一个高效率的平台
操作系统的4 个特征是 并发性 、共享性 虚拟性和不确定性。
操作系统功能
(1)进程管理。实质上是对处理机的执行“时间”进行管理,采用多道程序等技术将CPU的时间合理地分配给每个任务,主要包括进程控制、进程同步、进程通信和进程调度。
(2)文件管理。主要包括文件存储空间管理、目录管理、文件的读/写管理和存取控制。
(3)存储管理。存储管理是对主存储器“空间”进行管理,主要包括存储分配与回收、存储保护、地址映射(变换)和主存扩充。
(4)设备管理。实质是对硬件设备的管理,包括对输入/输出设备的分配、启动、完成和回收。
(5)作业管理。包括任务、界面管理、人机交互、图形界面、语音控制和虚拟现实等。
操作系统分类
◆批处理操作系统:单道批处理和多道批处理(主机与外设可并行)。
◆分时操作系统:一个计算机系统与多个终端设备连接。将CPU的工作时间划分为许多很短的时间片,轮流为各个终端的用户服务。
◆实时操作系统:实时是指计算机对于外来信息能够以足够快的速度进行处理,并在被控对象允许的时间范围内做出快速反应。实时系统对交互能力要求不高,但要求可靠性有保障。
◆网络操作系统:是使联网计算机能方便而有效地共享网络资源,为网络用户提供各种服务的软件和有关协议的集合。三种模式:集中模式、客户端/服务器模式、对等模式。
◆分布式操作系统:分布式计算机系统是由多个分散的计算机经连接而成的计算机系统,系统中的计算机无主、次之分,任意两台计算机可以通过通信交换信息。
◆微型计算机操作系统:简称微机操作系统,常用的有Windows、Mac OS、Linux。
2. 进程状态与组成
真题
答案: A、C
解析:P1处于运行状态,那么对应于它的操作就是时间片到,P1进入就绪状态。而此时,P3和P4都处于等待状态,都在等待除了CPU之外的其他事物,它们等待的事物并没有到,所以还是处于等待状态,或阻塞状态。P2此时是就绪状态,获得了P1释放的CPU,进入运行状态。
3. 前趋图
3.1. 进程资源图
近几年都不考
真题
4. 进程的同步与互斥(重点)
◆临界资源:各进程间需要以互斥方式对其进行访问的资源。
◆临界区:指进程中对临界资源实施操作的那段程序。本质是一段程序代码。
◆互斥:某资源(即临界资源)在同一时间内只能由一个任务单独使用,使用时需要加锁,使用完后解锁才能被其他任务使用;如打印机。
◆同步:多个任务可以并发执行,只不过有速度上的差异,在一定情况下停下等待,不存在资源是否单独或共享的问题;如自行车和汽车。
◆互斥信号量:对临界资源采用互斥访问,使用互斥信号量后其他进程无法访
问,初值为1。
◆同步信号量:对共享资源的访问控制,初值一般是共享资源的数量。
4.1. PV 操作
- P 操作减一
- V 操作加一
S>0 的时候 可以代表当前所空余的资源数
S<0 的时候,可以表示当前有多少个进程正在等待资源数
真题
4.2. 经典问题: 生产者和消费者
- 生产者: 生成一个商品 S, 先申请到仓库的使用权 P(S0),并且判断 仓库中是否有空闲的个数 P(S1),即仓库空闲个数减一。 放入仓库后,V(S2),仓库商品个数加一,并且释放仓库 使用权 V(S0)
- 消费者: 先申请到仓库的使用权 P(S0),并且判断仓库中商品个数 P(S2)。取出一个商品后,V(S1) 仓库空闲个数加一,释放仓库使用权 V(S0)
真题
答案:CBB
解析 : 图中每条线对应一个信号量,每个节点执行完成是 V 操作,释放资源,执行前是 P 操作,获取资源
真题
5. 进程调度
◆进程调度方式是指当有更高优先级的进程到来时如何分配CPU。分为可剥夺和不可剥夺两种,可剥夺指当有更高优先级进程到来时,强行将正在运行进程的CPU分配给高优先级进程;不可剥夺是指高优先级进程必须等待当前进程自动释放CPU。
◆在某些操作系统中,一个作业从提交到完成需要经历高、中、低三级调度。
(1)高级调度。高级调度又称“长调度”“作业调度”或“接纳调度”,它决定处于输入池中的哪个后备作业可以调入主系统做好运行的准备,成为一个或一组就绪进程。在系统中一个作业只需经过一次高级调度。
(2)中级调度。中级调度又称“中程调度”或“对换调度”,它决定处于交换区中的哪个就绪进程可以调入内存,以便直接参与对CPU的竞争。
(3)低级调度。低级调度又称“短程调度”或“进程调度”,它决定处于内存中的哪个就绪进程可以占用CPU。低级调度是操作系统中最活跃、最重要的调度程序,对系统的影响很大。
5.1. 调度算法
6. 死锁
◆当一个进程在等待永远不可能发生的事件时,就会产生死锁,若系统中有多个进程处于死锁状态,就会造成系统死锁。
◆死锁产生的四个必要条件:资源互斥、每个进程占有资源并等待其他资源、系统不能剥夺进程资源、进程资源图是一个环路。
死锁产生后,解决措施是打破四大条件,有下列方法:
◆死锁预防:采用某种策略限制并发进程对于资源的请求,破坏死锁产生的四个条件之一,使系统任何时刻都不满足死锁的条件。
◆死锁避免:一般采用银行家算法来避免,银行家算法,就是提前计算出一条不会死锁的资源分配方法,才分配资源,否则不分配资源,相当于借贷,考虑对方还得起才借钱,提前考虑好以后,就可以避免死锁。
◆死锁检测:允许死锁产生,但系统定时运行一个检测死锁的程序,若检测到系统中发生死锁,则设法加以解除。
◆死锁解除:即死锁发生后的解除方法,如强制剥夺资源,撤销进程等。
◆死锁资源计算:系统内有n个进程,每个进程都需要R个资源,那么其发生死锁的最大资源数为n*(R-1)。其不发生死锁的最小资源数为n*(R-1)+1。
真题
真题
7. 线程
◆传统的进程有两个属性:可拥有资源的独立单位;可独立调度和分配的基本单位。
◆引入线程的原因是进程在创建、撤销和切换中,系统必须为之付出较大的时空开销,故在系统中设置的进程数目不宜过多,进程切换的频率不宜太高,这就限制了并发程度的提高。引入线程后,将传统进程的两个基本属性分开,线程作为调度和分配的基本单位,进程作为独立分配资源的单位。用户可以通过创建线程来完成任务,以减少程序并发执行时付出的时空开销。
◆线程是进程中的一个实体,是被系统独立分配和调度的基本单位。线程基本上不拥有资源,只拥有一点运行中必不可少的资源(如程序计数器、一组寄存器和栈),它可与同属一个进程的其他线程共享进程所拥有的全部资源,例如进程的公共数据、全局变量、代码、文件等资源,但不能共享线程独有的资源,如线程的栈指针等标识数据。
7.1. 分区存储管理
◆所谓分区存储组织,就是整存,将某进程运行所需的内存整体一起分配给它,然后再执行。有三种分区方式:
◆固定分区:静态分区方法,将主存分为若干个固定的分区,将要运行的作业装配进去,由于分区固定,大小和作业需要的大小不同,会产生内部碎片。
◆可变分区:动态分区方法,主存空间的分区是在作业转入时划分,正好划分为作业需要的大小,这样就不存在内部碎片,但容易将整片主存空间切割成许多块,会产生外部碎片。可变分区的算法如下:
◆系统分配内存的算法有很多,如下图所示,根据分配前的内存情况,还需要分配9K空间,对不同算法的结果介绍如下:
◆可重定位分区:可以解决碎片问题,移动所有已经分配好的区域,使其成为
一个连续的区域,这样其他外部细小的分区碎片可以合并为大的分区,满足作业要求。只在外部作业请求空间得不到满足时进行。
7.2. 分页存储管理
真题
真题
7.3. 分段存储管理
真题
(段号,段长)
7.4. 段页式存储管理
8. 设备管理概述
◆设备是计算机系统与外界交互的工具,具体负责计算机与外部的输入/输出工作,所以常称为外部设备(简称外设)。在计算机系统中,将负责管理设备和输入/输出的机构称为I/O系统。因此,I/O系统由设备、控制器、通道(具有通道的计算机系统)、总线和I/O软件组成。
◆设备的分类:
按数据组织分类:块设备、字符设备。
按照设备功能分类:输入设备、输出设备、存储设备、网络联网设备、供电设备。
资源分配角度分类:独占设备、共享设备和虚拟设备。
数据传输速率分类:低速设备、中速设备、高速设备。
◆设备管理的任务是保证在多道程序环境下,当多个进程竞争使用设备时,按一定的策略分配和管理各种设备,控制设备的各种操作,完成I/O设备与主存之间的
数据交换。
◆设备管理的主要功能是动态地掌握并记录设备的状态、设备分配和释放、缓冲区管理、实现物理I/0设备的操作、提供设备使用的用户接口及设备的访问和控制。
9. I/O 软件
- 用户进程->设备无关软件->设备驱动程序->中断处理程序->硬件
10. 设备管理技术
真题
11. 文件管理概述
◆文件是具有符号名的、在逻辑上具有完整意义的一组相关信息项的集合。
◆信息项是构成文件内容的基本单位,可以是一个字符,也可以是一个记录,记录可以等长,也可以不等长。一个文件包括文件体和文件说明。文件体是文件真实的内容。文件说明是操作系统为了管理文件所用到的信息,包括文件名、文件内部标识、文件的类型、文件存储地址、文件的长度、访问权限、建立时间和访问时间等。
◆文件管理系统,就是操作系统中实现文件统一管理的一组软件和相关数据的集合,专门负责管理和存取文件信息的软件机构,简称文件系统。文件系统的功能包括按名存取;统一的用户接口;并发访问和控制;安全性控制;优化性能;差错恢复。
◆文件的类型:
(1)按文件性质和用途可将文件分为系统文件、库文件和用户文件。
(2)按信息保存期限分类可将文件分为临时文件、档案文件和永久文件。
(3)按文件的保护方式分类可将文件分为只读文件、读/写文件、可执行文件和不保护文件。
(4)UNIX系统将文件分为普通文件、目录文件和设备文件(特殊文件)。
◆文件的逻辑结构可分为两大类:有结构的记录式文件;无结构的流式文件。
◆文件的物理结构是指文件在物理存储设备上的存放方法,包括:
(1)连续结构。连续结构也称顺序结构,它将逻辑上连续的文件信息(如记录)依次存放在连续编号的物理块上。
(2)链接结构。链接结构也称串联结构,它是将逻辑上连续的文件信息(如记录)存放在不连续的物理块上,每个物理块设有一个指针指向下一个物理块。
(3)索引结构。将逻辑上连续的文件信息(如记录)存放在不连续的物理块中,系统为每个文件建立一张索引表。索引表记录了文件信息所在的逻辑块号对应的物理块号,并将索引表的起始地址放在与文件对应的文件目录项中。
(4)多个物理块的索引表。索引表是在文件创建时由系统自动建立的,并与文件一起存放在同一文件卷上。根据一个文件大小的不同,其索引表占用物理块的个数不等,一般占一个或几个物理块。
11.1. 索引文件结构(重点)
真题
如果题目不指定,则默认索引块从 0 开始
直接索引块(0-4),一级索引块(5-516)
11.2. 文件目录
真题
11.3. 文件存储空间管理
真题