进程的概念、组成、特征

进程的概念、组成、特征

一、进程的概念(理解 "进程" 和 "程序" 的区别)

进程是程序的一次执行过程,是操作系统进行资源分配和调度的基本单位。

程序是静态的指令集合(如存储在硬盘上的可执行文件),而进程是动态的实例,包含程序运行时的状态和资源。例如:同时打开多个记事本程序,每个实例都是一个独立的进程。

程序:是静态的,就是个存放在磁盘里的可执行文件,就是一系列的指令集合。

进程(Process):是动态的,是程序的一次执行过程。(同一个程序多次执行会对应多个进程)

二、进程的组成(一个进程由哪些部分组成)

进程由三部分构成:

进程控制块(PCB, Process Control Block)

当进程被创建时,操作系统会为该进程分配一个唯一的、不重复的“身份证号”一一PID(Process ID,进程ID)

资源信息:内存分配、打开文件列表、I/O设备占用等。控制信息:程序计数器(PC)、寄存器值、调度优先级等。状态信息:运行态、就绪态、阻塞态等。标识信息:进程ID(PID)、用户ID等。

程序段(Text Segment)

存储可执行机器指令(即程序的代码部分)具有只读属性,多个进程可共享同一代码段(如多进程运行同一程序)

数据段(Data Segment)

全局数据区:存储全局变量和静态变量堆(Heap):动态分配内存区域(通过malloc/new申请)栈(Stack):函数调用时的临时数据存储(局部变量、参数、返回地址)环境变量区:存储进程运行环境参数

程序段、数据段、PCB三部分组成了进程实体(进程映像)引入进程实体的概念后,可把进程定义为:

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

注:PCB是进程存在的唯一标志。

三、进程的特征(进程有哪些重要特征)

动态性

进程具有生命周期(创建、运行、终止),其状态随时间变化。

并发性

多个进程可同时存在于内存中,通过时间片轮转等方式交替执行(宏观并行,微观串行)。

独立性

每个进程拥有独立的地址空间和资源,互不干扰(需通过进程间通信机制共享数据)。

异步性

进程执行速度不可预知,可能因中断或调度而暂停/恢复。

结构性

由PCB、程序段、数据段组成,结构清晰,便于操作系统管理。

总结:

补充说明

进程与线程的区别:线程是进程内的执行单元,共享进程资源,切换开销更小。进程状态转换:包括新建(New)、就绪(Ready)、运行(Running)、阻塞(Blocked)、终止(Terminated)等状态。程序是怎样运行的?(见下图)

相关推荐