一、操作系统介绍
1.1、定义
操作系统是一组用于控制和管理计算机系统硬件和软件资源,合理地对各类作业进行调度,以及方便用户使用的程序集合。是一个软件
1.2、地位
操作系统是裸机之上的第一层软件,是建立其他所有软件的基础;是整个系统的控制管理中心,既管硬件,又管软件;它为其他软件提供运行环境。
1.3、基本特征
-
并发:两个或多个活动在同一给定时间间隔中进行(并行:同一时刻)
eg: 程序a耗时1s,程序b耗时2s,在前5s两个程序并发运行,不是并行运行 -
共享:计算机系统中的资源被多个进程所共用
-
异步:进程以不可预知的速度向前推进
-
虚拟:把一个物理上的实物变为若干个逻辑上的对应物
最基本的特征:并发、共享(两者互为存在条件)
1.4、主要功能(对应2345章)
- 处理器管理:进程控制、进程同步、进程通信、死锁处理、处理机调度
- 存储器管理:内存分配、地址映射、内存保护与共享、内存扩充
- 文件管理:文件存储空间的管理、目录管理、文件读写管理和保护
- 设备管理:缓冲设备、设备分配、设备处理、虚拟设备
1.5、发展
- 手工操作阶段:无操作系统
缺点:人机速度矛盾不匹配 - 批处理阶段:操作系统开始出现
①单道批处理阶段:一个CPU运行一个程序
②多道批处理阶段:操作系统正式诞生,一个CPU运行多个程序(并发,不是并行)
a.目的:提高系统资源利用率
b.优点:多道程序并发执行,资源利用率高
c.缺点:不提供人机交互能力(缺少交互性) - 分时操作系统:不可插队,有了人机交互
①时间片轮转算法:为每个程序分配时间片,每个程序运行固定时间后下个程序运行
②优点:提供人机交互(交互性)
③缺点:不能优先处理紧急事务(次序固定) - 实时操作系统:可以插队
①硬实时系统:必须在被控制对象规定时间内完成(如火箭发射)
②软实时系统:对时间限制没有那么严格,可以松一些(订票)
③优点:能优先处理紧急任务 - 比较
①可靠性:实时操作系统更强
②交互性:分时操作系统更强
二、不得不知的概念
2.1、两种指令
- 特权指令:不允许用户程序使用(有特权的指令,只允许操作系统使用),如IO指令、置中断指令
- 非特权指令:普通的运算指令,如修改时钟时间
2.2、两种程序
- 内核程序:系统的管理者,可执行一切指令(包括特权指令和非特权指令),运行在核心态
- 应用程序:普通用户程序,只能执行非特权指令,运行在用户态
2.3、处理机状态
- 用户态(目态):CPU只能执行非特权指令
- 核心态(管态、内核态):可以执行所有指令
- 用户态到核心态:通过中断实现(硬件完成)
- 核心态到用户态:特权指令psw的标志位,0用户态,1核心态
- 分清谁在用户态执行,谁在核心态执行
2.4、原语
- 处于操作系统最底层,是最接近硬件的部分
- 程序运行具有原子性,其操作只能一气呵成(不能被中断)
- 程序的运行时间都比较短,而且调用频繁
2.5、中断和异常(判断属于哪种中断类型)
- 内中断(异常,信号来自内部)
①自愿中断:如指令中断
②强迫中断:硬件中断+软件中断 - 外中断(中断,信号来自外部)
①外设请求:如打印机缺纸
②人工干预
2.6、系统调用
- 系统给程序员(应用程序)提供的的唯一接口,可获得OS服务
- 在用户态发生,在核心态处理
2.7、体系结构
- 大内核:高性能
- 微内核:维护方便