一、进程的定义:
进程的引入:操作系统引入进程的目的是为了使多个程序能并发执行,以提高资源利用率和系统吞吐量
关于进程从不同角度有不同的定义:
1、进程是程序的一次执行
2、进程是一个程序及其数据在处理机上顺序执行时所发生的活动
3、进程是具有独立功能的程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位
二、进程控制块(PCB)
系统用PCB来描述进程的基本情况和活动过程,从而控制和管理进程。由程序段、相关数据段和PCB三部分构成进程的实体,一般简称为进程。所谓创建进程就是创建进程实体中的PCB,而撤销进程也就是撤销进程的PCB
PCB包含信息:1、进程状态(state);2、进程标识信息(uid、gid);3、定时器(time);4、用户可见寄存器、控制状态寄存器、栈指针等(tss)
每个进程都有一个唯一的ID,即PID,非负数。PID为0的是调度进程,该进程是内核的一部分,也称为系统进程;PID为1的进程为init进程,它是一个普通的用户进程,但是以超级用户特权运行;PID为2的进程是页守护进程,负责支持虚拟存储系统的分页操作。
三、进程的特征
进程和程序是两个截然不同的概念,除了进程具有程序所没有的PCB结构外,还有下面一些特征:
1、动态性:进程的实质进程实体的执行过程,因此动态性是进程最基本的特征。动态性还表现在:“它有创建产生,由调度而执行,由撤销而消亡”。程序是一组有序指令的集合,并存放在某种介质中,其本身并不具有活动的含义,因此是静态的。
2、并发性:是指多个进程实体同存于内存中,且能在一段时间内同时运行。
3、独立性:是指进程实体是一个能独立运行、独立获得资源、和独立接受调度的单位。凡是没有建立PCB的程序都不能作为一个能独立的单位参与运行。
4、异步性:是指进程是按异步的方式运行的,即按各自独立的、不可预知的速度推进。
三、进程的基本状态及转换
1、就绪状态(Ready):这是指进程已经处于准备好运行的状态。即进程已经获得除CPU意外所有必需的资源,只要获得CPU马上就开始运行
2、执行状态(Running):这是指进程已经获得CPU,正在执行。在单处理机系统中,只有一个进程处于执行状态,而在多处理机系统中,可以有多个进程处于执行中。
3、阻塞状态(Black):这是指正在执行的进程由于发生某事件暂时无法执行的状态(比如I/O请求,申请缓存区失败)。也称等待状态、封锁状态
四、进程的两个基本属性
1、进程是一个可拥有资源的独立单位
2、进程是一个可独立调度和分配的基本单位