性能之巅:洞悉系统、企业与云计算
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

3.1 术语

作为参考,下面是本书会用到的与操作系统相关的核心术语。

● 操作系统:这里指的是安装在系统上的软件和文件,使得系统可以启动和运行程序。操作系统包括内核、管理工具,以及系统库。

● 内核:内核是管理系统的程序,包括设备(硬件)、内存和CPU 调度。它运行在CPU的特权模式,允许直接访问硬件,称为内核态。

● 进程:是一个OS 的抽象概念,是用来执行程序的环境。程序通常运行在用户模式,通过系统调用或自陷来进入内核模式(例如,执行设备I/O)。

● 线程:可被调度的运行在CPU 上的可执行上下文。内核有多个线程,一个进程有一个或多个线程。

● 任务:一个Linux 的可运行实体,可以指一个进程(含有单个线程),或一个多线程的进程里的一个线程,或者内核线程。

● 内核空间:内核的内存地址空间。

● 用户空间:进程的内存地址空间。

● 用户空间:用户级别的程序和库(/usr/bin、/usr/lib……)。

● 上下文切换:内核程序切换CPU 让其在不同的地址空间上做操作(上下文)。

● 系统调用:一套定义明确的协议,为用户程序请求内核执行特权操作,包括设备I/O。

● 处理器:不要与进程混淆[1],处理器是包含有一颗或多颗CPU 的物理芯片。

● 自陷:信号发送到内核,请求执行一段系统程序(特权操作)。自陷类型包括系统调用、处理器异常,以及中断。

● 中断:由物理设备发送给内核的信号,通常是请求I/O 服务。中断是自陷的一种类型。

如果需要,关于本章,还有更多的术语以供参考,包括:地址空间、缓冲、CPU、文件描述符、POSIX,以及寄存器。