andrewrk Asked: 2017-05-25 10:05:15 +0800 CST2017-05-25 10:05:15 +0800 CST 2017-05-25 10:05:15 +0800 CST 达尔文(MacOS 内核)是否会过度使用内存? 772 例如,Linuxvm.overcommit_memory默认开启。Windows 没有内存过量使用。macOS 有吗?是否可配置?默认设置是什么? mac-osx 1 个回答 Voted Best Answer Alexander Tolkachev 2017-05-25T12:04:36+08:002017-05-25T12:04:36+08:00 我已经在我的 MacOS 上进行了测试,并且可以正常工作。我使用这个问题的代码。并且系统允许我分配超过 40Gb 的内存,只有 16Gb 的 RAM 板载和 6Gb 使用的交换(在 OOM-killer 执行之前的分配图片过程中)。 我的内核版本是: Darwin AT-MacBook-Pro-2.local 16.5.0 Darwin Kernel Version 16.5.0: Fri Mar 3 16:52:33 PST 2017; root:xnu-3789.51.2~3/RELEASE_X86_64 x86_64 我没有发现配置 overcommit 的可能性,但默认情况下看起来像 2。但我们应该记住,MacOS 具有动态交换并且它压缩内存,所以我的假设可能是错误的。
我已经在我的 MacOS 上进行了测试,并且可以正常工作。我使用这个问题的代码。并且系统允许我分配超过 40Gb 的内存,只有 16Gb 的 RAM 板载和 6Gb 使用的交换(在 OOM-killer 执行之前的分配图片过程中)。
我的内核版本是:
我没有发现配置 overcommit 的可能性,但默认情况下看起来像 2。但我们应该记住,MacOS 具有动态交换并且它压缩内存,所以我的假设可能是错误的。