Linux перезавантажує пам'ять


12

Я дивився на надмірну передачу пам'яті в Linux за допомогою /proc/sys/vm/overcommit_memory, і я прочитав кілька статей, які не говорять про те саме.

Цей документ у заголовку "Перехід у неправильному напрямку" продовжує говорити: "значення 1: виконувати перекомітування та 0 (за замовчуванням): не робити", але потім у наступних кількох рядках згадується серед подібних речі, що це насправді не так і що 0 означає "здогадуйтеся про те, наскільки розумне перевиконання". Це означає, що перевиконання пам'яті не вимкнено, використовуючи значення 0, правда?

Він також говорить про те, що 1 вказує на "ніколи не відмовляйте жодному malloc ()", а 2 означає "будьте точні щодо перевиконання - ніколи не здійснюйте віртуальний адресний простір, більший за простір swap плюс частку overcommit_ratio фізичної пам'яті".

Журнал Red Hat , з іншого боку, стверджує, "якщо значення дорівнює 0, то ядро ​​перевіряє, чи є достатньо вільної пам'яті, щоб надати запит на пам'ять для виклику malloc з програми. Якщо пам'яті достатньо, то запит надано. В іншому випадку йому відмовляють і код помилки повертається до програми. " Це звучить точно як відключення перезавантаження.

"Якщо значення встановлено на 1, то ядро ​​надає асигнування вище кількості фізичної оперативної пам’яті та здійснює підкачку в системі, як визначено значенням overcommit_ratio .... Якщо параметр у цьому файлі дорівнює 2, ядро ​​дозволяє проводити всі розподілення пам'яті незалежно від поточного стану розподілу пам'яті. " Щодо значень 1 і 2, це протилежне тому, що сказав попередній доктор, правда?

Хтось знає, що насправді правильно, і якщо є можливість «відключити» перевиконання?


Забув про це! Вибач за це.
Додді

Відповіді:


8

Журнал Red Hat мав перевернуте 1 і 2. Остерігайтеся помилок, які можуть перешкоджати відключенню надмірної роботи таким чином: https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/345601


Правда. Дивіться також останній коментар на saltwebsites.com/2012/install-redis-245-service-centos-6, який підтверджує це.
Флетч
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.