完整知识点回顾,建议以思维导图形式进行回忆问答
一、概述
操作系统的概念
- 管理计算机软件和硬件资源
- 最基本的系统软件
特征
- 并发
- 区分并发(同一时间间隔)、并行(同时)
- 共享
- 互斥共享方式(临界资源)
- 同时访问方式
- 虚拟
- 逻辑上变多变大。如:虚拟处理器的分时;空分复用的虚拟存储器
- 采用多道程序设计
- 逻辑上变多变大。如:虚拟处理器的分时;空分复用的虚拟存储器
- 异步
- 由于资源有限,进程走走停停
- 可能会导致进程产生与时间有关的错误。访问顺序
- 由于资源有限,进程走走停停
目的和功能
-
1.管理计算机资源
- 功能
- 处理机管理、存储器管理、文件管理、设备管理
- 目标:安全、有效
- 功能
-
2.作为用户与计算机硬件系统之家的接口
-
命令接口
用户操作作业执行
- 联机命令接口
- 用于分时或实时系统
- 脱机命令接口
- 用于批处理系统
- 联机命令接口
-
程序接口(系统调用)间接使用
- 由系统调用组成,提供给用户(包括程序员)的接口
- 用户可以使用系统调用请求操作系统服务
- 例如GUI
-
-
3.用作扩充机器(虚拟机)
操作系统的分类和发展
- 1.手工操作阶段
- 2.批处理阶段
- 单道批处理系统
- 多道批处理系统(操作系统开始出现)
- 宏观上并行,微观上串行(多道程序同时装入内存,交替执行)
- 无人机交互,无需人工干预
- 多道批处理又分为抢占和非抢占,注意计算题中的计算,通过画图即可做出
- 宏观上并行,微观上串行(多道程序同时装入内存,交替执行)
- 批处理系统的缺点是 缺乏交互性
- 3.分时操作系统
- 时间片轮转的方式(多个用户通过终端共享一台主机)
- 支持多道程序设计,(解决了人机交互),但不能在极短时间内作出处理
- 4.实时操作系统
- 分类
- 硬实时系统
- 必须在某规定时间内执行
- 飞机飞行系统
- 必须在某规定时间内执行
- 软实时系统
- 偶尔违反
- 订票,银行管理
- 偶尔违反
- 硬实时系统
- 可以优先反应一些紧急的任务
- 及时性,可靠性
- 抢占式优先级调度
- 分类
- 5.网络操纵系统
- 6、分布式操作系统(peer同等地位、资源共享、协同工作)
- 7、嵌入式操作系统
- 6、分布式操作系统(peer同等地位、资源共享、协同工作)
运行机制
-
两种程序
- 内核程序(时钟、中断、原语、系统数据结构)
- 用户程序
-
两种命令
- 特权命令
- 不允许用户直接使用的指令
- 非特权命令
- 访管指令
- 特权命令
-
两种处理器状态
- 核心态(管态,内核态)
- 用户态(目态)
-
中断
- 内中断(异常/陷入/例外)
- CPU执行指令内部时发生错误比如非法操作,地址越界,算术溢出,缺页等等,一旦出现不能屏蔽,应该立即处理
- 外中断(中断)
- 又叫强迫中断,比如IO外设请求,或者人的干预,这一类通常是与当前运行的程序无关的事件
- 内中断(异常/陷入/例外)
-
处理中断
- 程序计数器PC保存断点
- PC寻址,进入中断服务程序
- 保存现场(指程序状态字寄存器PSWR和某些通用寄存器)
- 执行中断服务程序
- 恢复现场、返回断点处继续执行
-
系统调用(广义指令)
- 是操作系统为应用程序使用内核功能所提供的接口,只能通过用户程序间接使用
- 用户在程序中调用操作系统提供的子功能
- 设备文件的管理
- 进程的控制与通信
- 内存管理
-
体系结构
- 大内核(功能都整体运行在和心态)
- 微内核(只保留基本功能在内核,其余在用户态,分离了用户与服务,但频繁切换性能消耗大)
-
总结
- 用户态核心态首先区分题目问的是执行还是调用
二、进程管理
进程
资源分配的基本单位
- 组成(进程实体)
- 程序段
- 数据段
- PCB(进程存在的唯一标志)
- 包括标识符、状态信息、资源清单
- 链接方式(PCB链接成队列)、索引方式(索引表项指向相应PCB)
- 状态及转换
- 运行态,就绪态(等待被调度),阻塞态(等外设),创建态,结束态,主要掌握前三个相互转换的条件
- 就绪队列最多有 n-1个进程,阻塞队列最多有n个进程(死锁)
- 进程控制
- 进程创建
- 用户登录
- 作业调度
- 提供服务
- 应用请求
- 进程终止
- 正常结束
- 异常结束:越界错误,非法指令,等待超时等等
- 外界干预
- 阻塞及唤醒
- 请求共享资源失败
- 等待操作完成:比如IO操作
- 等待新任务到达
- 新数据未到达
- 进程切换
- 掌握转换的原语
- 进程创建
- 通信
- 共享存储
- 消息传递
- 管道通信
- 固定大小的缓冲区,对管道两端进程而言就是一个文件
- 半双工信道,同一时刻只能一个方向传输
- 满时写被阻塞,空时读被阻塞(互斥访问)
线程
- 线程是最基本的调度单位,但是最基本拥有资源的基本单位还是进程
- 处理机的管理是对进程的管理
- 进程可以创建多个进程,线程可以创建多个线程(线程之间共享父进程的资源)
- 分类
- 用户级线程
- 内核级线程
- 多线程模型
- 多对一(用户空间进行线程管理,高效; 内核一阻塞用户线程都阻塞)
- 一对一(并发能力强,开销也大)
- 多对多(并发和开销的折中)