一、操作系统概述
1.1 操作系统定义
能有效地组织和管理系统中的各种软硬件资源,合理地足赤计算机系统工作流程,控制程序的执行,并且向用户提供一个良好的工作环境和友好的接口
1.2 操作系统重要作用
- 通过资源管理提高计算机系统的效率
- 改善人机界面向用户提供友好的工作环境
1.3 操作系统的特征
- 并发性
- 共享性
- 虚拟性
- 不确定性
1.4 操作系统的功能
- 进程管理
实质上是对处理机的执行“时间”进行管理,采用多道程序等技术将CPU的时间合理地分配给每个任务,主要包括进程控制、进程同步、进程通信和进程调度 - 文件管理
主要包括文件存储空间管理、目录管理、文件的读写管理和存取控制 - 存储管理
存储管理是对主存储器“空间”进行管理,主要包括存储分配与回收、存储保护、地址映射(变换)和主存扩充 - 设备管理
实质是对硬件设备的管理,包括输入输出设备的分配、启动、完成和回收 - 作业管理
包括任务、界面管理、人机交互、图形界面、语音控制和虚拟现实等
1.5 操作系统的分类
- 批处理操作系统
单道批处理和多道批处理(主机与外设可并行) - 分时操作系统
一个计算机系统与多个终端设备连接,将CPU的工作时间划分为许多很短的时间片,轮流为各个终端的用户服务 - 实时操作系统
实时是指计算机对于外来信息能够以足够快的速度进行处理,并在被控对象允许的时间范围内作出快速反应,实时系统对交互能力要求不高,但要求可靠性有保障 - 网络操作系统
是使用连网计算机能方便而有效地共享网络资源,为网络用户提供各种服务的软件和有关协议的集合,三种模式:集中模式、客户端/服务器模式、对等模式 - 分布式操作系统
分布式计算机系统是由多个分散的计算机经连接而成的计算机系统,系统中的主机无主次之分,任意两台计算机可以通过通信交换信息 - 微型计算机操作系统
简称微机操作系统,常用的有windows,linux,macOS
1.6 嵌入式操作系统特点
- 微型化
从性能和成本角度考虑,希望占用的资源和系统代码量少,如内存少,字长短、运行速度有限、能源少(用微小型电池) - 可定制
从减少成本和缩短研发周期考虑,要求嵌入式操作系统能运行在不同的微处理器平台上,能针对硬件变化进行结构与功能上的配置,以满足不同应用需要 - 实时性
嵌入式操作系统主要应用于过程控制、数据采集、传输通信、多媒体信息及关键要害领域需要迅速响应的场合,所以对实时性要求较高 - 可靠性
系统构建、模块和体系结构必须达到应有的可靠性,对关键要害应用还要提供容错和防故障措施 - 易移植性
为了提高系统的易移植性,通常采用硬件抽象层和板级支撑包的底层设计技术
1.7 嵌入式系统的初始化过程
- 片级初始化
- 板级初始化
- 系统初始化
二、进程组成和状态
2.1 进程的组成
- 进程控制块PCB(唯一标志)
- 程序:描述进程要做什么
- 数据:存放进程执行时所需数据
2.2 进程三态图
考试真题
1、如下,答案为:A、C
三、前趋图和进程资源图
3.1 前趋图作用
用来表示哪些任务可以并行执行,哪些任务之间有顺序关系
如下所示,ABC可以并行执行,但是必须ABC都执行完成后,才能执行D
3.2 进程资源图
- 进程资源图用来表示进程和资源之间的分配和请求关系
- P代表进程,R代表资源
R方框中有几个圆球就表示有几个这种资源,在上图中,R1指向P1,表示R1有一个资源已经分配给了P1,P1指向R2,表示P1还需要请求一个R2 资源才能执行 - 阻塞节点
某进程锁清秋的资源已经全部分配完毕,无法获取所需资源,该进程被阻塞了无法继续,如上图P2 - 非阻塞节点
某进程所请求的资源还有剩余,可以分配给该进程继续运行,如上图P1,P3 - 死锁状态
当一个进程资源图中所有进程都是阻塞节点时,即陷入死锁状态
考试真题
1、如下,答案为:C、B
四、进程同步与互斥
4.1 相关概念
- 临界资源
各进程间需要以互斥方式对其进行访问的资源 - 临界区
指进程中对临界资源实施操作的那段程序,本质是一段程序代码 - 互斥
某资源(临界资源)在同一时间内只能由一个任务单独使用,使用时需要枷锁,使用完后解锁才能被其他任务使用 - 同步
多个任务可以并发执行,只不过有速度上的差异,在一定情况下停下等待,不存在资源是否单独或者共享的问题 - 互斥信号量
对临界资源采用互斥访问,使用互斥信号量后其他进程无法访问,初值为1 - 同步信号量
对共享资源的访问控制,初值一般为共享资源的数量
4.2 同步与互斥操作
- P操作
申请资源,S=S-1,若S>=0,则执行P操作的进程继续执行,若S<0,则置该进程为阻塞状态(因为无资源可用),并且将其插入阻塞队列 - V操作
释放资源,S=S+1,若S>0,则执行V操作的进程继续执行,若S<=0,则从阻塞状态唤醒一个进程,并将其插入就绪队列(此时因为缺少资源被P操作阻塞的进程可以继续执行),然后执行V操作的进程继续
考试真题
1、如下,答案为:C、B、B
2、答案为:C、B、D