进程

五十岚2021年6月16日
大约 3 分钟

操作系统进程相关

首先讨论进程前先要弄清 并行并发 两个概念

1. 并行与并发

1.1 并行

  • 当计算资源有多个 CPU 时,或一个 CPU 有多核多线程时,每一个 CPU 的线程在同一时刻,都能执行一个进程
  • 两个 CPU 线程同一时刻,可以 同时执行 两个不同的进程,且不会相互抢夺资源,这种方式即为并行
  • 并行不一定并发,也有同步&异步,并行也会阻塞,但异步往往可以提高效率

1.2 并发

  • 若只用单 CPU、单核、单线程当做计算资源时,虽然 CPU 的线程在 同一时刻 时只能调度一个进程,但在 一段时间 内,却能执行不同的 进程 / 线程
  • 并发通常使用 切片轮询 的执行方式,快速交替执行,来 伪造 出多个进程同时执行的效果
  • 并行只在多处理器资源中存在,而并发在各种处理系统中存在

2. 什么是进程

进程(Process): 狭义理解,是 OS 即操作系统资源分配的

2.1 进程相关的基本概念

  1. 程序:是指令的集合,不能单独运行,要装载到内存中(分配内存),并需要系统为它分配资源(分配执行环境)

  2. 进程:具有独立功能的程序,关于某个数据集合上的,一次执行程序的活动(动态概念)。是系统进行资源管理分配调度的独立单位 这种可被执行的程序,称为进程

    = 程序数据PCB
    • 程序:描述了进程所要完成的功能(静态描述文本

      理解为代码、做菜的菜谱、说明书...... 而进程就是执行代码的过程、做菜的过程、按照说明书操作的过程...

    • 数据:是程序在执行时所需要的数据和工作区,这两部分是进程存在的物质基础。
    • PCB:是最重要的,创建进程实际上是指创建进程实体中的进程控制块,而撤销进程也是指将这个进程实体中的进程控制块撤消掉。
  3. 多道编程:允许多个程序同时加载到内存中,在操作系统的调度下,可以实现并发地执行。这是这样的设计,大大提高了 CPU 的利用率。

3 进程的基本状态与转换

3.1 进程的三种基本状态

  • 就绪态

    程序已达到可以运行的状态,只等 CPU 分配资源就可以运行的状态

  • 阻塞态

    程序运行条件没有满足,需要等待条件满足才能执行的状态。如 等待IO操作 时候

  • 运行态

进程已抢占到 CPU,并且正在 CPU 上运行时的状态

3.2 三种基本状态的转换

进程的三种基本状态及其转换,如下:

<img src="">

上次编辑于: 2023/3/30 14:23:22