操作系统-02-进程管理

操作系统-02-进程管理

1. 进程的定义

  1. 程序

mark

  1. 进程

mark

  • 进程和程序的区别和联系:

区别:
(1) 进程是动态的;程序是静态的。
(2) 进程有独立性,能并发执行;程序不能并发执行。
(3) 二者无一一对应关系。
(4) 进程异步运行,会相互制约;程序不具备此特征。
但是,进程与程序又有密切的联系: 进程不能脱离具体程序而虚设, 程序规定了相应进程所要完成的动作。
(5) 组成不同。进程包含PCB、程序段、数据段。程序包含数据和指令代码。
(6) 程序是一个包含了所有指令和数据的静态实体。本身除占用磁盘的存储空间外,并不占用系统如CPU、内存等运行资源。
(7) 进程由程序段、数据段和PCB构成,会占用系统如CPU、内存等运行资源。
(8) 一个程序可以启动多个进程来共同完成。
联系:进程不能脱离具体程序而虚设, 程序规定了相应进程所要完成的动作。

进程定义

  • 程序段、数据段、PCB三部分组成了进程实体(进程映像) 。
    • 一般情况下,我们把进程实体就简称为进程,
    • 例如,所谓创建进程,实质上是创建进程实体中的PCB;
    • 而撤销进程,实质上是撤销进程实体中的PCB.
    • 注意: PCB是进程存在的唯一标志!从不同的角度,进程可以有不同的定义,比较传统典型的定义有:
      • 1,进程是程序的一次执行过程。
      • 2,进程是一个程序及其数据在处理机上顺序执行时所发生的活动。
      • 3,进程是具有独立功能的程序在数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位(强调“动态性”)
      • 引入进程实体的概念后,可把进程定义为:进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。

2. 进程的组成

mark

  • 程序段
    存放程序代码本身

  • 数据段
    存放程序运行过程中处理的各种数据

  • PCB

    进程管理所需的数据都放在这里
    ​PCB是进程存在的唯一标志

    • 进程描述信息

      • 进程标识符 PID

      • 用户标识符 UID

      • 父进程 PID

      • 子进程 PID

    • 进程控制和管理信息

      • 进程优先级

      • 进程当前状态

      • 进程阻塞原因

      • 进程同步和通信机制

      • 其它调度所需的信息

    • 资源分配清单

      • 程序段指针

      • 数据段指针

      • 外设资源

    • 处理器现场信息

      • 各种寄存器的值
        进程切换时需要把当前进程的运行状态保存在PCB里面
        比如程序计数器的值记录了当前程序执行到那一句了,通用寄存器,程序状态字寄存器,栈指针等等

mark

注意

  • 而其中最重要的就是进程控制块PCB(Process Control Block)
  • 在进程的整个生命期中,系统总是通过PCB对进程进行控制的,即系统是根据进程的PCB而不是任何别的什么而感知到该进程的存在的。
  • 所以说,PCB是进程存在的唯一标志。

3. 进程的组织方式

3.1 链接方式

  • 按照进程状态将PCB分为多个队列
  • 操作系统持有指向个个队列的指针

mark

3.2 索引方式

  • 根据进程状态不同,建立几张索引表
  • 操作系统持有指向各索引表的指针

mark

4. 进程的特征

  • 动态性
    最基本特征。进程是程序的一次执行过程,是动态地产生、变化和消亡的
  • 并发性
    内存中有多个进程实体,各进程可以并行执行
  • 独立性
    进程是能独立运行、获得资源、接受调度的基本单位
  • 异步性
    各进程按各自独立的、不可预测的速度向前推进,异步性会导致并发程序执行结果的不确定性,操作系统要提供“进程同步机制”来解决异步问题
  • 结构性
    每一个进程都会配置PCB

参考书籍:《王道考研计算机操作系统》

参考博客https://mubu.com/doc/Cd-Y4YOfkh#

https://blog.csdn.net/weixin_43914604/article/details/104415990

打赏
  • 版权声明: 本博客所有文章除特别声明外,均采用 Apache License 2.0 许可协议。转载请注明出处!
  • © 2019-2022 Zhuuu
  • PV: UV:

请我喝杯咖啡吧~

支付宝
微信