分配给进程的虚拟内存

苏门

我一直在阅读虚拟内存,分页等。对此我有些怀疑。

  1. 创建进程后,其虚拟地址空间大小是多少?

  2. 尺寸是否因工艺不同而不同?如果是,那么如何决定?

  3. 如果进程在运行期间需要更多的虚拟地址空间,那么如何为它分配额外的内存?

杰森

我将尝试按您要求的顺序回答。

  • 流程没有固定的初始大小
  • 是的,映射到进程的内存量取决于可执行文本/数据段的大小,链接的对象,初始堆栈大小和初始堆大小。当堆栈上的引用地址导致页面错误时,堆栈会自动增长。
  • 通过系统调用(sbrk()mmap()等)对操作系统的请求,其他非堆栈内存被映射到进程

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章