一、绪论
1.操作系统是一个系统软件,但是是对软件和硬件进行管理的系统软件。
1.1计算机的发展:普通计算机(没有操作系统)→晶体管计算机(OS出现的时代,适合单道系统)→集成电路计算机(适合多道系统)→大规模和超大规模集成电路
1.2计算机放层次结构(七层)
数字逻辑词→控制层→机器层→系统软件层→汇编语言层→高级语言层→用户层
2.OS的目标:
方便些,有效性和可扩充效,开放性。
3.OS的作用:
OS是作为用户和计算机硬件系统之间的接口(命令接口,程序接口),软件接口相当于协议
OS作为计算机系统资源的管理者
OS实现了计算机系统资源的抽象
4.
OS的系统功能:处理机管理,存储管理,文件管理,设备管理,用户接口(方便用户使用OS)
5.计算机的层次结构
未配置操作系统的计算机系统→单道批处理系统→多道批处理系统→分时系统→实时系统
6.单道批处理系统:
优点:解决了人机矛盾和CPU与I/O设备速度不匹配
缺点:不能充分的利用系统资源
7.多道批处理系统:
优点:资源利用率高,系统吞吐量大(系统开销小)
缺点:
平均周转数据长,无交互
注意:批处理是没有交互,但是效率高
8.分时系统:主要目标减少响应时间,终端键入的命令。
特征:多路性,独立性,及时性,交互性
分时系统:引入时间片,轮转运行的方式,对于每一个作业都是能够及时的响应,是一个公平的系统
9.实时系统
/p>
实时系统类型:控制系统和实时信息处理系统
实时任务的类型:硬实时任务(HRT系统必须满足任务对截至时间的要求)和软实时任务(SPT联系一个截至时间,但并不严格,偶尔错过任务的截止时间,对系统的影响也不会太大)
实时系统的特征:即时性,交互性,独立性,可靠性,可靠性和即时性是主要特征
10.OS的基本特征:并发,共享,虚拟和异步
10.1.共享:
并行和并发(并行是指两个或者多个在同一时间发生,并发是指两个或者多个时间在同一时间间隔发生)
进程:进程可以包含多个线程,线程作为独立运行和独立调查的基本单位,线程不拥有系统资源。
引入进程的原因:
能够使得多个程序并发执行,可以提高系统资源的利用率和增加系统的吞吐量
10.2共享
共享指的的是系统的资源可以提供给多个线程在并发执行的进程使用。
10.3虚拟
时分复用技术:利用设备为一用户服务的空闲时间,又转去为其他用户服务,使得设备得到充分的利用。
空分复用技术:
利用存储器器的空闲空间分区域存放和运行其他的多道程序,以此来提高内存的利用率。
10.4异步
进程是以人们不可预知的速度向前推荐的—异步性,异步是OS的一个重要特征
第二章:
1.在早期未配置的OS和单道批处理系统中,程序的执行方式是顺序执行
前驱图
2.有向无循环
3.程序顺序执行的特征:顺序性,封闭性,可再现性
4.程序并发执行的特征:间断性,失去封闭性,不可再现性
5.进程的定义:使程序能够并发执行,并且可以对并发执行的程序加以描述和控制。
进程控制块PCB:使得并发执行的程序都能独立运行
6.进程和程序的比较
进程是程序的一次执行;进程是定义在数据结构上并能进行操作的一个程序;进程是具有独立单位的程序,它是资源分配和调度的一个独立单位。
程序是没有建立PCB结构,程序是不能参与并发执行的。
7.进程的特征:
动态性:最基本的特征
并发性:多个进程可以在同一时间段同时运行。
独立性:进程实体是一个独立的基本单位
异步性:按着异步方式运行
结构性:PCB结构
注意:PCB是进程在系统中存在的唯一标识。
8.进程的状态和转换
进程的三种基本状态:就绪(等待CPU),执行(获得CPU),阻塞。外加两种状态(创建和终止)
9.进程的控制:
OS内核包含两大操作:支撑功能和资源管理功能
支撑功能包括:中断处理和时钟管理,原语操作
原语操作:
原语就是若干条指令组成的,用于完成一定功能的一个过程
10.进程同步的概念
10.1.临界资源:也叫作独占资源,一段时间只允许一个进程访问的资源
临界区:不允许多个并发进程的交叉进行的一段程序(临界区指的是一串代码)
间接相互制约关系:源于资源互斥共享
直接相互制约关系:源于进程合作
与时间相关的错误:“结果不正确(购买机票问题)”,“永远等待(内存管理问题)”
内存机制应该遵循的规则:空闲让进,忙则等待,有限等待,让权等待
这里会出一道综合题:p-v操作
利用信号量实现前驱关系:可能会出题(p57)
11.进程的通信
进程的通信指的是进程之间的信息交流
进程的互斥和同步,需要在进程间交换一定的信息,这种就是低级通信(缺点:效率低,通信对用户不透明;优点:使用方便,高效的传送大量数据)
高级通信:共享存储器系统,消息缓冲/邮箱,管道通信系统,客户机-服务器系统
12.消息传递通信的实现方式:
直接消息传递原理:
Send(receiver,message)发送一个消息给接收进程
Receive(sender,message)接受sender发来的信息
间接信息传递原理:
信箱通信属于间接通信原理,需要通过中间体来实现。
Send(maibox,message)将一个消息发给指定邮箱
Receive(maibox,message)从指定邮箱接受一个信息
13.进程
注意:线程---作为调度和分派的基本单位
线程:比进程更小的基本单位,提高程序并发执行的程度,进一步改善的服务质量,减少程序在并发执行所付出的时空开销
线程的特征:调度的基本单位,并发性,用户资源,独立性,系统开销小,支持多处理系统
线程控制块:TCB
线程的类型:内核支持线程(KST)和用户级线程(ULT)
第三章
处理机调度的层次:
14.高级调度:(作业调度或者长度调度),调度的对象是作业,主要功能是根据某种算法,决定将外存上处于后备队列的哪几个作业调入内存,为他们创建进程,分配必要的资源,并将他们放入就绪队列。
低级调度(进程调度或者短程调度):调度的对象是进程,主要功能是根据算法决定就绪队列的哪个进程获得处理机。
中级调度(内存调度):功能是将暂时将不能运行的进程,调至外存等待,此时的进程的状态称为挂起状态。
线程调度
这几种调度中运行频率最高的是进程调度。作业调度花费的周期比较长。
15.作业的三个阶段和三个状态
作业的收容阶段,作业处于后备状态,运行阶段处于运行状态,完成阶段处于完成阶段
16:调度算法
先来先服务(FCFS)最简单的调度算法,可以用于作业,也可以用于进程调度。
短作业优先(SJF)作业级别越短,优先级越高;缺点:必须预知作业的运行时间,对长作业很不利,任意产生饥饿现象,人机无法实现交互,对于紧迫性作业不能及时处理。
优先级调度属河南法(PSA):基于作业的紧迫程度,由外部赋予的优先级
高响应比优先级调度算法(HRRN):作业的优先级可以改变,令它随着等待时间延长而增加(照顾了短作业,又兼顾了长作业)
轮转调度算法(RR):选择时间片根据交互时间来确定,是一种十分公平的算法,就绪队列每次只运行一个时间片
多级反馈队列:不必事先知道进程所需的执行时间
原理:设置多个就绪队列,每个队列采用FCFS算法,按照队列优先级调度
17指标
周转时间:系统被提交给系统到完成的时间间隔
平均周转时间:平均周转时间越短,可以有效的提高系统资源的利用率。
带权周转时间:作业的周转时间/系统为他提供的服务时间Ts之比
吞吐量:指的是单位时间系统所完成的作业数
设备利用率
18.进程调度方式:非抢占式和抢占式
19.优先级调度算法的类型:非抢占式的优先级调度算法,抢占式调度算法
优先级的类型:静态优先级(FCFS,SJF,PSA)和动态优先级(HRRN)
20.死锁的起因:多个进程对于资源的争夺
死锁产生的必要条件:互斥条件,请求和保持条件,不可抢占资源,循环等待条件
处理死锁的方法:预防死锁(破坏“请求和保持条件”,破坏“不可抢占条件”,破坏“循环等待条件”),避免死锁(系统安全状态,利用银行家算法),检测死锁(资源分配图,死锁定理),解除死锁(终止进程,付出代价最小的死锁解除算法)
大题:银行家算法(p)
第四和五章
程序执行的方法:源代码,预处理,编译器,汇编器,连接
连接的方法:静态链接方式,装入动态链接方式,运行动态链接方式
连续分配存储器管理方式:
1.单一连续分配
单道程序中,分为了系统去和用户区,在用户区装入一道用户程序,即整个内存的空间由该程序独占
2.固定分区分配
针对于多道程序,将用户空间划分为若干个固定大小的区域,在每个分区只装入一道作业。
3.动态分区分配
实现动态分配根据进程的实际需要来分配内存空间。包含数据结构,动态分区分配算法,分区分配算法
分页存储管理:页和框(p),地址的转换
4.最佳置换算法(OPT)
先进先出页面置换算法(FIFO)---belay现象出现
最近最久未使用(LRU)
简单的clock置换算法(p)
改进的Clock算法(p)
抖动的定义:每个进程大部分时间都用于页面的换进和换出。
抖动的解决方法:采取全局置换测量,把工作集算法融入到处理机调度中,利用L=S准则调节缺页率,选择暂停的进程
工作集的定义:进程在时间间隔(t-t1,t2)中引用页面的集合
存储共享及保护:硬件发(界地址保护法),软件法(保护键法),软硬件结合法
第六章
考题:对I/O进行控制(p)
第七章
考题:文件的基本操作(p2