• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

操作系统中,进程或任务的状态具体是什么场景

沃尔夫斯堡的羊 2020-05-24 浏览量:670

如题,都知道操作系统中进程的运行需要一定的条件和资源(CPU,内存,外存),进程是操作系统进行资源分配的基本单位,且进程的状态大体有以下几个,如下图:

杩涚▼鎴栦换鍔$姸鎬佸垏鎹�.png

进程就绪是指:进程其它资源和条件都满足,只差CPU,操作系统给其分配CPU后即可进入运行状态;那么请教一下,

1)这里的阻塞状态是指​:进程在等待事件,此时进程还占不占有CPU?

2)还有一个状态是进程睡眠,进程睡眠是什么状态?进程放弃CPU,可不可以这么理解,进程阻塞其实进程还是占有CPU,但是操作系统调度索性使其放弃CPU,进入睡眠,亦即阻塞状态的进程的下一状态就是睡眠,等待其条件满足时即进入就绪,只待分配CPU?

3)以上进程都还处于内存中,而挂起是进程被系统换出到外存。

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 正常情况下,只有运行状态占用CPU,其它状态都不占用CPU

    就绪状态是等待操作系统分配CPU时间片来执行一下,这个时间片结束或者中间状态转换为:进程结束、进程就绪或者进程阻塞


    这里再提一下 进程睡眠和进程挂起

    进程睡眠更可能是主动的一种操作,也可能是因为挂起需要等待的事件比较长,一般说来睡眠不会让进程资源调换到外存中。


    进程挂起其实和进程阻塞没有必然的联系,只是大多数时候挂起调度策略是先挂起阻塞的进程而已。挂起操作是一种内存管理机制,以保证在内存不足时能调配内存资源使得合适的进程调用能够执行(比如新建进程)。

    • 发布于 2020-05-24
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:1
  • 1、阻塞状态的进程不占有CPU,且不参与调度,直到它退出阻塞

    2、睡眠一般是执行sleep函数,sleep期间不参与调度

    • 发布于2020-06-05
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

操作系统中,进程或任务的状态具体是什么场景