计算机四级网络工程师(操作系统2.3.4)
第二章:操作系统运行机制
考试内容:
1. 内核态与用户态
2. 中断与异常
3. 系统调用接口
4. 存储系统
5. I/O系统
6. 时钟(clock)

1. CPU的构成与基本工作方式
(1)处理器
运算器:实现指令中的算术和逻辑运算
控制器:控制程序运行的流程
一系列寄存器:用户可见寄存器;控制和状态寄存器
高速缓存:处于CPU和物理内存之间
(2)寄存器
用户可见寄存器:
①数据寄存器
②地址寄存器
③条件寄存器
控制和状态寄存器:
①程序计数器(PC)
②指令寄存器(IR)
③程序状态字(PSW)
(3)处理器状态
管态(特权态、系统态、核心态);目态(普通态、用户态)
or核心状态;管理状态;用户程序状态(目标状态)
目态→中断 转换→管态 管态→设置PSW(修改程序状态字)→目态
补充:程序状态字
条件码:反应指令执行后的结果特征
中断屏蔽码:指出是否允许中断
CPU的工作状态码:管态、目态的转换
2. 中断
(1)中断特点:
随机
可恢复
自动处理
(2)中断系统的组成:
硬件中断装置
软件中断处理程序
(3)中断的分类
①广义中断:
中断(外中断):
I/O中断
时钟中断
硬件故障中断
异常(内中断):
系统调用
缺页异常
断点指令
其他程序性异常(eg.算术溢出)
②狭义中断:
中断:与正执行命令无关,可屏蔽
异常:与正执行命令有关,不可屏蔽
总结:常见的中断有
I/O中断
时钟中断
硬件故障中断
程序性中断
系统调用(访管中断)
(4)中断寄存器
中断扫描机构检测
中断信号规定值为1——中断
中断信号规定值为0——无
由中断位组成
(5)影响中断次序的技术:
中断优先级
中断屏蔽
3. 系统调用组成程序接口:用户取得OS服务的唯一途径
系统调用与一般过程调用的区别:运行在不同的系统状态
①系统调用(调:用户态 被调:系统态)
②一般过程调用(调与被调都相同)
4. 存储保护功能:
界地址寄存器(界限寄存器)
存储键
5. I/O控制方式
通道(I/O处理机)
DMA技术:成块
缓冲技术:解决部件间速度不匹配问题——单缓冲区;多缓冲区(Cache)技术
6. 时钟→由硬件提供
(1)时钟工作
多道程序→死循环→防止机时浪费:提高CPU利用率
分时系统→间隔时钟→时间片轮转
实时系统
(2)时钟分类
硬件时钟
软件时钟
(3)时钟用途分类
绝对时钟
相对时钟(间隔时钟):eg.定时

第三章:进程线程模型(重点)
考试内容:
1. 并发环境与多道程序设计
2. 进程的基本概念,进程控制块(PCB)
3. 进程状态及状态转换
4. 进程控制:创建、撤销、阻塞、唤醒
UNIX类进程操作的应用(fork()、exec()、wait()、signal())
5. 线程的基础概念,线程的实现机制,Pthread线程包的使用
6. 进程的同步与互斥:信号量及PV操作,管程,Pthreads中的同步互斥机制
7. 进程间通信
8. 处理机调度

