操作系统概述
操作系统概述
操作系统的概念:
- 负责管理协调硬件、软件等计算机资源的工作
- 为上层用户、应用程序提供服务
- 是一种系统软件
根据概念操作系统需要提供的相应的功能。
作为系统资源的管理者:处理机管理、存储器管理、文件管理、设备管理。
处理机:计算机系统中存储程序和数据,并按照程序规定的步骤执行指令的部件。
作为用户和计算机硬件之间的接口:命令接口、程序接口、GUI(图形界面)。
- 命令接口用户直接调用,分为联机命令接口(说一做一)和脱机命令接口(批处理)
- 程序接口又被称为系统调用、广义指令,用户通过程序间接使用
基本特征
操作系统基本特征有四个,并发、共享、虚拟、异步,而并发和共享是最基本的特征,它们互为存在条件,而如果没有并发也就没有虚拟和异步技术。
1. 并发
操作系统的并发性是指计算机系统中同时存在着多个运行着的程序,通过引入进程和线程保证并发性。
并发指两个或多个事件在同一时间间隔内(一段时间内)同时运行多个程序,宏观上是同时发生,而微观上是交替发生。
并行则指同一时刻能运行多个指令或程序。
注: 并发需要硬件的支持,如多核处理器。
2. 共享
共享就是资源共享,指系统中的资源可供内存中多个并发执行的进程共同使用,分为两种共享方式:互斥共享、同时共享。
互斥共享: 同一时间只允许一个进程访问,需要同步机制保证。
同时共享: 允许一个时间段中多个进程”同时“(并发)进行访问。
3. 虚拟
虚拟是指吧一个物理实体转换为多个逻辑实体。物理实体是实际存在的,而逻辑实体是用户感受到的。
虚拟技术主要有两种:
空分复用技术: 如虚拟存储技术
时分复用技术: 如虚拟处理器,即每个进程轮流占用处理器,每次执行一小个时间片并进行轮转。
4. 异步
多道程序环境下,允许多个程序并发执行,但资源有限,所以进程不是一次性执行完毕的,而是走走停停,以不可知的速度向前推进。
操作系统的发展
图片来源王道操作系统
操作系统运行机制和体系结构
运行机制
两种指令:
- 特权指令(不允许用户程序使用)
- 非特权指令
根据两种指令的分为两种处理器状态:
- 用户态:只能执行非特权指令
- 核心态:能执行特权指令、非特权指令
根据程序运行在的处理器状态分为两种程序:
- 内核程序
- 应用程序
体系结构
操作系统内核
内核是指计算机上配置的底层软件,是操作系统最基本、最核心的部分。
图片来源王道操作系统
不同操作系统对内核功能的划分是不一样的,大致可以分为两种:
-
大内核: 将操作系统的主要功能魔抗都作为系统内核,运行在核心态。
性能高,但难维护。 -
微内核: 只把基本的功能保留在内核,移出的功能划分成若干的服务。
结构清晰易维护,需要频繁切换处理器状态所以有性能损失。
图片来源王道操作系统
中断和异常
操作系统发生中断,就说明需要操作系统介入操作。由于操作系统的管理工作需要使用特权指令,所以处理器就会由用户态转为核心态。由此可见,中断机制可以保证多道程序的并发执行。
处理器是如何转换状态的?
用户态->核心态:中断机制(唯一途径)
核心态->用户态:通过特权指令改变程序状态字的标志位
中断的分为两类:
1. 外中断
由 CPU 指令以外的事件引起,如 I/O 操作完成发出的中断信号(外设),或用户强行终止一个进程发生的中断。
2. 内中断
内中断是发生在内部的中断,可以分为:
-
异常: 应用程序意想不到的行为,如地址越界、除零等操作。
处理:杀死或重新执行发生处的 - 陷入 有意为之的操作,如系统调用
系统调用
一个进程在用户态需要使用内核态的功能,就会进行系统调用从而陷入内核,由操作系用代为完成。