首页 > 技术文章 > 进程概念

ajaxa 2018-05-25 18:49 原文

进程:本质上就是一段程序的运行过程(进程本身是一个抽象的概念)

      假如有两个程序A和B,程序A在执行到一半的过程中,需要读取大量的数据输入(I/O操作),而此时CPU只能静静地等待任务A读取完数据才能继续执行,这样就白白浪费了CPU资源。是不是在程序A读取数据的过程中,让程序B去执行,当程序A读取完数据之后,让程序B暂停,然后让程序A继续执行?当然没问题,但这里有一个关键词:切换既然是切换,那么这就涉及到了状态的保存,状态的恢复,加上程序A与程序B所需要的系统资源(内存,硬盘,键盘等等)是不一样的。自然而然的就需要有一个东西去记录程序A和程序B别需要什么资源,怎样去识别程序A和程序B等等,所以就有了一个叫进程的抽象

 

进程定义:

  进程就是一个程序在一个数据集上的一次动态执行过程;

  进程一般是有程序,数据集,进程控制块三部分组成;

  数据集则是程序在执行过程中所需要使用的资源;

  进程控制块,是操作系统核心中一种数据结构,主要表示进程状态(状态怎么保存,状态怎么恢复,状态怎么记录)

推荐阅读