【发布时间】:2020-04-18 14:07:36
【问题描述】:
我正在阅读有关流程的内容,我发现了这个:
通常,子进程随后会执行 execve 或类似的系统调用来更改其内存映像
我可以从中得出这个伪代码:
if(child_created_sucessfully)
{
do_ABC_and_ignore_the_part_of_the_parent's_control_flow //is this what it meant to "change its memory image"?
}
(伪代码评论中提出的问题)
我完全不明白这部分:
例如,当用户向 shell 键入命令(例如,sort)时, shell
forks 关闭子进程,子进程执行排序。这两个步骤的原因 进程是允许子进程在fork之后操作它的文件描述符,但是 在execve之前为了完成标准输入的重定向,标准 输出和标准错误。
【问题讨论】:
标签: c unix process operating-system