王道操作系统考研笔记——2.1.1 进程的定义、组成、组织方式和特征

如果这篇博客对您有用的话,可以给我点个赞吗,这对我很重要,谢谢!❤️

2.1.1 进程的定义、组成、组织方式和特征

知识总览

image-20220118104903265

2.1.1.1 进程的定义

在讲述进程之前,我们首先要了解一个概念:程序

程序实际上就是一个指令序列;早期的计算机那时候只支持单道程序,也就是说,在一个程序传入内存的时候,CPU供他使用,内存供他使用,I/O设备也供他使用。

image-20220118105356960

在这个阶段中,内存属于某一个程序。内存中存放的东西分为两类:一种是程序段,一种是数据段;程序段就是这个程序的代码,而程序里所包含的数据就处于数据段内(如变量、常量)。


引入多道程序技术后;同一时刻内内存中可以放入多道程序,各个程序中的代码、运算程序存放的位置不同。操作系统如果想要在内存中找到各程序的存放位置,那就需要引进进程的概念了。

为了方便操作系统管理,完成各程序并发执行,人们引入了进程、进程实体的概念。系统为每个运行的程序配置一个数据结构,称为进程控制块(PCB),用来描述进程的各种信息(如程序代码的存放位置)。


2.1.1.2 进程的定义

程序段、数据段、PCB三部分组成了进程实体(进程映像)。一般情况下,我们把进程实体就简称为进程;所谓创建进程,实质上就是创建进程实体中的PCB;而撤销进程,实质上就是撤销进程实体中的PCB。也就是说,PCB是进程存在的唯一标志。

从不同的角度,进程可以有不同的定义,比较传统典型的定义有:

  1. 进程是程序的一次执行过程。
  2. 进程是一个程序及其数据在处理机上顺序执行时所发生的活动
  3. 进程是具有独立功能的程序在数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。

三个定义无不在反映一件事:进程是动态的。

引入进程实体的概念后,我把可以把进程定义为:进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。严格来说,进程和进程实体并不一样,进程实体是静态的,而进程是动态的。除非题目专门考查二者区别,否则我们通常认为进程实体就是进程。因此我们也可以说“进程是由程序段、数据段、PCB三部分组成。”


2.1.1.3 进程的组成

从内存的视角来看,进程由如图所示的三部分组成:image-20220118111352974

从PCB的角度看,PCB由如图所示的结构构成:

image-20220118112104616

  • 进程标识符PID用于进程创建时,操作系统用区分不同的进程,其类似于身份证号。当进程被创建的时候,操作系统就会为该进程分配一个唯一的、不重复的ID。
  • 用户标识符UID用于标识进程所属的用户是谁。
  • 其余的东西后面会细讲这里不多说。
  • 处理器相关信息主要是指一些寄存器的值。当进程切换时,我们需要把进程当前的运行情况记录下来保存在PCB中,比如程序计数器的值表示了当前程序执行到哪一句。

从进程的组成来看:

image-20220118142739911

2.1.1.4 进程的组织

在一个系统中,通常有数十、数百乃至数千个PCB。为了对他们加以有效的管理,应当用适当的方式把这些PCB组织起来。

需要注意的是,进程的组成讨论的是一个进程内部由哪些部分构成的问题,而进程的组织讨论的是多个进程之间的组织方式问题。

从进程的组织方式来看,分为两类,分别如下:

image-20220118143119351


2.1.1.5 链接方式

链接方式的工作流程如下图,这里不过多赘述。image-20220118143353240


2.1.1.6 索引方式

索引方式的工作流程如下图,这里不过多赘述。

image-20220118143549001


2.1.1.7 进程的特征

进程和程序是两个截然不同的概念,相比于程序,进程拥有以下特征:

image-20220118143828025


2.1.1.8 小结

image-20220118144047663


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ArimaMisaki

如果知识有用请我喝杯咖啡

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值