什么是 Windows Process model(状态过程模型)?
What is Windows Process model (states process model)?
我一直试图找到 Windows 用于其进程的状态模型,但在 Internet 上找不到任何东西。我尝试了研究论文和普通图像,其中 none 有任何具体内容。
他们中的一些人试图通过解释 5 态或 7 态过程模型图来举例说明,并说 windows 使用这样的状态,但他们从未说出 [= 实际使用的模型是什么18=]。其中一个甚至说了一些关于混合动力车的事情,但没有明确的解释。
我能找到 Unix 但找不到 windows。所以谁能告诉我是哪一个?
Windows 上的进程基本上只是其线程的容器,进程本身从不执行代码。一个进程从一个线程开始它的生命,这个线程可能 运行 马上或者可以被请求开始挂起。只要进程中有适用的线程,它就是 运行ning。当没有更多线程要 运行(ExitProcess
/TerminateProcess
调用等)时,进程对象将发出信号。其他进程中的线程可以等待此信号(WaitForSingleObject
等)。
当进程收到信号并且进程对象的所有句柄都已关闭时,内核释放与进程相关的所有内存和资源并删除进程对象。
线程的状态比较复杂。基本而言,这些州是
- 已暂停。
- 准备好运行。
- Blocked/Waiting(等待内核对象或I/O)。
- 运行.
- 已结束(发出信号,将不再执行代码)。
我推荐 Windows Internals books 以全面深入地了解 Windows 内核。
我一直试图找到 Windows 用于其进程的状态模型,但在 Internet 上找不到任何东西。我尝试了研究论文和普通图像,其中 none 有任何具体内容。
他们中的一些人试图通过解释 5 态或 7 态过程模型图来举例说明,并说 windows 使用这样的状态,但他们从未说出 [= 实际使用的模型是什么18=]。其中一个甚至说了一些关于混合动力车的事情,但没有明确的解释。
我能找到 Unix 但找不到 windows。所以谁能告诉我是哪一个?
Windows 上的进程基本上只是其线程的容器,进程本身从不执行代码。一个进程从一个线程开始它的生命,这个线程可能 运行 马上或者可以被请求开始挂起。只要进程中有适用的线程,它就是 运行ning。当没有更多线程要 运行(ExitProcess
/TerminateProcess
调用等)时,进程对象将发出信号。其他进程中的线程可以等待此信号(WaitForSingleObject
等)。
当进程收到信号并且进程对象的所有句柄都已关闭时,内核释放与进程相关的所有内存和资源并删除进程对象。
线程的状态比较复杂。基本而言,这些州是
- 已暂停。
- 准备好运行。
- Blocked/Waiting(等待内核对象或I/O)。
- 运行.
- 已结束(发出信号,将不再执行代码)。
我推荐 Windows Internals books 以全面深入地了解 Windows 内核。