概述
1.概念/定义
控制和管理整个计算机系统的硬件和软件资源,以提供给用户和其他软件方便的接口和环境。它是计算机系统中的最基本的系统软件。
功能:
处理机管理、存储器管理、文件管理、设备管理
向上层提供的易便服务:GUI(图形化用户接口)、联机命令接口(交互式命令接口)、脱机用户接口(批处理命令接口)、程序接口(系统调用/广义指令,只能通过程序代码间接使用)
2.特征
并发和共享互为存在形式
2.1并发
两个或多个时间在同一时间间隔内发生。宏观是同时,但微观是交替发生的。注意区别并行(同时发生的事件)
单核CPU统一时刻只能执行一个程序,各程序并发运行
多核CPU可以同时执行多个程序,多个程序可以并行执行
2.2共享
即资源共享。互斥共享:一个时间段内只允许一个进程访问;同时共享:允许一个时间段内由多个进程"同时"对它们进行访问
2.3虚拟
把物理上的实体变为若干个逻辑上的对应物。物理实体是实际存在的,而逻辑上对应物是用户感受到的
空分复用技术、时分复用技术(TDM)
2.4异步
在多道程序环境下,允许多个程序并发执行,由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进,这就是进程的异步性
3.发展与分类
1.手工操作阶段:纸带机
缺点:用户独占全机,人机速度矛盾导致资源利用率极低
2.批处理阶段–单道批处理系统:外围机。引用脱机输入/输出技术,并由监督程序负责控制作业的输入、输出
优点:暂时提高了CPU资源利用率
缺点:内存中只能有一道程序运行,CPU有大量的时间处于I/O等待时间
3.批处理阶段–多道批处理系统
优点:多道程序并发进行,共享计算机资源。资源利用率大幅提升
缺点:没有人机交互功能
4.分时操作系统:以时间片为单位轮流为各个用户/作业服务
优点:解决了人机交互问题
缺点:不能优先处理紧急任务
5.实时操作系统:根据优先级响应一个紧急任务。硬实时(绝对在规定时间按内完成)/软实时
6.网络操作系统
7.分布式操作系统
8.个人计算机系统
4.运行机制
4.1两种指令
指令:处理器(CPU)能识别、执行的基本命令
特权指令:内核程序所使用的意义重大的指令
非特权指令
4.2两种状态
内核态(管态):程序状态字寄存器(PSW),有个二进制位,1表示“内核态”;0表示"用户态",此时可以执行特权指令
用户态(目态):此时只能执行非特权指令
内核态&用户态转换:
内核态–>用户态:操作系统内核让出CPU之前会用一条特权指令将PSW的标志位设置为"用户态"
用户态–>内核态:由"中断引发",硬件自动完成转变过程,并中断后序应用程序操作。
5.中断&异常
中断的作用:让操作系统内核强行夺回CPU使用权
内中断(异常):与当前执行的指令有关,中断信号源于CPU内部。特权指令、陷入指令等;三种方式:陷入、故障、终止
外中断(中断):与当前执行的指令无关,中断信号源于CPU外部。时钟中断、I/O中断
中断机制:不同的中断,需要用不同的中断处理程序来处理。“中断向量表”
6.系统调用
一些功能:设备管理、文件管理、进程控制、进程通信、内存管理
过程:程序(用户态)—>陷入指令---->内核态—>处理请求------>转为用户态继续执行程序
7.体系结构
1.大内核/单内核:包含时钟管理、中断处理、原语、进程管理、存储器管理、设备管理等功能的内核
缺点:内核代码大、结构混乱、难以维护
2.微内核:仅包含时钟管理、中断处理、原语等主要与底层紧密相连功能的内核
缺点:性能低、需要频繁切换用户态与内核态