操作系统第一章
操作系统的概念
控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源分配,以提供给用户和其他软件方便的接口和环境。它是计算机系统中最基本的系统软件。
操作系统功能
-
OS作为资源管理者
功能:管理CPU、存储器、文件、设备
目标:保证计算机运行的高效和安全 -
OS作为用户和计算机硬件之间的接口
功能:提供用户接口和GUI(图形界面)
目标:方便用户使用计算机系统
用户接口包括命令接口(脱机命令接口、联机命令接口)、程序接口(系统调用)。
脱机命令接口:相当于交互命令
联机命令接口相当于批处理命令
命令接口允许用户直接使用
程序接口:允许用户通过程序间接使用
- OS作为最接近硬件的软件层次
功能和目标:实现对硬件机器的扩展
通常将覆盖了软件的机器统称为扩充机器(虚拟机)
操作系统四个特征
并发
并发:指两个或多个事件在同一时间间隔内发生
共享
共享:资源共享,资源可供内存中多个并发执行的进程共同使用
互斥共享方式:一个时间内允许一个进程访问
同时共享方式:一个时间内允许多个进程同时执行(分时共享)
虚拟
虚拟:把一个物理上的实体变成一个逻辑上的对应物
空分复用:虚拟内存
时分复用:虚拟CPU
异步
异步:多道程序环境下,由于资源有限,进程的执行以不可预知的速度向前推进
同时代表着 宏观上同时发生,微观上交替发生
并发和共享互为存在条件,是操作系统最基本的特征
没有并发就没有虚拟和异步
操作系统的发展
手工操作阶段
缺点:用户独占全机、人机矛盾大、资源利用率低
批处理阶段
- 单道批处理阶段
特点:引入脱机输入/输出技术(用磁带完成),并监督程序负责控制作业的输入和输出。
优点:人机矛盾小,资源利用率高。
缺点:内存中只能有一道程序运行,CPU有大量的时间是空闲的。 - 多道批处理阶段
特点:多道程序并发地执行,共享系统资源。
优点:资源利用率高
缺点:无人机交互(必须等到全部程序执行完成后才可以停止运行)
操作系统分类
分时操作系统
以时间片为单位轮流为各个用户/作业服务
缺点:不可优先处理紧急任务
实时操作系统
在严格的时限内完成事件,优先响应紧急任务
优点:及时性和可靠性
分类
硬实时操作系统:必须在规定的时间内执行
软实时操作系统:允许偶尔违反规定的时间
其他操作系统
网络操作系统
分布式操作系统
个人计算机操作系统
操作系统运行机制
指令:处理器(CPU)能识别、执行的最基本的命令
两种指令
特权指令:不允许用户使用
非特权指令:允许用户使用
CPU两种状态
用户态(目态):此时CPU只可以执行非特权指令
核心态(管态):CPU可以执行特权和非特权指令
两种状态由程序状态字(PSW)中的标志位识别,0:目态,1:管态
两种程序
内核程序:执行在核心态。实现操作系统内核功能的程序为内核程序
应用程序:执行在用户态
操作系统的内核
操作系统体系结构
大内核
将操作系统的主要功能都作为系统内核
优点:高性能
缺点:内核代码多、结构混乱、难以维护
微内核
只保留基本功能(时钟管理、中断处理、原语)
优点:内核功能少、结构清晰、方便维护
缺点:需频繁切换CPU状态,性能低
中断
为了实现多道程序的并发执行
用户态 --> 内核态:中断是唯一的途径
用户态 <-- 核心态:使用程序状态字进行转换
中断的分类
- 内中断(异常)
自愿中断:指令中断
强迫中断:硬件故障、软件中断(除0中断)
内中断另一种分类
陷入
故障
终止
信号来源:CPU内部,与当前执行的指令有关
- 外中断(中断)
外设请求:I/O操作
人工干预:强行终止进程
信号来源:CPU外部,与当前执行的指令无关
外中断处理过程
在用户态依次执行指令,检查到外中断,保存环境并且CPU转入核心态处理,处理完毕后,CPU转为用户态恢复环境,执行继续执行。
系统调用
操作系统规定用户进程想要使用系统资源必须使用系统调用
- 分类
- 设备管理
- 文件管理
- 进程控制
- 进程通信
- 内存管理
执行过程
传递系统参数 --> 用户态 --> 核心态 -->返回用户程序
陷入指令在用户态执行,执行完毕后立即引发内中断,CPU进入核心态
发出系统调用请求在用户态,执行请求在核心态
陷入指令是唯一一个只能在用户态执行,不可再核心态执行的指令