操作系统之进程的各种状态(挂起,创建等)

来源:互联网 发布:淘宝黑号多久能白回来 编辑:程序博客网 时间:2024/05/16 14:28

                           操作系统之进程的各种状态

 

进程的状态:

就绪状态:当进程获得除CPU外的所有资源的时候,只要在获得CPU就可以执行(万事俱备只欠CPU)在一个系统中处于就绪状态的进程可能有多个,通常将它们排成一个队列,称之为就绪队列。

执行状态:

进程获得CPU,其程序正在执行,在单处理机系统中只有一个进程处于运行状态, 在多处理机系统中则有多个进程处于运行状态

阻塞状态:

正在执行的进程由于某事件而暂停无法继续执行,便放弃CPU而处于暂停状态,(进程的执行受到阻塞)把这种暂停状态称为阻塞状态,也称为等待或封锁状态,导致线程线程阻塞的典型事件请求I\O操作,申请空间,通常这种阻塞状态的进程也会组成一个队列,有的则是根据阻塞原因的不同,把处于阻塞状态的进程排成多个队列。

三者的转化关系:

 

 

 运行-----阻塞:当前正在执行的进程由于发生某些事件进程访问临界资源(各进程共享的资源但是一次只需一个进程使用的资源如打印机,磁带机)而该资源正被其它进程访问的时候,使之无法进行则该进程状态由执行转变为阻塞。

创建状态和终止状态

为了满足进程控制块对数据及操作的完整性要求以及增强管理的灵活性,又引入了两种常见的状态 创建状态和终止状态

创建状态:

创建过程很复杂,需要多个步骤如:身前一个空白PCB,并向PCB中填写控制和管理进程的信息,然后为该进程分配运行时所需的资源,最后将该进程转入就绪状态,然后插入就绪队列中,但是如果进程所需的资源不能得到满足,此时创建工作尚未完成,进程不能调度运行,此时的状态就为创建状态。

引入创建状态,保证进程的调度,必须在进程创建完成之后,从而保证对进程控制块操作的完整性。

终止状态:

当一个进程到达了自然结束或是出现了无法克服的错误,或是被OS所终结,或是被其他有终止权的进程所终止时,将进入终止状态。进入终止状态的进程以后不能在执行,但OS中热然保留一个记录供其他进程收集,一旦其他进程完成收集OS将删除该进程,将其PCB清零,并将空白PCB返还系统。

进程的挂起:

为了用户的观察和分析进程的需要引入一个操作---进程的挂起

当该操作作用于某个进程时该进程将被挂起,此时该进程处于静止状态,如果程序正在运行,将暂停执行,若处于就绪状态,则该进程暂不接受调度,与挂起对应的时激活状态。

引入挂起原语(有若干条指令组成的由于完成某一操作的一个过程)操作后三个进程状态的转换

活动就绪---静止就绪:活动就绪的进程可以被调度,当使用挂起原语将该进程挂起后则变为静止就绪状态。则不可被调度。

活动阻塞---静止阻塞:处于未被挂起的阻塞称为活动阻塞,当使用挂起原语挂起后处于静止阻塞,处于该状态的进程在其所期待的事件出现后,将从静止阻塞变为静止就绪。

静止就绪----活动就绪:处于静止就绪的进程若用激活原语激活后就变为活动就绪。

静止阻塞----活动阻塞::处于静止阻塞的进程若用激活原语激活后就变为活动阻塞。

 

 

 

0 0
原创粉丝点击