不积跬步无以至千里
知识总览
一、进程的概念
程序:是静态的,就是个存放在磁盘里的可执行文件,就是一系列的指令集合。
进程(Process) :是动态的,是程序的一次执行过程。
同一个程序多次执行会对应多个进程,如下图的QQ。
思考:操作系统是这些进程的管理者,它要怎么区分各个进程?
当进程被创建时,操作系统会为该进程分配一个唯一的、不重复的“身份证号”——PID (Process ID,进程ID)
二、进程的组成
下面是Linux内核源码中的定义的PCB
更确切的说,应该是“进程实体(进程映像)的组成”
PCB是给操作系统用的。
程序段、数据段是给进程自己用的,与进程自身的运行逻辑有关。
程序是如何运行的?
程序经过编译等一系列步骤,最终会形成一个可执行文件(Windows电脑中就是*.exe文件),平时存放在硬盘当中。
可执行文件中存放的就是一系列可执行的指令序列。进程实体是进程某一时刻的表现。
引入进程实体的概念后,可把进程定义为:
进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。一个进程被“调度”,就是指操作系统决定让这个进程上CPU运行
JOY课堂
同时挂三个QQ会发生什么?
同时挂三个QQ号,会对应三个QQ进程,它们的PCB、数据段各不相同,但程序段的内容都是相同的(都是运行着相同的QQ程序)
三、进程的特征
知识回顾与重要考点
在引入了线程之后 ,进程就不再是接受调度的基本单位了,但进程依然是获得资源的基本单位。
都看到这啦!点个赞吧!鼓励一下!