为什么默认的 ulimit 值这么低

why are the default `ulimit` values so low

今天有很多 GB 的可用内存,为什么默认 ulimits 设置得这么低?例如,我的机器 (Debian Buster) 上的堆栈大小只有 8192

ulimit -s
8192

我不知道这会导致任何问题,但我很好奇为什么它这么低。

如果有足够的可用内存,将此限制增加到 1GB 会有什么好处吗?

或者下限可能是有益的,因为它可以防止行为不当或配置错误的失控程序?

8,192 千字节为 8 兆字节。这是对进程堆栈大小的一个非常合理的限制。我看不出提高它有什么特别的好处。我想不出需要那么多堆栈的程序 space.

我知道许多开发工具构建(或几年前)默认堆栈大小为 1 兆字节的程序,我没有听到有人抱怨他们的堆栈太小。