Windows

為什麼 Linux 不像 Windows 那樣保護記憶體?

  • February 11, 2021

當我執行一段使用大量記憶體的程式碼時,如下所示:

a = "1"
while True:a+=a

在 Windows 10 中,它給了我memory error並且電腦保持安全,但在 Linux 中執行此程式碼會導致凍結並耗盡記憶體。為什麼不給我memory error

Linux 核心 OOM 處理非常差,Linux 核心開發人員已明確表示應在使用者空間解決此問題:https ://lkml.org/lkml/2019/8/4/15

至於使用者空間,您可以免費使用:

像 Fedora 這樣的發行版現在earlyoom預設包含在內。

引用自:https://unix.stackexchange.com/questions/633860