Іноді я працюю з величезними скидами даних, які хочу зберегти в пам'яті для обробки. Іноді я неправильно підрахував об’єм пам’яті, яку виробить моя програма, або відладчик множить використання пам’яті на коефіцієнт, що перевищує мою наявну пам’ять.
Кожного разу, коли я запускаю процес, що голодує на пам'ять, саме цього я б очікував від розумної операційної системи: спробуйте з'їсти всю вільну пам’ять, а потім попросити якісь інші несуттєві процеси, щоб відмовитися від потрібної їм пам’яті, тоді написати на поміну.
Ось що для мене робить Ubuntu: з’їжте всю вільну пам’ять, потім попросіть операційну систему поміняти всі основні сервіси (сеанс gnome, термінал, клавіатура), а потім замерзнути і чекати, коли я вийме шнур живлення.
Два питання:
- Як операційна система може припустити, що що-небудь може бути настільки важливим, щоб нормально перестати слухати введення користувачів?
- Як я можу сказати Ubuntu ніколи не обмінюватись важливими послугами та завжди реагувати на введення користувачів, навіть якщо якийсь дурний процес намагається з'їсти більше ресурсів, ніж надає система.
swappiness
налаштування на 10, тобто: vm.swappiness = 10
в /etc/sysctl.conf. Шукайте тут свобідність для отримання додаткової інформації про нього. 2) Якщо заміщення не допомагає ... Хоча ви, можливо, не хочете ... збільште розмір свого swapfile до 1,5x16G і подивіться, чи це допомагає. Тримай мене в курсі. Ура, Al
vm.swappiness=10
має бути додано до sysctl.conf. Досвідчена людина може навіть використовувати команду sysctl на льоту, щоб встановити vm.swappiness = 10, не редагуючи файл sysctl.conf. Ура, Аль пс: чекаю, коли ОП відповість.
swapon
щоб дізнатися)? Ура, Аль