进程
是指计算机中已运行的程序
是系统进行资源分配和调度的基本单位
1.进程的三个状态:就绪、阻塞、运行
1).创建
首先由进程申请一个空白的进程控制块(PCB),并向其中填写用于控制和管理进程的信息;
然后为进程分配运行时所需的资源;
2).就绪状态
指进程已经准备好,可以运行的状态。
即进程已经分配到除CPU以外所有必要的资源后,只要再获得CPU便可立即执行。
如果系统中有许多处于就绪状态的进程,通常将它们按照一定的策略排成一个队列,即就绪队列。
3).运行状态
进程已获取CPU资源,处于正在执行的状态
4).阻塞状态
正在执行的进程由于发生某事件(如I/O请求,申请缓冲区失败等 )暂时无法继续执行的状态。
此时引起进程调度,操作系统将处理机分配给另外一个就绪的进程,受阻的进程处于暂停的状态。
5).终止状态
首先等待操所系统进行善后处理;最后将其PCB清零。
当进程到达了结束点,或是出现了无法克服的错误,或是被操作系统所终结,或是被其他有终止权的进程所终结,进入终止状态。
进入终止状态的进程无法再执行,但操作系统扔保留一个记录,其中的状态码和计时统计数据,供其他进程进行收集;
一旦其他的进程完成了对其信息的提取之后,操作系统将删除其进程,即将其PCB清零,并将该空白PCB返还给操作系统。
/*注意
*(1)创建和终止不是线程的状态
*(2)阻塞和就绪的区别:阻塞是等待除CPU以外的资源;就绪是等待CPU资源
*(3)当进程进入阻塞状态时,不占用CPU资源
*/
2..进程间的协作关系: 同步,互斥,通信
互斥:多个进程不允许同时使用同一资源,无序
同步:多个进程中发生的事件存在某种先后关系,有序。
通信: 进程之间传递某种消息。
3.临界资源和临界区
临界资源:某段时间,只允许一个进程使用的资源
临界区:进程访问临界资源 的 一段程序代码
4. 不是所有的程序都必须等待资源的释放,几个原则:
1). 空闲让进 2). 忙则等待 3). 有限等待 4). 让权等待