Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

articles:overxp [2017/09/05 02:55] (текущий)
Строка 1: Строка 1:
 +====== overXP ======
 +<​sub>​{{overXP.odt|Original file}}</​sub>​
 +
 +====== турбо наддув для XP ======
 +
 +крис касперски ака мыщъх no-email
 +
 +**Windows ****– создание неторопливое. Все лишние службы остановлены,​ диск только что дефрагментирован,​ а она все тормозит. Эта статья открывает дверь в мир высоких энергий и больших скоростей,​ радикально увеличивая производительность операционной системы и практически ничего не требуя взамен. В основном мы будем говорить о линейке ****Windows NT**** (к которой принадлежат ****W****2****K****,​ ****XP**** и 2003), но и пользователи 9****x**** найдут для себя кое-что интересное**
 +
 +===== введение =====
 +
 +Казалось бы, тема оптимизации Windows выжата досуха и ничего нового никому предложить не удастся. Ан нет! Как раз наиболее значимые приемы разгона остаются в тени, не выходя за границы прокуренных хакерских кулуаров. Сейчас мы расскажем о шести из них.
 +
 +===== оптимизация загрузки =====
 +
 +Даже на быстрых машинах,​ загрузка операционной системы занимает весьма продолжительное время, что не может не раздражать. Специалистам известно,​ что лучший способ ускорить загрузку Windows – не загружать ее вообще. Никаких шуток! Если ваш компьютер поддерживает ACPI и галочка "​после приостановки перейти в спящий режим"​ в Панели Управления  Электропитание  Спящий Режим взведена,​ то при выборе пункта Переход в Ждущий Режим в Завершении Работы операционная система сбросит содержимое оперативной памяти на жесткий диск. А затем, после включения питания,​ вновь вернется в свое исходное состояние,​ как будто бы никакого отключения вообще не происходило.
 +
 +Во-первых,​ вы экономите время на открытии приложений,​ а во-вторых,​ подготовка системы к работе происходит по меньшей мере в три-пять раз быстрее ее нормальной загрузки. Естественно,​ на диске должно быть свободно по меньшей мере 256 Мб памяти и он должен быть дефрагментирован,​ в противном случае,​ разница в скорости окажется не так велика.
 +
 +{{overxp_Image_0.png}}
 +
 +Рисунок 1 активация сброса состояния системы на диск
 +
 +===== оптимизация профиля =====
 +
 +При хроническом недостатке оперативной памяти операционная система вынуждена интенсивно обмениваться с файлом подкачки,​ съедающим всю производительность. Чем больше оперативной памяти – тем лучше. Для комфортной работы с Windows XP требуется по меньшей мере 256 Мб. Уточнить эту цифру поможет Диспетчер Задач, вызываемый по ALT-CTRL-DEL. В идеале,​ пиковое выделение памяти не должно превышать количество физической памяти,​ установленной в материнскую плату, но даже при этом диск не прекратит стрекотать,​ оттягивая на себя львиную долю производительности.
 +
 +{{overxp_Image_1.png}}
 +
 +Рисунок 2 измерение количества потребляемого системой памяти с помощью Диспетчера Задач
 +
 +Запустив файловый монитор Марка Руссиновича,​ который можно бесплатно скачать с сайта http://​www.sysinternals.com,​ мы обнаружим,​ что все дело в реестре и во временных файлах,​ к которым система обращается даже тогда, когда ничего не происходит. В спокойном состоянии в среднем насчитывается до 100 дисковых запросов в секунду и хотя большая их часть оседает в кэше и до винчестера не доходит,​ нормальной такую ситуацию назвать нельзя. Ну не умеет Windows грамотно распоряжается оперативной памятью!
 +
 +Установка виртуального диска ускоряет работу системы от десяти до пятидесяти (!) раз. Это кажется,​ невероятным,​ но это факт. Разумеется,​ количество установленной памяти должно составлять не менее 256 – 512 Мб, в противном случае вместо разгона мы получим торможение. К сожалению,​ в комплект штатной XP поставки драйвер виртуального диска не входит и его приходится добывать в Интернете самостоятельно,​ набирая в своем любимом поисковике "​RAMDRIVE"​ или "​RAMDISK"​. Среди кучи откровенного барахла обращает на себя внимание RamDiskPlus от компании Super Speed,​ который кстати говоря,​ автоматически сохраняет свое содержимое на жестком диске при выключении питания.
 +
 +{{overxp_Image_2.jpg}}
 +
 +Рисунок 3 архитектора виртуального ram-диска
 +
 +Сам по себе виртуальный диск еще не обеспечивает высокого быстродействия системы и реальное увеличение производительности достигается только после перемещения вашего пользовательского профиля. Войдите в систему под администратором и скопируйте папку Document And Setting\Ваше Имя на виртуальный диск. Затем, в Панели Управления,​ щелкнув по иконке "​Пользователи и Пароли",​ во вкладке "​Дополнительно"​ нажмите одноименную кнопку и дважды кликните по своему пользователю. В появившемся диалоговом окне перейдите к вкладке "​Профиль"​ и укажите новый путь к профилю. Теперь:​ в Панели Управления  Система  Дополнительно  Переменные Среды найдите переменные TMP и TEMP, перенаправив их на папку TEMP виртуального диска.
 +
 +Перезагрузившись,​ вы сможете насладиться многократно возросшим быстродействием,​ однако,​ не забывайте,​ что теперь при зависании системы,​ неожиданной перезагрузке или отключении питания,​ некоторые из ваших данных могут быть утеряны,​ поэтому,​ будет не лишним обзавестись UPS.
 +
 +===== изгнание демонов из дисковой подсистемы =====
 +
 +Неоправданно низкая производительность жесткого диска зачастую объясняется большим количеством ошибок передачи данных по интерфейсу ATA-100, который в отличии от своих предшественников,​ умеет контролировать целостность циркулирующей по нему информации и при возникновении ошибки,​ повторять операцию пересылки повторно. В запущенных случаях данные удается передать только с сотой попытки! Все ошибки автоматически протоколируются системой мониторинга S.M.A.R.T., статус которой отображают многие тестовые программы (например,​ AIDA32, бесплатную копию которой можно скачать по адресу http://​www.aida32.hu/​). Зайдите в Хранение Данных SMARTC7 UltraATACRCErrorRate и посмотрите на значение счетчика ошибок. В идеале таковых не должно быть вообще.
 +
 +{{overxp_Image_3.png}}
 +
 +Рисунок 4 подсчет количества ошибок передачи данных по интерфейсу ATA-100 с помощью AIDA32
 +
 +Большое количество ошибок указывает либо на аппаратную несовместимость вашего винчестера с данном материнской платой,​ либо на его неправильное подключение. Проверьте – не перекручен ли ленточный кабель и при необходимости укоротите его. Один конец кабеля должен быть подключен к контроллеру,​ другой – к жесткому диску. Никогда не подключайте винчестер к центральному разъему,​ оставляя болтаться образовавшуюся "​соплю"​ на ветру. Это увеличит интенсивность паразитных наводок и только ухудшит ситуацию. Воткните ее во второй винт или обрежьте.
 +
 +===== оптимизация квантов времени =====
 +
 +Квантом – называется количество процессорного времени,​ отпущенного потоку,​ по истечении которого,​ Windows автоматически перебрасывает нить управления на другой поток. Чем короче квант – тем выше накладные расходы на переключения контекста и ниже эффективность использования кэш-памяти. С другой стороны,​ с ростом длины кванта ухудшается "​плавность"​ многозадачности,​ – потоки начинают двигаться рывками,​ подолгу простаивая в очереди на выполнение.
 +
 +ОткройтеследующуюветвьреестраHKLM\SYSTEM\CurrentControlSet\Control\PriorityControl\Win32PrioritySeparation. Для оптимизации системы под выполнение одиночных приложений (например,​ динамичных игр с продвинутой графикой) измените текущее значение на 16 (шестнадцатеричное),​ а для работы с большим количеством фоновых приложений более предпочтительным окажется 2A (шестнадцатеричное).
 +
 +После перезагрузки изменения вступят в силу. Имейте ввиду, что для выполнения этой операции вы должны иметь правда администратора.
 +
 +{{overxp_Image_4.png}}
 +
 +Рисунок 5 ручная оптимизация квантов времени
 +
 +===== разводка устройств по PIRQ/IRQ =====
 +
 +Аппаратно PCI-шина поддерживает до 4 прерываний,​ обозначаемых латинскими буквами A, B, C, D или номерами PIRQ, что расшифровывается как PCIIRQ, причем,​ внутренне PCI-устройства,​ такие например,​ как USB-контроллер,​ беззастенчиво используют прерывания из общего фонда, поэтому количество свободных прерываний тает прямо на глазах.
 +
 +Несмотря на то, что совместное использование одного PCI-прерывания несколькими устройствами является вполне нормальным состоянием,​ этого все же лучше избегать,​ т. к. система,​ не знающая откуда пришло прерывание,​ вынуждена опрашивать все устройства по очереди. Теоретически это требует нескольких десятков таков системной шины (или порядка тысячи тактов процессора),​ практически же… на рынке присутствует большое количество устройств не вполне соответствующих спецификациям и вызывающих обвальное падение производительности при разделении своего прерывания с другими устройствами.
 +
 +Речь идет отнюдь не о линях IRQ, настраиваемых в Диспетчере Устройств,​ а именно об аппаратных прерываниях. Дешевые материнские платы жестко закрепляют за каждым PCI-слотом свой набор прерываний,​ более дорогие модели позволяют манипулировать прерываниями из BIOS. Варьируя настройки или переставляя платы из одного слота в другой,​ добейтесь наибольшей производительности системы (при устранении конфликтов обычно она увеличивается в несколько раз), при этом следует учитывать,​ что ACPI-контроллер имеет тенденцию вешать все PCI-прерывания на одно IRQ (обычно это IRQ 9). Если это так, зайдите в Диспетчер Задач и присвойте каждому из устройств свою линию прерывания. Вопреки распространенному мнению,​ приоритет прерывания (чем ниже номер IRQ тем выше приоритет) на производительность системы не оказывает ровным счетом никакого влияния (правда,​ неудачная расстановка приоритетов может приводить к конфликтам различной степени тяжести,​ но это тема отдельного разговора). Правда не факт, что эти изменения возымеют действие. ACPI – контроллер виртуализует IRQ и отображаемые Диспетчером Устройств значения могут не соответствовать действительным. К сожалению,​ отключение ACPI требует переустановки системы и лишает вас возможности сброса содержимого оперативной памяти на диск, о котором писалось выше. Так что использовать ACPI или нет,​ – решать вам.
 +
 +{{overxp_Image_5.png}}
 +
 +Рисунок 6 ACPI-контроллер вешает все устройства на одно прерывание,​ что не есть хорошо
 +
 +===== упреждающая загрузка динамических библиотек =====
 +
 +Windows по большому счету это просто куча динамических библиотек (они же DLL – от DynamicLinkLibrary). Большинство динамических библиотек загружаются и выгружаются на лету – по мере возникновения в них необходимости,​ однако,​ специальный ключ реестра хранит имена DLL, подключаемых еще на стадии загрузки системы и никогда не выгружаемых вплоть до завершения работы с ней. С одной стороны,​ это увеличивает время загрузки Windows и объем потребляемой памяти,​ с другой – ускоряет время загрузки самих приложений. Но, если Windows в идеале загружается не чаще одного раза в день, то открывать/​закрывать приложения приходится многократно.
 +
 +Запустите Редактор Реестра и откройте следующую ветвь: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\KnownDLLs,​ в которой,​ как вы видите "​прямым текстом"​ перечислены имена библиотек,​ известных системе. "​Имя"​ – это имя библиотеки без расширения,​ а "​значение"​ – имя библиотеки с расширением и, при необходимости,​ еще и с путем, если он отличается от каталога System32. Прописав сюда наиболее интенсивно используемые DLL своих фаворитных приложений,​ вы сэкономите немало времени! Определить какие конкретно динамические библиотеки использует данного приложение вам поможет уже упомянутый Файловый Монитор Марка Руссиновича или утилита dllviewer, которую можно скачать с его же сайта.
 +
 +{{overxp_Image_6.png}}
 +
 +Рисунок 7 раздел реестра,​ отвечающий за упреждающую загрузку динамических библиотек
 +
 +{{overxp_Image_7.png}}
 +
 +Рисунок 8 Файловый Монитор за работой
 +
 +===== заключение =====
 +
 +Оптимизация Windows еще не закончена и она хранит большое количество секретов,​ о которых мы расскажем в следующий раз.
 +
 +