操作系统复习笔记

第二章 进程的描述与控制

2.1进程的定义:

(1)进程是程序的一次执行

(2)进程是一个程序及其数据在处理机上顺序执行时所发生的活动

(3)进程是具有独立功能的程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。

2.2操作系统为进程配置了一个专门的数据结构PCB(Process Control Block)。系统用PCB来描述进程的基本情况和活动过程,进而控制和管理进程

2.3进程的基本状态及转换

1.进程的三种基本状态

(1)就绪态(Ready)。这是指进程已经处于准备好运行的状态,即程序已经获得了除cpu以外的所有必要资源。操作系统会按一定的策略将就绪态进程排成一个队列,该队列叫就绪队列。

(2)执行态(Running)。这是指进程已经获得cpu,其程序正在执行的状态。单处理机中只有一个进程在执行,多处理机则有多个进程处于执行态。

(3)阻塞态(Block)。正在执行的进程由于发生某些事件暂时无法继续执行时的状态,即进程的执行收到阻塞。此时引起进程调度,操作系统将会把处理及分配给另外一个就绪态的进程。操作系统通常也有阻塞队列,为了减少队列操作的开销,提高系统效率,根据阻塞原因不同,会设置多个阻塞队列。

2.创建态和终止状态

(1)创建状态。进程是由创建而产生。创建进程首先由进程申请一个空白PCB,并向PCB中填写用于控制和管理进程的信息,然后为该进程分配运行所必须的资源;如果进程所需资源目前得不到满足,此时创建工作尚未完成;创建成功后,把该进程转入就绪状态并插入就绪队列中。

(2)终止状态。进程的终止也要通过两个不走:首先,是等待操作系统进行善后处理,最后将其PCB清零,并将PCB空间返回系统。当一个进程到达了自然结束点,或是出现了无法克服的错误,或是被操作系统所终结,或是被其他有终止权的进程所终结,它将进入终止状态。进入终止态的进程以后不能再执行,但在操作系统中依然保留一个记录,其中保存状态码和一些计时统计数据,供其他进程收集。一旦其他进程完成了对其信息的提取之后,操作系统将删除该进程,即将其PCB清零,并将该空白OCB返还系统。

2.4进程控制块中的信息

(1)进程标识符 进程标识符唯一地标识一个进程

(2)处理机状态

(3)进程调度信息

(4) 进程控制信息 

2.5进程的终止

(1)正常结束,表示进程的任务已经完成,准备退出运行。

(2)异常结束:

①越界错误,进程访问了不属于自己的内存区域

②保护错,进程试图访问一个不允许访问的资源

③非法错,指程序试图去执行一条不存在的指令。

④特权指令错,进程试图执行一条只允许os执行的指令。

⑤运行超时

⑥等待超时,进程等待某事件的时间超过了规定最大值

⑦算术运算错,进程去执行一个被禁止的运算,例如被0除

(3)外界干预:是指进程因外界的请求而终止运行

①操作员或操作系统干预

②父进程请求,指当子进程已经完成父进程所要求的任务,父进程可以图一处请求结束该子进程。

③因父进程终止,父进程终止时,所有子进程也得终止 

2.6 进程的阻塞与唤醒

1.引起进程阻塞和唤醒的事件

①向系统请求共享资源失败

②等待某种操作的完成

③新数据尚未到达

④等待新任务的到达

2.7 进程同步

1.临界资源指的是该资源一次只能供一个进程使用。如输入机,打印机,磁带机等等。

2.临界区指的是每个进程中访问临界资源的那段代码。

3.同步机制应遵循的规则

①空闲让进。当没有进程处于临界区,则允许一个进程进入临界区。

②忙则等待。当有进程已经进入临界区,则必须等待访问的进程访问完。

③有限等待。对要求访问临界资源的进程,应保证在有限的时间内能进去自己的临界区。

④让权等待。当进程不能进入自己的临界区时,应立即释放处理及,以免进程陷入忙等。

4.信号量机制

①整型信号量

整型信号量定义为一个用域表示资源数目的整型量S,它与一半整型量不同,除初始化外,仅能通过两个标准的原子操作wait(S)和signal(S)来访问。这两个操作一直被分别称为P,V操作。

wait(S)
{
    while(S <= 0)
    S--;
}

signal(S)
{
    S++;
}

②记录型信号量

在整型信号量中,只要信号量S<=0,就会不断的测试。因此,不符合让权等待的准则。记录型信号量机则是一种不存在忙等现象的进程同步机制。

你可能感兴趣的:(操作系统复习笔记)