【发布时间】:2020-11-01 14:44:46
【问题描述】:
我大学的操作系统说明如下:
PCB 是进程通过 fork 诞生时创建的,并被回收 当一个进程终止时。而系统调用如 exec rewrite 进程的内存映像、PCB(以及由 它,就像内核堆栈一样)在 exec 或任何 其他系统调用,除了轻微的修改(比如改变 页表指向新的内存映像)。
但是在 fork 系统调用期间,来自父进程的内存映像被擦除,并且为子进程初始化了一个新的内存映像。因此,位于内存映像的内核堆栈中的 PCB 也被擦除,因此我的理解是一个全新的 PCB 被重新写入进程。
我理解错了什么概念?
【问题讨论】:
标签: process operating-system fork exec child-process