如何为 linux/unix 命令分配 RAM 和堆空间



因此,当我执行 linux 命令时,例如在本例中为 cat 命令,在具有 128 GB RAM 的服务器上,假设当前没有这些 RAM 在使用中,则全部免费。(我知道这永远不会发生,但这就是为什么它是一个例子(

1( 然后,是否会以所有 128 GB 的堆空间执行此命令?还是由我用来决定从可用的 128 GB 中占用多少堆空间的 linux 发行版?

2(如果是这样,是否有另一个命令行参数可以与我的cat命令一起传递以保留比系统标准更多的堆空间?

编辑:3(有没有一种方法可以确定将为我的cat命令(或任何命令(分配多少堆空间,最好是内置命令行解决方案,而不是外部应用程序。如果不可能,请说出来,我只是好奇。

启动程序时,会为该程序分配一定量的内存;但是,此内存量并不是允许程序使用的限制。每当请求更多内存时,都可以授予它,直到系统用完所有内存。

内存分配器(通常在 libc 中找到(来决定分配多少堆。 glibc 的分配器不使用任何环境变量,但其他替代品可能会使用。

最新更新