进程的三种基本状态
一般而言,每一个进程至少应该处于一下三种基本情况之一。
(1)就绪状态(Ready):是指进程已经处于准备运行的状态(进程已经分配到除cpu以外的所有必要资源),只要再获得cpu,便可立即执行。如果系统中有多个处于就绪状态的进程,通常会按照一定的策略(如优先级策略)排成一个队列,该队列就是就绪队列。
(2)执行状态(Running):指该进程已经获得cpu,正处于执行状态。
(3)阻塞状态(Block):正在执行的进程由于发生某事件(如I/O请求、申请缓冲区失败)无法继续向下执行的状态。同理也会形成阻塞队列。
创建状态和终止状态
(1)创建状态:
- 首先申请一个空白的PCB,并向PCB中填写用于控制和管理进程的信息;
- 然后分配进程运行时的资源;
- 最后把该进程转入就绪状态并插入就绪队列中
(2)终止状态:
- 首先,是等待操作系统进行善后处理
- 最后,将其PCB清零,并将PCB空间返还系统