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


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

image-20210916171758428

一、进程的定义

程序

程序:就是一个指令序列

​ 早期的计算机(只支持单道程序):内存中在同一时刻同一时间段内,只会存在一个程序相关数据,包括程序段数据段;CPU和I/O设备也被一个程序占有。程序的代码放在程序段内,程序运行过程处理的数据放在数据段内(如变量)


​ 引入多道程序后,内存中同时放入多道程序,各个程序的代码、运算数据存放的位置不同。操作系统要怎么才能找到各程序的存放位置呢?

​ 系统为每个运行的程序配置一个数据结构,称为进程控制块(PCB),用来描述进程的各种信息(如程序代码存放位置)

​ 为了方便操作系统管理,完成各程序并发执行,引入了进程、进程实体的概念

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

​ 注意:PCB是进程存在的唯一标志!

定义

​ 从不同的角度,进程可以有不同的定义,比较传统典型的定义有(强调“动态性”):

​ 1.进程是程序的一次执行过程

​ 2.进程是一个程序及其数据在处理机上顺序执行时所发生的活动

​ 3.进程是具有独立功能的程序在数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位

​ 引入进程实体的概念后,可把进程定义为:

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

​ 注:严格来说,进程实体和进程并不一样,进程实体是静态的,进程则是动态的。不过,除非题目专门考察二者区别,否则可以认为进程实体就是进程。因此我们也可以说“进程由程序段、数据段、PCB三部分组成”



二、进程的组成

​ 进程(进程实体)由程序段、数据段、PCB三部分组成。

​ PCB:操作系统通过PCB来管理进程,因此PCB中应该包含操作系统对其进行管理所需的各种信息。

​ 程序段:程序代码即存放在此

​ 数据段:程序运行时使用、产生的运算数据。如全局变量、局部变量、宏定义的常量就存放在数据段内

image-20210916174035317

image-20210916174122402



三、进程的组织

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

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

image-20210916174529605

image-20210916174623782

image-20210916174716552



四、进程的特征

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

image-20210916174834401

​ 动态性是进程最基本的特征

​ 进程是资源分配、接受调度的基本单位

​ 异步性会导致并发程序执行结果的不确定性。具体会在“进程同步”相关小节进行学习



image-20210916175626501


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM