跳到内容

操作系统

书信薛
发布日期:

一、什么是操作系统

操作系统(Operating System)是计算机系统中最基础、最核心的软件。站在不同角度,它扮演着三种不同的角色:

(1)系统资源的管理者

操作系统管理着计算机的所有资源,既包括硬件资源(CPU、内存、硬盘、网卡等),也包括软件资源(文件、进程、程序等)。它像一个中央调度中心,决定谁用什么资源、用多久、什么时候释放。如果没有操作系统统一管理,各个程序各自为政,整个系统很快就会混乱崩溃。

(2)用户和软件的接口与环境

操作系统为上层提供了方便的交互方式。对于普通用户来说,我们通过图形界面、命令行、触摸屏等方式和计算机交互;对于应用程序来说,操作系统提供了一系列标准化的系统调用和 API,让程序不用关心底层硬件的细节就能完成各种操作。这种标准化极大地降低了软件开发的复杂度。

(3)最接近硬件的一层软件

在计算机的层次结构中,操作系统处于硬件之上、应用程序之下。它是唯一可以直接和硬件对话的软件层——它知道怎么读写硬盘上的某个扇区,知道怎么控制 CPU 切换任务,知道怎么驱动网卡发送数据包。而其它的所有应用程序,都必须通过操作系统才能间接地操作硬件。


二、操作系统提供的功能

操作系统主要提供四大核心功能:

这四大功能分工明确、互相配合,共同组成了操作系统的核心能力。


三、操作系统的封装思想

操作系统最精妙的设计思想之一就是封装

封装的意思是:操作系统把底层的硬件复杂性隐藏起来,只暴露出简单易用的服务接口。用户和应用程序只需要向操作系统发出指令,完全不需要关心硬件是怎么工作的。

举个例子:你保存一个文件,只需要在编辑器中点一下”保存”按钮。但在这背后,操作系统做了大量的工作——把数据写入内存缓冲区、寻址到硬盘的正确位置、控制磁头移动到对应扇区、把数据逐位写入磁性介质、验证写入的正确性……这些复杂的步骤全被 OS 封装在了 write() 这一个系统调用里面。

这种封装思想不仅让普通用户可以轻松使用计算机,也让程序员可以专注于实现业务逻辑,而不需要反复造底层硬件的轮子。它是整个计算机科学中分层设计和抽象思维的完美体现。

Next
我的第一个博客