Оптимизация Линукса
StF (StF@mail.ru)
Спецвыпуск Хакера, номер #005, стр. 005-044-1
Бредисловие
В последнее время в разного рода конференциях по линуксу возникает флейм по поводу того, что линукс типа сакс, отстой и полные тормоза и что винда была, есть и будет форева. Ярые сторонники этой мысли при скромном вопросе - а вы линух-то свой оптимизировали вообще? - тут же замолкают и спрашивают, на фига это надо - дескать, и без этого грузится вроде, но тормозит... Не стоит наивно полагать, что в конфигурации по умолчанию все прооптимизировано, ибо она настроена так, чтобы работать как на твоем Пентиуме III с кучей прибамбасов, так и на старой трешке. Я не затрону в этой статье "железной" оптимизации (...из нашей статьи вы не узнаете о том, что вешать на один шлейф CD-ROM и хард нехорошо :o)) - я лишь поговорю об оптимизации на уровне софта. Так что вперед - оптимизировать, оптимизировать и еще раз оптимизировать... :-))
Установка
Возможно, у тебя линукс уже установлен, однако этап установки является одним из важных шагов по оптимизации. В первую очередь, скорость работы зависит от дистрибутива, коих на рынке сейчас великое множество. Каждый из них имеет свои особенности, достоинства и недостатки. Наиболее быстроходным, по моему мнению, является дистрибутив Mandrake, наиболее тормозным - SuSe Linux (как это ни печально). Ядро Mandrake оптимизировано для процессоров Пентиум, так что по сравнению с RedHat он быстрее где-то на 10-15% (по моим субъективным оценкам).
Во время установки (в принципе это можно сделать и после, набрав в командной строке ntsysv) можно убрать ненужные сервисы из автоматического старта, тем самым уменьшая время загрузки линукса. Например, из всего что есть в списке, у меня остались сервисы: cron, atd, network, xfs, xfstt.
Также еще один важный момент - это использование свапа и его размер. Я думаю, все знают, что когда заканчивается оперативная память (и даже несколько раньше ;-)) при запуске очередной проги, неактивная в данный момент программа свапуется, то есть OS копирует память, занятую этой прогой на хард, очищает память и загружает в нее свежезапущенную программу. Ну так вот, важно правильно выбрать размер свапа: если у тебя 16...32 Mb памяти, то размер свапа должен быть в 3-4 раза больше размера памяти, при 32...64Mb размер свапа где-то в 1.25-2 раза больше объема памяти, при количестве памяти более 64 Mb свап уже включают по желанию. Короче: чем меньше памяти, тем больше должен быть свап. Могу сказать, что у меня, при 128 Mb ОЗУ, свап потребовался только ОДИН раз, и обычно ВСЕГДА где-то 20Mb пребывают свободными.
Также попробуй расположить свой своп-диск ближе к началу IDE диска. Hачало жесткого диска физически расположено на внешней части цилиндра. Головка чтения/записи в этом случае cможет покрыть большую область за один оборот диска. Это значит, что может быть записано/считано больше данных за один оборот. У меня разница составляет 3MB/сек в зависимости от местоположения логического диска на IDE устройстве.
Раз мы уж заговорили про память, скажу пару слов о "прожорливом" софте.
Самые памятелюбивые под линухом (в порядке убывания): StarOffice - 128Mb,