1栈和堆物理空间换出问题
栈和堆存在于虚拟地址空间中,那么实际的物理地址指内存地址,那么如果存在页冲突的话,比如进程A的栈所在的空间与进程映射的物理空间冲突的话,那么这个栈换出到哪里?堆也是一样,发生物理空间冲突的话,用什么机制保证不会冲突或者有临时的磁盘空间以供换出?
fork与execve的问题
fork的过程是复制父进程的各种段和文件描述符,那么fork出的子进程为什么会返回0呢,fork了子进程后,子进程会立即跑起来吗?创建子进程为什么分两步呢?
本文探讨了栈和堆在虚拟地址空间中的物理地址冲突问题,包括如何解决页冲突及使用何种机制来保证不会发生冲突。此外,还讨论了fork与execve函数在进程创建过程中的作用,解释了为什么fork后的子进程返回0以及子进程是否立即运行。
栈和堆存在于虚拟地址空间中,那么实际的物理地址指内存地址,那么如果存在页冲突的话,比如进程A的栈所在的空间与进程映射的物理空间冲突的话,那么这个栈换出到哪里?堆也是一样,发生物理空间冲突的话,用什么机制保证不会冲突或者有临时的磁盘空间以供换出?
fork的过程是复制父进程的各种段和文件描述符,那么fork出的子进程为什么会返回0呢,fork了子进程后,子进程会立即跑起来吗?创建子进程为什么分两步呢?
938

被折叠的 条评论
为什么被折叠?
