минимальный требуемый объём физической памяти, 8Gb
да я понимаю что тут понадобится скорее 16 или 32 гига, но ведь это полёт колибри
Есть два стиля программирования:
Старая школа придерживалась рационального расхода ресурсов. Новая школа, простоты программирования.
И в свою очередь оптимальность ресурсоёмкости:
Первые, это программный метод. Вторые, это аппаратный. Что в свою очередь влечёт за собой достаточно частые расходы пользователя.
Здесь нужно помнить:
Что когда MemFree по мнению ядра уменьшится до 10-ти процентов и менее, Линукс войдёт в такой жуткий ступор, которого вы никогда не видели. И этот момент нужно предусматривать вне зависимости от имеющейся физической памяти.
Мне видится здесь два взаимодополняющих друг друга метода:
В Линукс кеш может разрастаться до гигабайтов и ядро считает это занятой памятью, а дропать кеш, сам Линукс не умеет. Как только MemFree уменьшится до 30-ти процентов и меньше, сервис-скрипт отслеживающий состояние свободной памяти должен дропать кеш. И этот процесс должен иметь высший приоритет. Это будет гарантировать, что кеш не разрастётся до невероятных размеров.
Другой момент, это отслеживание свободной от приложений физической памяти. Этот процесс должен работать чуть реже чем предыдущий, но тоже должен иметь высокий приоритет:
Как только MemFree уменьшится до 15-ти - 20-ти процентов, сервис earlyoom должен немедленно убить тяжёлое приложение, предотвратив мёртвый ступор Линукс.
И следить, чтобы %iowait не был опасно высоким.
Проще говоря, предусмотреть любые моменты, которые могут привести к отказу в обслуживании. А оно может быть не только последствием DoS-атаки. А последствия исчерпания ресурсов, в Линукс, мне доводилось видеть.
Справедливости ради стоит сказать что существуют легковесные дистрибутивы, вроде IceWM или Костиного IceArch. Но по правде говоря, они для довольно узкого круга пользователей. Как подтверждение тому:
В своё время в рамках клуба разрабатывался консольный live-sysv на базе p8/branch. И если на ZX Spectrum была концепция "быстро, быстрее, ещё быстрее", то основной концепцией при разработке этого консольного дистрибутива, была концепция "проще, ещё проще". В использовании конечно. Специально для этого дистрибутива были написаны ряд программ, ряд решений и собраны пакеты, но дистрибутив не обрёл сколь-нибудь значительного интереса и его разработка заглохла с выпуском 4-той версии.
Ну вот как-то так...