linux – 如何确定进程的内存量?

linux – 如何确定进程的内存量?,第1张

概述根据我的理解,当一个进程正在执行时,它可以使用一些内存.随着堆栈大小的增加,它从进程的一端构建(忽略堆栈之前的全局变量),而堆从另一端构建.如果继续添加到堆栈或堆中,最终所有内存都将用于此过程. 如何确定进程的内存量?我只能想象它取决于一堆不同的变量,但是一般情况下尽可能的响应会很棒.如果事情必须具体,我对用C编写的linux进程感兴趣. 在您将遇到的大多数平台上, Linux运行时启用了虚拟内存 根据我的理解,当一个进程正在执行时,它可以使用一些内存.随着堆栈大小的增加,它从进程的一端构建(忽略堆栈之前的全局变量),而堆从另一端构建.如果继续添加到堆栈或堆中,最终所有内存都将用于此过程.

如何确定进程的内存量?我只能想象它取决于一堆不同的变量,但是一般情况下尽可能的响应会很棒.如果事情必须具体,我对用C编写的linux进程感兴趣.

解决方法 在您将遇到的大多数平台上,Linux运行时启用了虚拟内存.这意味着每个进程都有自己的虚拟地址空间,其大小仅由硬件和内核配置它的方式决定.

例如,在具有“3/1”拆分配置的x86架构上,每个用户空间进程都有3GB的可用地址空间,在其中分配堆和堆栈.这与系统中可用的物理内存量无关.在x86-64架构上,每个用户空间进程通常可以使用128TB的地址空间.

物理内存单独分配以支持该虚拟内存.流程可用的数量取决于系统的配置,但通常它只是“按需”提供 – 主要限制物理内存和交换文件空间的大小,以及当前用于其他目的的程度.

总结

以上是内存溢出为你收集整理的linux – 如何确定进程的内存量?全部内容,希望文章能够帮你解决linux – 如何确定进程的内存量?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/1019506.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存