第4章 抽象:进程
第4章 抽象:进程 操作系统的最基本抽象:进程。它很简单地被视为一个正在运行的程序。 操作系统通过虚拟化(virtualizing)CPU 来提供几乎有无数个 CPU 可用的假象。通过让一个进程只运行一个 时间片,然后切换到其他进程,操作系统提供了存在多个虚拟 CPU 的假象。这就是时分共享(time sharing)CPU 技术,允许用户如愿运行多个并发进程。 上下文切换(context switch) ,让操作系统能够停止运行一个程序,并开始在给定的 CPU 上运行另一个程序。所有现代操作系统都采用了这种分时机制。 抽象:进程 操作系统为正在运行的程序提供的抽象,就是所谓的 进程(process) 。 进程的 机器状态(machine state) :程序在运行时可以读取或更新的内容。 进程的机器状态组成: 内存:指令存在内存中。正在运行的程序读取和写入的数据也在内存中 寄存器:许多指令明确地读取或更新寄存器。它们对于执行该进程很重要。 一些非常特殊的寄存器: 程序计数器(Program Counter,PC) (有时称为指令指针,Instruction Pointer 或 IP):告诉我们程序当前正在执行哪个指令; 栈指针(stack pointer) 和相关的 帧指针(frame pointer) :用于管理函数参数栈、局部变量和返回地址。 进程API 创建(create)