希赛考试网
首页 > 软考 > 系统分析师

进程创建状态及分类

希赛网 2023-11-22 08:48:05

在计算机系统中,进程是程序执行的基本单位。一个进程可以看作是一个执行中的程序,它具有程序代码、数据和处理器状态等信息。当一个程序被调入内存并开始执行时,则产生了一个进程。在进程的生命周期中,进程会经历多个状态,这些状态也称为进程状态。进程状态是进程控制块中的一部分,记录了进程当前的情况,包括进程当前状态、进程 ID、进程优先级、进程内存地址等。

进程创建过程中,进程状态的变化可以分为以下三个方面:

1. 就绪态

当一个进程被创建时,首先它会被放在就绪队列中等待CPU资源。这个状态称为就绪态,也就是说此时进程已经准备好了,只是还没有得到CPU的使用权。当某个进程的I/O操作完成或者CPU空闲时,操作系统调度程序会从就绪队列中选出一个进程,将其变为运行态。

2. 运行态

当一个进程从就绪态转变为运行态时,操作系统为其分配CPU资源,使其开始执行程序代码。此时进程正在CPU上运行,进程的状态就称为运行态。在运行过程中,如果进程需要等待某些事件的发生,如I/O操作或者请求其他进程资源,则进程会从运行态转变为阻塞态。

3. 阻塞态

当一个进程等待某些事件的发生时,进程的状态就是阻塞态。此时进程没有得到CPU资源,处于等待的状态。当等待的事件发生时,进程就会被唤醒,然后重新进入就绪态等待CPU使用权。如果被唤醒的进程优先级较高,则会被优先调度,否则还是会重新进入就绪队列等待CPU的使用权。

除了上述基本的三种状态,进程还有一些其他的状态,例如挂起态、僵尸态、退出态等,这些状态通常不被操作系统调度程序直接使用。下面对各种状态进行具体分析。

1. 就绪态

首先是就绪态。在操作系统中,进程的就绪队列是由操作系统调度程序维护的一种数据结构。当进程被创建时,操作系统会将进程放入就绪队列中等待CPU资源。当CPU时间片到达或者其他进程I/O操作完成时,操作系统会从就绪队列中选出一个进程,将其变为运行态。换言之,就绪态是处于等待CPU资源状态下的进程,此时进程已经准备好了,只等待操作系统调度程序为其分配CPU资源。

2. 运行态

其次是运行态。当进程从就绪态转变为运行态时,操作系统已经为其分配CPU资源,使其可以执行程序代码。在运行过程中,如果进程本身没有请求其他进程的资源,那么它会一直处于运行态状态,直到其所需计算资源全部用完或者进程I/O操作请求发生时,进程就会从运行态转变为阻塞态。

3. 阻塞态

然后是阻塞态。当进程从运行态转变为阻塞态时,通常是因为进程需要等待某些事件的发生,如I/O操作或者请求其他进程资源。此时,进程没有得到CPU资源,处于等待的状态。操作系统调度程序会将其从CPU时间片队列中移除,并将其放入相应的等待队列中等待事件发生。等待期间,如果发生了等待事件,则操作系统会将其唤醒,并将其变为就绪态,在就绪队列中等待CPU调度程序的调度。

4. 挂起态

当进程被挂起时,其状态就是挂起态。通常情况下,进程被挂起的原因是由于它的执行产生了问题,如进程过度占用CPU时间片、出现死锁等。此时,操作系统会通过负责进程管理的守护进程监控进程的执行情况,发现问题时就会挂起该进程。被挂起的进程不能继续执行,也不能被操作系统调度程序选择执行。进程只有在被恢复之后,才能恢复运行。

5. 僵尸态

进程的状态还包括僵尸态。当进程完成运行后,它的状态会从运行态变为退出态。在进程退出时,进程释放它所占用的系统资源,并向父进程发送退出消息。父进程接收到消息后,它必须执行一定的清理操作,否则进程最后的状态就会变成僵尸态。进程状态变成僵尸态时,它既不能运行也不能被删除。此时,操作系统会维护一个僵尸进程表,以便在父进程接收到退出信号后清理僵尸进程。

6. 退出态

最后是退出态。当进程完成任务或者由于某种原因退出后,它的状态会从运行态转变为退出态。在退出态下,进程处于一种不可以执行状态,只是仍占用某些系统资源,如内存空间等。对于无法占用系统资源的进程,其状态变为退出态后,操作系统会立即收回所有的资源,并将其从进程管理链表中删除。

综上所述,进程的各种状态包括了就绪态、运行态、阻塞态、挂起态、僵尸态和退出态。通过对各种状态的介绍,可以更好地理解进程状态的含义。进程在不同的状态间转换,通过操作系统的调度程序来完成。操作系统的调度程序负责进程调度、挂起和恢复等等任务,保证每个进程都有公平的CPU时间片。进程的各种状态的转换,也为进程供给生命周期完整和高效执行提供了保障。

系统分析师 资料下载
备考资料包大放送!涵盖报考指南、考情深度解析、知识点全面梳理、思维导图等,免费领取,助你备考无忧!
立即下载
系统分析师 历年真题
汇聚经典真题,展现考试脉络。精准覆盖考点,助您深入备考。细致解析,助您查漏补缺。
立即做题

软考资格查询系统

扫一扫,自助查询报考条件