前序

  1. 进程概念的提出:多道程序技术的采用,多个程序同时装入内存中
  2. 概念:内存中,作为资源分布和独立运行的基本单位

前趋图

  1. 描述程序执行的顺序,是一个有向无循环图(DAG,Directed Acyclic Graph)
  2. 以下前趋图可以表示为 P = {p1,p2,p3,p4,p5} = {(p1,p3),(p2,p4),(p4,p5),(p3,p5)}
    os -- 进程的描述

Note

简而言之,前趋图就是一个顺序图而已,但是要保证有向无循环的特征


执行顺序

顺序执行

  1. 单道批处理系统
  2. 特征
    • 顺序性:只能按照一定的顺序执行
    • 封闭性:一个程序独占所有资源
    • 可再现性:只要条件允许,程序反复执行,结果都一致

并发执行

  1. 多道程序技术
  2. 特征
    • 间断性
    • 无封闭性
    • 不可再现性

进程的描述

程序进程块

  1. 程序进程快(PCB,Process Control Block):是一个配置的数据结构,用于控制和管理进程
  2. 进程实体(简称进程)= 程序段+相关数据段+PCB

进程的定义

进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位

进程的特征

  1. 动态性:进程是一次执行过程
  2. 并发性
  3. 独立性
  4. 异步性

Note:进程的特征可以看成是与程序的区别,程序是静态的,没有建立 PCB 的程序不能说是独立性,也就不能参与并发执行

三种基本状态和两种常用状态

基本状态
  1. 就绪(Ready)状态 : 只差获得 CPU,进入就绪队列排队
  2. 执行(Running)状态 : 获得 CPU 并执行
  3. 阻塞(Block)状态 :执行时因某些原因而暂停,进入阻塞队列排队
两种常用状态
  1. 创建状态 : 申请空白 PCB 并填写相关信息 –> 分配资源 –> 转入就绪状态
  2. 终止状态 :清零 PCB,返回其空间
五种状态之间的关系图

os -- 进程的描述

两种操作

  1. 挂起操作
  2. **操作

Note:这两种操作是相反的,挂起相当于进入阻塞状态,**相当于取消阻塞状态


进程管理中的数据结构

管理控制的数据结构

  1. 在 os 中,用数据结构来表征每个资源和进程的实体,便于管理
  2. os 管理的这些数据结构一般分为:内存表,设备表,文件表和进程表
  3. 其中,进程表就是我们上面所说到的进程控制块 PCB,实打实的大佬

PCB 的作用

  1. 作为独立运行基本单位的标志 – 是进程存在的唯一标识
  2. 提供进程管理所需要的信息
  3. 能实现间断性的运行方式
  4. 实现与其他进程的同步和通信

PCB 中的信息

os -- 进程的描述


PCB 的控制方式

线性方式

  1. 将所有的 PCB 都组织在一张线性表中,虽实现简单,开销小,但是每次查找需要遍历整张表,只适合进程数目不多的系统
    os -- 进程的描述

链接方式

  1. 将具有相同状态进程的 PCB 分别通过 PCB 中的链接字接成一个队列,形成若干个就绪队列,阻塞队列等,并根据优先级、阻塞原因等要素排好队
    os -- 进程的描述

索引方式

  1. 系统根据所有进程状态的不同,建立索引表,每个索引表记录具有相应状态的某个 PCB 在 PCB 表中的地址
    os -- 进程的描述

总结

  1. 前趋图表示程序执行的顺序
  2. 进程的特征是区别进程和程序的一个工具
  3. 进程有三种基本状态、两种常见状态,两种操作
  4. 程序块(PCB)是进程中重要的数据结构
  5. 了解 PCB 的作用,信息以及组织方式

相关文章:

  • 2021-07-25
  • 2021-09-25
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-09-23
  • 2021-07-08
  • 2021-06-30
  • 2021-12-28
  • 2021-12-05
相关资源
相似解决方案