操作系统的四个基本特征

现代操作系统在多个程序共同使用有限资源的环境中运行,由此形成并发、共享、虚拟和异步四个基本特征。其中,并发和共享是另外两个特征存在的基础。操作系统的定位、资源管理和用户接口见 OS-Overview

并发

并发是指两个或多个事件在同一时间间隔内发生。宏观上看它们同时进行,微观上可能交替执行。

并行是指两个或多个事件在同一时刻同时发生。

概念 关键点
并发 同一时间段内都在推进,单核 CPU 上也能出现
并行 同一时刻真正同时执行,通常需要多核或多个处理单元

单核 CPU 同一时刻只能执行一个程序,但可以通过快速切换让多个程序并发运行。多核 CPU 可以让多个程序并行执行,但只要运行程序数超过核心数,仍然需要并发调度。

操作系统与程序并发几乎是一起出现的。没有并发,现代操作系统的大部分资源管理问题都不会出现。

共享

共享是指系统中的资源可供多个并发执行的进程共同使用。

共享方式有两类:

方式 含义 例子
互斥共享 一个时间段内只允许一个进程访问 摄像头、普通打印机
同时共享 宏观上多个进程可同时访问 多个进程交替读写磁盘

并发和共享互为存在条件。没有并发,系统中只有一个程序运行,共享失去意义;没有共享,多个进程无法共同使用资源,并发也难以展开。

虚拟

虚拟是把一个物理实体变成若干逻辑上的对应物。物理实体是真实存在的,逻辑对应物是用户感受到的。

虚拟对象 技术 用户感受
内存 虚拟存储器 每个进程仿佛拥有独立、连续、较大的地址空间
CPU 虚拟处理器 多个进程仿佛都在同时运行
设备 SPOOLing 等 独占设备可表现为逻辑共享设备

虚拟离不开并发。若系统中始终只运行一个程序,就没有必要把一个 CPU 虚拟成多个处理器,也没有必要让多个进程共享一个逻辑上的大地址空间。

异步

异步是指在多道程序环境下,进程并不是从头到尾一贯到底地运行,而是因为等待资源、I/O、调度等原因走走停停,以不可预知的速度向前推进。

异步性来自并发和资源限制。多个进程争用有限资源时,谁先获得 CPU、谁先完成 I/O、谁先被唤醒,都可能随系统状态变化。

特征之间的关系

特征 关系
并发 最基本特征之一,带来调度、同步、互斥等问题
共享 最基本特征之一,要求操作系统统一管理资源
虚拟 以并发和共享为基础,把物理资源抽象成逻辑资源
异步 并发程序争用资源后产生的执行不确定性

并发和共享是操作系统最基本的两个特征。没有并发和共享,就谈不上虚拟和异步。