【操作系统】进程的三种状态

没有人挡得住,你疯狂的努力进取。你可以不够强大,但你不能没有梦想。如果你没有梦想,你只能为别人的梦想打工筑路。

导读:本篇文章讲解 【操作系统】进程的三种状态,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

一 .进程具有三种基本状态:

就绪(Ready)状态

进程已分配到除CPU以外的所有必要资源,只要获得处理机便可立即执行。

执行(Running)状态

进程已获得处理机,其程序正在处理机上执行。

阻塞(Blocked)状态

正在执行的程序,由于等待某个事件发生而无法执行时,便放弃处理机而处于阻塞状态。引起进程阻塞的原因可能是等待I/O完成、申请缓冲区不能满足、等待信号等。

在这里插入图片描述

Q1:为什么在转换图中没有就绪到阻塞和阻塞到执行的转换方向?

就绪状态进程没有占有处理机,即不经过执行,其状态就不会改变;阻塞状态进程唤醒后要先进入到就绪队列,才会被调度程序选中,进行执行状态。

二 进程状态转换的原因:

1)就绪-→执行:

对就绪状态的进程,当进程调度程序按一种选定的策略从中选中一个就绪进程,为之分配了处理机后,该进程便由就绪状态变为执行状态;

2)执行-→阻塞:

正在执行的进程因发生某等待事件而无法执行,则进程由执行状态变为阻塞状态。

如:进程提出输入/输出请求而变成等待外部设备传输信息的状态,进程申请资源(主存空间或外部设备)得不到满足时变成等待资源状态,进程运行中出现了故障(程序出错或主存储器读写错等)变成等待干预状态等等;

3)阻塞-→就绪:

处于阻塞状态的进程,在其等待的事件已经完成,如输入/输出完成,资源得到满足或错误处理完毕时,处于等待状态的进程并不马上转入执行状态,而是先转入就绪状态,然后再由系统进程调度程序在适当的时候将该进程转为执行状态;

4)执行-→就绪:

正在执行的进程,因时间片用完而被暂停执行,或在采用抢先式优先级调度算法的系统中,当有更高优先级的进程要运行而被迫让出处理机时,该进程便由执行状态转变为就绪状态。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/132371.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!