1. 顺序执行特征:
顺序性
封闭性
程序执行结果的确定性
程序结果的可行性
2. 多道程序特点:
独立性
随机性
资源共享性
3. 并发特征:
并发程序在执行期间具有相互制约关系
程序与计算不再一一对应
并发执行结果不可再现
eg.k=5 A:k=k-1 B:Print k;k=k+3
①先A后B:k=4;k=4;k=7
②先B后A:k=5;k=8;k=7
③先B再A后B:k=5;k=4;k=7
4. 进程:动态(正在执行的程序)——系统进程;用户进程
程序:静态
5. (1)进程特性:
并发性、动态性(最基本特征)
独立性
交往性
异步性
(2)进程组成:
程序
数据
进程控制块(PCB)
(3)进程控制块(PCB):
信息:
调度信息——当前
现场信息——运行
PCB表组织方式:
线性方式
索引方式
链接方式
6. 进程的基本状态(不同设置进程状态数不同):进程是资源拥有的基本单位
(1)三状态:(线程的基本状态)
就绪状态
运行状态(单处理器;多处理器)
等待状态
(2)五状态:
前面的三状态
创建状态
结束状态
(3)七状态:
前面的五状态
挂起状态(内存→外存)
激活状态(外存→内存)
7. 进程状态间的转换:
新状态→就绪状态:就绪队列能接纳新的进程
就绪状态→执行状态:算法,处于执行……=当前状态
执行状态→阻塞状态:发生某种事件
执行状态→就绪状态:时间片结束;优先权较低
阻塞状态→就绪状态:需资源得到满足或完成输入输出响应
执行状态→终止状态:正常结束或异常错误结束
8. 进程控制特定功能原语:
创建原语
撤销原语
阻塞原语
唤醒原语
补充:阻塞发生的原因 唤醒事件
请求系统服务 → 得到满足
启动某种操作 → 完成
新数据尚未到达 → 到达
无新工作可做 → 有新
9. 线程实现机制
用户级线程
内核级线程
混合实现方式
10. 线程与进程的比较:
(1)调度并发性
进程间并发执行
一个进程中的多个线程间并发
(2)拥有资源
线程不拥有系统资源,但线程可访问属于进程的资源
(3)系统开销
进程切换的开销远大于线程
11. (1)线程、进程调度算法:
先来先服务调度算法(FCFS):最简单、非抢占式、利于长进程
最短作业优先调度算法(SPF):就绪、运行时间最短、非抢占式、不利于长进程
最短剩余时间优先调度算法:抢占式、动态
时间片轮转调度算法(RR):分时系统、时钟中断、轮转规则、交互进程
最高优先级调度算法
多级反馈队列调度算法(MLF)
实时系统中方的调度算法
(2)进程调度层次:
高级调度
中级调度:调度算法
低级调度:进程调度
(3)调度算法设计原则:
面向用户的原则——周转时间短
面向系统的原则——系统吞吐量高
12. 进程间的关系:
(1)进程同步遵循原则:
空闲让进
忙则等待
有限等待
让权等待
(2)进程互斥(解决互斥,平等协商,进程管理者):
①软件算法:单标志算法;双标志、先检查算法;双标志、后检查算法;先修改、后检查、后修改者等待算法
②硬件方法:TS指令;Swap指令
③操作系统方法:信号量(Dijkstra提出)
补充:资源共享程度的三个层次:
互斥
死锁
饥饿
13. 临界资源访问过程:
进入区→临界区→退出区→剩余区
14. 信号量:
(1)最常用:
整型信号量→整型变量:
①>0 可用资源数
②<0 阻塞进程数
③=0 资源已用完
(2)整型信号量的原语:
P操作:进入临界区前——wait(s)
V操作:退出临界区后——signal(s)≤0
15. 管程:
(1)管程的组成:
管程名称
共享数据的说明
对该数据进行操作的一组过程
对共享数据设置初始值的语句
(2)管程的特征:
模块化
抽象数据类型
信息隐蔽
(3)实现同步(进/线程的阻塞和唤醒):
wait原语:阻塞
signal原语:唤醒队首
16. 通信分类:
(1)低级通信
(2)高级通信(管道通信):
共享内存;消息机制(消息缓冲通信——直接;信箱通信方式——间接);通过共享文件
补充:信箱通信:
(1)信箱通信操作:
创建原语
撤销原语
发送原语
接收原语
(2)信箱分类:
私有信箱
共有信箱
共享信箱
17. 管道通信系统:首创UINX系统
读进程 —(共享文件、连接)— 写进程

第四章:存储管理方案
考试内容:
1. 存储管理的基本概念,存储管理的基本任务
2. 分区存储管理方案
3. 覆盖技术与交换技术
4. 虚存概念与虚拟存储技术
5. 虚拟页式存储管理方案

