1 进程的基本概念
程序执行过程
- 进程的执行方式
(1)顺序执行
(2)并发执行 - 并发执行提高了系统资源的利用率和系统作业吞吐量,同时也给程序执行带来了许多新问题。
1.1 程序执行过程
- 前驱图:描述程序(或进程)之间先后执行顺序的有向无环图。
- 顺序执行及其特征
程序顺序执行具有如下特征。
(1)顺序性。处理机的操作严格按照程序所规定的顺序执行,每一操作必须在上一操作结束之后才能开始。
(2)封闭性。程序在封闭环境下运行,独占系统所有资源,包括处理器、内存、I/O设备等,这些资源的状态(除初始状态外)只有该程序才能改变。程序一旦开始运行,其执行结果不受其它程序和外界因素影响。
(3)可再现性。只要程序执行时的初始条件和执行环境相同,程序重复执行时获得完全相同结果。 - 并发执行及其特征
并发执行的多个程序之间存在各种制约关系,产生了如下的新特征。
(1)间断性。程序在执行过程中,由于等待资源或与其它程序协作完成任务,每个程序的执行过程往往不是“一气呵成”,而是呈现出“执行-暂停-执行”的间断性活动规律。
(2)失去封闭性。程序并发执行时,多个程序共享系统资源,系统资源的状态将由多个程序改变。一个程序在运行时,其运行环境会受其它程序的影响,失去了顺序执行的封闭性。
(3)不可再现性。程序并发执行时,由于失去了封闭性,导致其失去可再现性。即使初始条件相同,程序多次执行的结果也可能不同。
(4)相互作用和制约性。并发执行程序既有相互独立的一面,表现为每个程序为用户提供特定的功能,它们之间相互独立;也有时也会直接或间接制约的一面。
1.2 进程的定义和特征
- 为何引入进程
清晰刻画系统的内在活动规律,有效调度和管理进入内存的程序。
从程序并发执行角度和系统资源共享角度分析一下引入进程的必要性。
(1)程序并发执行角度
(2)系统资源共享角度 - 进程的定义
进程是一个可并发执行的具有独立功能的程序在某个数据集合的一次执行过程,它也是操作系统进行资源分配和保护的基本单位。
为了更好的描述和管理并发执行的多个进程,操作系统中为每个进程配置了一个进程控制块PCB(Process Control Block)。 - 进程的构成
- 进程的上下文
进程的物理实体和支持进程运行的环境合称为进程上下文(Process Context)