Оптимизация Линукса
StF (StF@mail.ru)
Спецвыпуск Хакера, номер #005, стр. 005-044-4
X-Windows
Не секрет, что для иксов лучше иметь не менее 16 мег оперативки. Такого же мнения придерживаются и несколько Desktop & Windows менеджеров :0). Самые навороченные из них это AfterStep, WebMaker, IceWM, BlackBox. Что касается моего любимого KDE - то он несколько не торопится при старте на слабой машине. Есть шанс ему помочь, найдя стартовый скрипт - startkde (у меня он лежит в /usr/bin) - и закомментировав строчки "'sleep 2'", говорящие о паузе в две секунды между стартами разных KDE сервисов. Что касается Gnome+Enlightment, то здесь явно ничем хорошим не пахнет, так что лучше не мучить себя и компьютер. На 32 метрах памяти все вышеперечисленное в этом разделе работает весьма сносно.
Видеокарта
Для ускорения видеокарты в Х можно использовать следующую фичу: требуется процессор pentium pro :0).
Смотрим в /proc/pci (cat /proc/pci) :
VGA compatible controller: S3 Inc. ViRGE/DX or /GX (rev 1).
Medium devsel. IRQ 7. Master Capable. Latency=40. Min Gnt=4.Max Lat=255.
Non-prefetchable 32 bit memory at 0xf8000000 [0xf8000000].
Видим нашу видеокарту. Теперь мы попробуем увеличить скорость записи в
Устройство, используя 'write-combining'. Команда, разрешающая 'write-combining' в 4-х меговую область, начинающаяся с 0xf8000000 : 'echo \"base=0xf8000000 size=0x400000 type=write-combining\" >> /proc/mtrr'.
Теперь в /proc/mtrr мы видим следующую новую строчку:
reg02: base=0xf8000000 (3968MB), size= 16MB: write-combining, count=1 .
Если понадобится, можно запретить использование 'write-combining': 'echo \"disable=2\" /proc/mtrr'. Более подробно об этом можно посмотреть в
/usr/src/linux/Documentation/mtrr.txt.
Также можно поиграть с нестандартными разрешениями карточки, выжав из
нее все - но тут я не советчик, ибо этого САМ не пробовал. Понятно, что перед
этим неплохо почитать доку на свою карточку.
В общем и целом
В оставшейся части я дам несколько общих советов для ускорения Linux'a.
1) Отредактировать inittab, уменьшив число виртуальных консолей - особенно, если можно запускать X-terms. Я еще не видел человека, который бы работал одновременно с шестью консолями и X-Window.
Найти следующую строчку:
c1:1235:respawn:/sbin/agetty 38400 tty1 linux
(Обычно их 6 с c1 по c6) и закомментировать ненужные (только случайно
не закометируй все ;))
2) Убрать из /dev все ненужные записи - особенно эту тьму разных pty.
Кому это надо, когда есть PseudoTerminal Miltiplexor.
3) Отключить inetd/xinetd - зачем он нужен, если нет насущной потребности, скрываясь от полиции в Интернет-кафе "Зимбабве", стереть с жесткого диска важный налоговый документ, подключившись по telnet.
4) Убрать лишние шрифты XFree86, поставить шрифты 75dpi, 100dpi,
Speedo, PEX, Type1, misc, cyrillic. Реально IMHO нужны 75dpi, misc,
Type1. Шрифты cyrillic - вообще довольно низкого качества, гораздо лучше Cyr-RFX (75dpi, misc со встроенной кириллицей).
5) Отключить все ненужные сетевые сервисы: sendmail, nfsd, httpd.