1. 存储体系:
(自下而上依次存取器存取时间减少、存取速度增加、每位存储器成本增加、容量减少)
高速缓存器
内存
外存
2. 存储器:
(1)存储器的组成:
内存(空间)→系统区;用户区
外存(辅助存储器)
(2)存储器管理任务:
内存的分配和回收(实现方式):位示图表示法;空闲页面表;空闲块表
内存共享:代码共享;数据共享
存储保护(内容)地址越界保护;权限保护;存储键保护→(目的)避免各程序间相互干扰
补充:内存
(1)分配方式:
静态分配
动态分配
(2)扩充内存方式:
虚拟存储技术(虚拟页式——动态扩充内存)
交互技术
3. 分区:
(1)固定分区:
全装主存(虚拟存储是部分),连续存储空间,大小固定,数目固定(限制并发)
①主存分配:状态“0”表可用
②主存回收:状态“0”表空闲
(2)可变分区:
①主存空间分配(算法):
最先适应分配算法(FF)——地址递增,找第一个作业的空闲区
最优适应分配算法(BF)——长度递增,最小能装作业的区,顺序
最坏适应分配算法(WF)——长度递减,最大能装作业的区,顺序
下次分配算法
②主存空间回收
③总结:
动态分区,大小不变,数目不变
算法:移动技术(“碎片整理”)→开销增加,有条件的
数目结构:已分分区表;空闲分区表
分配:先小地址,排列一样的,首次分配只有一个空闲区
④回收:
无上邻,无下邻:起始不变 空闲分区变大 数目+1
有上邻,无下邻:起始不变 空闲分区变大 数目不变
有下邻,无上邻:起始变 空闲分区变大 数目不变
有上邻,有下邻:起始不变 空闲分区变大 数目-1

4. 地址转换(地址映射/重定位):逻辑地址→物理地址
(1)分类:
静态重定位:程序开始执行前→绝对地址(一次性)
动态重定位:程序执行过程中(多次)
(2)计算方法:
页号=逻辑地址/页长(商)
页内地址=逻辑地址mod页长(余数)
物理地址=块号*块长+块内地址+用户区地址+用户区基址
→(逻辑地址 - 页内地址)/页号=页长=块长
5. 页式管理(可离散):
(1)数据结构:
主存分配表:存储页表在内存中位置
位示图:块的可用与否,空闲块数
页表:存储块和页的对应关系
(2)特点:
有效解决“碎片”多的问题
位示图、页表→作业分配,硬件支持
页的大小固定,使共享困难
(3)页式虚拟存储管理系统:
纯分页 位示图
请求调页功能 →数据结构 页表→分类:多级;散列 ;反置
页面置换功能 主存分配表
①调入策略:请求调页;预调页
②置页策略
③置换策略:固定分配局部置换;可变分配全局置换;可变分配局部置换
CPU在存取数据时,要访问两次
①访问主存中的页表,块号与页内地址→物理地址
②根据①得到的物理地址,到主存中获取数据
降低计算机处理速度→为提高速度:
快表(TLB):页式存储管理快表存放 CACHE(高速缓存)
两级页表
6. 虚拟存储管理方式:
(1)虚拟存储器:
逻辑容量=最大容量(eg. 24位为2的24次方B)
物理容量=实际容量:
①主存+硬盘≤最大容量
②主存+硬盘>最大容量
(2)页面置换算法(→不合理:抖动)
先进先出置换算法(FIFO):淘汰队首的那一页 贝莱迪异常(Belady)现象
最近最久未使用算法(LRU):淘汰最近最久没用的页,程序局部性原理
最近最不经常使用算法(LFU):访问计算器“1”;“0”
理想页面置换算法(最佳OPT):移出不需要、长时间不用的页
最近未使用页面置换算法(NRU):
①第0类:没访问、没修改
②第1类:没访问、被修改
③第2类:被访问、没修改
④第3类:被访问、被修改
7. 缺页中断率:中断次数/页面访问总次数
8. 段式存储管理方式:
段内地址>段长为地址越界 段号不符为段号越界
段始址+段内地址=物理地址 (段号,段内地址)为逻辑地址
段页式存储管理方式:


感谢可爱帅气的你们的关注和点赞(^_−)☆
(整理不易,可自用,不要二次复制到其他APP哦)