

结束状态:一个进程正在完成结束的处理过程,没有完全消失,这个状态成为结束状态,因为这个时候PCB还存在,只有PCB彻底消失之后,进程才彻底结束。

running->ready:前面讲到内存很大,CPU个数还是比较少,内存中会存在多个就绪的进程,我们希望让每个就绪进程都有机会去执行。也意味着给每个进程分配一个比较小的时间片,当一个就绪进程占用CPU执行,处于running态,执行完这个时间片之后呢,他就应该被我们操作系统切换下来,切到就绪态去,让其他处于就绪态的进程可以去执行。这样可以使得每个处于就绪态的进程都能比较公平的获得CPU的资源去执行。


上图中谁完成?是由操作系统来完成的。 本来执行的程序很难主动让出CPU,这个交给应用程序去执行,比较困难,让操作系统很好管理,因为操作系统还管理时钟,可以知道这个执行多久,一旦超出时间片,操作系统就会得到感知,然后把这个处于运行态的进程,给它停下来,变成就绪态。再选一个就绪态占用CPU运行。

进程状态转换与操作系统管理
文章讨论了进程的结束状态和状态转换,特别是从running到ready的过程。在结束状态,进程的PCB仍存在,直到完全消失。操作系统通过分配时间片确保就绪进程公平获取CPU执行机会,当时间片耗尽,运行态进程被切换回就绪态。

被折叠的 条评论
为什么被折叠?



