时间:2024-09-02 00:00:49
挂起状态和阻塞状态有什么区别
挂起状态和阻塞状态的区别主要有以下几点:
1. 发生原因:阻塞状态通常发生在进程等待资源(如I/O请求、信号量等)时,而挂起状态可能是由于用户或系统的需要,例如程序调试、提高内存利用率等原因导致进程暂停执行。
2. 系统资源占用:阻塞状态的进程仍处于内存中,而挂起状态的进程通过“对换”技术被换出到磁盘中。
3. 恢复时机:阻塞状态需要在等待的资源得到满足后,才会进入就绪状态,等待被调度而执行;而被挂起的进程在符合条件时(如调试结束、被调度进程选中需要重新执行)由将其挂起的对象(如用户、系统)将其主动激活。
4. 主动性:挂起状态是一种主动行为,恢复也需要主动完成,而阻塞状态是一种被动行为,在等待事件或资源时任务的表现。
5. 任务调度:任务调度时,操作系统直接忽略挂起状态的任务,但会顾及处于阻塞状态的任务。当阻塞状态的任务等待的资源就绪后,就可以转为就绪状态。
科技之家 广州小漏斗信息技术有限公司 版权所有 提供支持 粤ICP备20006251号