【发布时间】:2011-05-21 04:10:25
【问题描述】:
请多多包涵,因为我不擅长提出问题。据我所知,这不是重复的问题。这肯定不是家庭作业。
当我们调用fork时,会创建一个线程,与父进程共享堆内存。如果我用不同的进程映像(使用 exec)覆盖这个线程的地址空间会发生什么
1)每个段将被新进程的相应段覆盖,还是像完整的虚拟地址空间将被新进程的完整地址空间覆盖?
2) 操作系统会为这个新进程分配额外的堆内存 ? & heap (shared before) 将不再被新进程访问?
3) 所有这些混乱都是因为我不知道可执行文件(准备加载)是否有堆段。
【问题讨论】:
标签: linux multithreading fork exec heap-memory