exec - vfork() 之后的 exec() 对父级内存的影响
问题描述
我目前正在阅读 Silberschatz 的关于虚拟内存的操作系统章节。
这里指出:
"使用vfork(),父进程挂起,子进程使用父进程的地址空间。因为vfork()不使用copy-on-write,如果子进程改变了父地址空间的任何页,一旦恢复,更改的页面将对父级可见。
[...] Vfork() 旨在在子进程在创建后立即调用 exec() 时使用。"
如果我没记错的话,exec() 将替换当前的进程映像。
因此,由于地址空间是共享的,因此在随后的 exec() 调用中调用 vfork() 并替换父进程映像?
解决方案
推荐阅读
- javascript - 基于标签的可变背景颜色 Chart.js
- matlab - 将代码转换为 xcorr 函数的 hdl 时出现 MATLAB 编码器错误
- java - 为什么即使使用 @JsonIgnoreProperties 在使用 jackson 时也会出现 stackoverflow 错误
- java - Java 仅在有人讲话时录制音频
- python - Django 传递参数
- xamarin.forms - 部署时有什么方法可以为 APK 设置密码?
- xml - 提取 XML 片段以用作带有前缀 mods 的输出
- python - 按索引连接两个数据框
- java - 并行请求的 NullPointer 异常
- python - 将 IR 加载到插件时,ssd_resnet50 模型卡住