# 1. 操作系统概论 & 功能

![](/files/-MEmvEbNmxTtXbjtqSfx)

## 1. 操作系统概论 & 定义

![计算机系统的层次结构](/files/-MEmeGB-vOPqWI3AzUrL)

**操作系统**（Operating System，OS）是指控制和**管理**整个计算机系统的**硬件和软件**资源，并合理地组织调度计算机的工作和资源分配；以**提供给用户和其他软件方便的接口和环境**；它是计算机系统中最基本的**系统软件**。

1. 操作系统是系统资源的管理者
2. 向上层提供方便易用的服务
3. 是最接近硬件的一层软件

## 2. 操作系统功能 & 目标

### 1. 作为系统资源的管理者

补充知识：执行一个程序前**需要将该程序放到内存中**，才能被 CPU 处理

使用 QQ 和朋友视频聊天的过程：

1. 找到 QQ 的安装位置 —— 逐层打开文件夹，找到 QQ.exe 这个程序的存放位&#x7F6E;**（文件管理）**
2. 双击打开 QQ.exe —— 需要把该程序相关数据放入内&#x5B58;**（存储器管理）**
3. QQ 程序正常运行 —— 对应的进程被处理机 CPU 处&#x7406;**（处理机管理）**
4. 开始和朋友视频聊天 —— 需要将摄像头设备分配给进&#x7A0B;**（设备管理）**

通过上述例子，我们可知操作系统作为系统资源的管理者，提供了**文件管理**、**存储器管理**、**处理机管理**、**设备管理**四个功能。

### 2. 向上层提供方便易用的服务

对于硬件来说，只听得懂二进制指令，用户很难直接操作硬件，所以操作系统进行了一定的封装，仅仅暴露出简单易用的接口。

封装思想：操作系统把一些难以直接操作的硬件功能封装成简单易用的服务，使用户能更方便地使用计算机，用户无需关心底层硬件的原理，只需要对操作系统发出命令即可。

![](/files/-MEmsnf6ia7HU28Dyxgt)

![](/files/-MEmtEId9OVfeIQTjdlH)

### 3. 作为最接近硬件的层次

需要实现**对硬件机器的拓展**

没有任何软件支持的计算机成为**裸机**。在裸机上安装的操作系统，可以提供资源管理功能和方便用户的服务功能，将裸机改造成功能更强、使用更方便的机器

通常把覆盖了软件的机器成为**扩充机器**，又称之为**虚拟机**

类比汽车：&#x20;

* 发动机 —— 只会转；轮胎 —— 只会滚&#x20;
* 在原始的硬件机器上覆盖一层传动系统 —— 让发动机带着轮子转 —— 使原始的硬件机器得到拓展

操作系统对硬件机器的拓展：将CPU、内存、磁盘、显示器、键盘等硬件合理地组织起来，让各种硬件能够相互协调配合，实现更多更复杂的功能

普通用户无需关心这些硬件在底层是怎么组织起来工作的，只需直接使用操作系统提供的接口即可


---

# 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/1.-cao-zuo-xi-tong-gai-lun-gong-neng.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.
