确切的“流程执行”何时开始?它处于CPU /内存的哪个阶段?

时间:2018-10-16 11:32:29

标签: operating-system

进程状态由寄存器内容+程序计数器(在CPU上)或内存布局(即,在文本,数据,堆和堆栈(在内存中)时)定义

那么我们什么时候确切地说:

  1. 进程已开始执行?
  2. 它在生命周期中具有各种状态,处于内存中以及处于CPU处于什么阶段?

2 个答案:

答案 0 :(得分:0)

我想说一个过程开始的确切点是:

  • 当调度程序首次为进程(或进程的初始线程或任务)提供CPU时间时(对于相对标准的OS多任务系统,在该系统中,内核未被视为单独的可调度实体)。

  • p>
  • 当内核第一次从“内核空间”返回到新进程的“用户空间”时(对于多任务系统,其中内核是一个单独的可调度实体)。

  • 在流程创建过程中的任何时候(无法确定)(对于不支持多任务的系统)。

答案 1 :(得分:0)

过程上下文由寄存器值定义。大多数处理器具有“加载进程上下文”指令或等效指令序列,可从其进程上下文块加载进程的寄存器。该指令(或指令序列)完成时,进程开始执行。

就进程状态而言,它们完全是系统特定的。