操作系统概述
本文最后更新于 2024-03-23,欢迎来到我的Blog! https://www.zpeng.site/
第一章、操作系统概述
1. 操作系统的功能
(1)操作系统作为系统资源的管理者。
文件管理(在文件目录中找到QQ.exe)。
存储器管理(将QQ.exe加入到内存中)。
处理器管理(对应的进程被CPU处理)。
设备管理(QQ视频将摄像头设备分配给进程)。
(2)操作系统作为用户和计算机硬件之间的接口。
命令接口:允许用户直接使用。
程序接口:允许用户通过程序间接使用。
GUI:图形用户接口。
(3)操作系统作为最接近硬件的层次。
2. 操作系统的特征
操作系统的特征:共享、并发、虚拟、异步。
其中共享和并发是两个最基本的特征,二者互为存在条件。
并发:两个或多个事件在同一时间间隔内完成。这些事件在宏观上是同时发生的,但在微观上是交替发生的。
并行:指两个或多个事件在同一时刻同时发生。
共享:就是资源共享,指的是系统中的资源可供内存中多个并发执行的进程共同使用。
并发和共享的关系:不可分割,相互依存,没有并发就无共享,没有共享也就无并发。
虚拟:并发性决定了实际上内存只有4G,但是在用户看来,计算机可用的内存远远大于4G。
并发决定虚拟,没有并发就没有虚拟。
异步:多个线程处理同一个资源类,资源有限,不能同时满足两个线程的要求,会发生阻塞。
并发决定异步,没有并发就没有异步。
3. 操作系统发展和分类
3.1. 手工操作阶段
3.2. 单道批处理阶段
3.3. 多道批处理阶段
3.4. 分时操作系统
3.5. 实时操作系统
4. OS运行机制和体系结构
4.1. 运行机制
指令:C语言代码 ----> 翻译成"机器语言指令"(一条高级语言的代码翻译过来可能会对应多条指令)。
简单来说,"指令"就是让处理器(CPU)能识别、执行的最基本命令。
(1)两种指令:
特权指令:不允许用户程序使用(例如:内存数据全部清零)。
非特权指令:普通的加、减、乘、除指令。
(2)CPU两种处理状态:
用户态(目态):此时CPU只能执行非特权指令。
核心态(管态):此时CPU可以执行特权指令和非特权指令。
(3)两种程序:
内核程序:操作系统的内核程序是系统的管理者,既可以执行特权指令,也可以执行非特权指令,运行在核心态。
应用程序:为了保证系统的安全运行,普通的应用程序只能执行非特权指令,运行在用户态。
4.2. 操作系统内核
操作系统内核是计算机上配置的底层软件,是操作系统最基本,最核心的部分。
内核程序:实现操作系统内核功能的那些程序就是内核程序。
4.3. 操作系统体系结构
5. 中断和异常
5.1. 中断的作用
中断本质:发生中断就意味着需要操作系统介入,开展管理工作。
中断的特点:
当中断发生时,CPU立即进入核心态。
当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理。
对于不同的中断信号,操作系统会进行不同的处理。
5.2. 中断的分类
5.3. 外中断的处理过程
6. 系统调用
6.1. 系统调用的概念
6.2. 系统调用的分类
6.3. 系统调用与库函数
第二章、进程管理
1. 进程的概念
(1)进程的组成。
进程:进程又称为进程实体,由程序段、数据段、程序控制块(PCB)组成。
(2)进程的组织。
(3)进程的特征。
2. 进程的状态和转换
2.1. 三种基本状态
进程的另外两种状态:
新建态:进程正在被创建,操作系统为进程分配资源、初始化PCB。
终止态:进程正在从系统中撤销,操作系统会回收进程拥有的资源、撤销PCB。
2.2. 进程状态的转换
3. 进程控制
进程控制:进程控制的主要功能是对系统中的所有进程实施有效的管理,它具有创建新进程、撤销已有进程、实现进程转换等功能。一句话,进程控制就是实现进程状态间的转换。
(1)如何实现进程控制?
原语的执行必须是一气呵成,不可中断。
进程控制会导致进程状态的切换。无论哪个原语,要做的无非三类事情:
更新PCB中的信息(如修改进程状态标志、将运行环境保存到PCB、从PBC恢复运行环境):
所有的进程控制原语一定会修改进程状态标志。
剥夺当前运行进程的CPU使用权必然需要保存其运行环境。
某进程开始运行前必然要恢复其运行环境。
将PCB插入合适的队列。
分配/回收资源。
4. 进程通信
进程通信:进程之间的信息交换。
进程是分配系统资源的基本单位,因此各个进程拥有的内存地址空间相互独立。
4.1. 共享存储
4.2. 管道通信
-
4.3. 消息传递
- 感谢你赐予我前进的力量