进程的描述与控制

130 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第2天,点击查看活动详情

一、进程概念的引入

在我的理解中,进程是现代操作系统的核心概念之一。进程(Process)是指计算机中已运行的程序,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。

二、进程的特征及和程序的关系

进程具有很多特征,这也是进程在各方面的展现,进程的特征如下:

(1)进程具有动态性、并发性、独立性、异步性、结构性

动态性:进程的实质是程序在多道程序系统中的一次执行过程,进程是动态产生,动态消亡的。

并发性:任何进程都可以同其他进程一起并发执行

独立性:进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位;

异步性:由于进程间的相互制约,使进程具有执行的间断性,即进程按各自独立的、不可预知的速度向前推进

结构特征:进程由程序、数据和进程控制块三部分组成。

(2)进程和线程之间的关系

进程与线程是两个不同的概念,但两者也不是毫不相关的存在。

(1)进程的动态性和程序的静态性。 (2)进程的暂时性和程序的永久性。 (3)进程的并发性和程序的顺序性。 (5)进程与程序是密切相关的。

三、进程的状态及转换

进程作为一个动态的概念,从创建到撤销经历了一个生命周期,在这个生命周期中,进程并不是一直占用处理机处于运行状态,而是处于运行-等待的交替状态。

(1)进程的三种基本状态

运行状态、就绪状态、阻塞状态

(2)进程基本状态的转换

9899EDD9DCAA5CA3D1A2672BAA929EBF.jpg 在有些操作系统中,增加了两种基本状态:创建状态和退出状态,如下图所示:

EDD0C8BA6DB523015FA3CE24360FC052.jpg

四、进程通信

常用的进程高级通信方式有共享存储器系统、管道通信系统和消息传递系统三种类型。

(1)共享存储器系统:通信进程共享一个存储空间,通过对该空间进行读/写操作进程通信。

(2)管道通信系统:(pipe 文件、缓冲区),半双工。性质同IO 中的缓冲区。且运行多进程读写管道。数据一旦被读出立刻丢弃。

(3)消息传递系统:直接以格式化的数据“消息”为单位,通过“发送消息”&“接收消息”原语进行通信
消息传递有两种方式:1、直接通信:进程间直接传送消息;2、间接通信:进程中有“信息”中间实体(类似于网络中的电子邮箱系统的信箱)