# 2. 操作系统的四个特征

![](/files/-MEqWa-9urm6IblX5CQe)

## 1. 并发

**并发：**&#x6307;两个或多个事件在同一时间间隔内发生。这些事件**宏观上是同时发生**的，但**微观上是交替发生**的

**并行：**&#x6307;两个或多个事件在同一时刻内发生

**操作系统中的并发性：**&#x6307;计算机系统中 “同时” 运行着多个程序，这些程序宏观上看是同时运行的，而微观上是交替运行的。**操作系统和程序并发是一起诞生的，因此并发性是操作系统一个最基本的特性。**

> 单核 CPU 同一时刻只能执行一个程序，各个程序只能并发地执行
>
> 多核 CPU 同一时刻可以同时执行多个程序，多个程序可以并行地执行

## 2. 共享

**共享**即资源共享，是指系统中的资源可供内存中多个并发执行的进程共同使用

**资源共享的两种方式：**

1. **互斥共享方式：**&#x7CFB;统中的某些资源，虽然可以提供给多个进程使用，但一个时间段内只允许一个进程访问该资源
2. **同时共享方式：**&#x7CFB;统中的某些资源，允许一个时间段内由多个进程 “同时” 对它们进行访问

## 3. 虚拟

**虚拟**是指把一个物理上的实体变为若干个逻辑上的对应物。物理实体（前者）是实际存在的，而逻辑上对应物（后者）是用户感受到的

例一：一个 4 GB 内存的电脑，却可以运行远大于 4 GB 内存的程序（**虚拟存储技术 —— 空分复用技术**）

例二：一个单核的计算机，却可以同时运行多个程序（**虚拟处理器技术 —— 时分复用技术**）

## 4. 异步

**异步**是指在多道程序环境下，允许多个程序并发执行，但由于资源有限，进程执行并不是一管到底的，而是走走停停，以不可预知的速度向前推进

## 5. 关系

**并发性**指计算机系统中同时存在着多个运行着的程序

**共享性**指系统中的资源可供内存中多个并发执行的进程共同使用

> 如果失去并发性，则系统中只有一个程序正在运行，则共享性失去了存在的意义
>
> 如果失去共享性，则多个程序不能同时访问硬件资源，就无法实现同时发送文件等功能，也就无法并发
>
> 如果失去了并发性，则一个时间段内系统只需要运行一道程序，那么就失去了实现虚拟性的意义。因此，**没有并发性，就谈不上虚拟性**。
>
> 如果失去了并发性，即系统只能串行地运行各个程序，那么每个程序的执行会一贯到底。**只有系统拥有并发性，才有可能导致异步性**。
>
> **并发性 & 共享性 => 互为存在条件**
>
> **没有并发性和共享性，就谈不上虚拟和异步，因此并发和异步是操作系统最基本的两个特征**


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://lfool.gitbook.io/operating-system/untitled-1/2.-cao-zuo-xi-tong-de-si-ge-te-zheng.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
