操作系统功能

操作系统就是提供一个幻象(抽象),让你乐在其中。

抽象来源于现实,操作系统的抽象来源于计算机的硬件:CPU、内存、磁盘、外设、用户接口。

CPU –> 进程管理

内存 –> 内存管理

磁盘 –> 文件系统

外设 –> 驱动

接口 –> 系统调用

进程管理

进程让每个用户感觉到自己独占 CPU。进程就是为了在 CPU 上实现多道编程而出现的概念。

进程-CPU

进程状态:

进程的3个状态

内存管理

内存管理让用户感觉到内存容量增大、速度提升。实际上并不是那么回事,但用户感觉到是真的,这就是魔术,操作系统的角色之一就是魔术师。

文件系统

磁盘的抽象就是文件系统。文件系统本是个子虚乌有的东西,看不见、摸不着,但却可以使用。文件系统令磁盘变得容易使用,从而将用户从数据存取的细节中解放出来。程序员可以利用相同的系统调用 open、read、write …对不同介质上的不同文件系统进行读写操作。

驱动

应用程序员,对任何设备只需要 open、read、write、ioctl … 就可以了,无须关心外设的复杂操作时序。

用户接口

系统调用