Режим PIO или как бороться с тем что жесткий диск начал тормозить | База полезных знаний

Режим PIO или как бороться с тем что жесткий диск начал тормозить

Если компьютер начинает тормозить, то большинство пользователей, в первую очередь, начинают грешить на процессор, оперативную память или видеокарту, но абсолютно забывают о том, что жесткий диск является не менее важным узлом компьютера и во многих случаях проблемы снижения скорости работы операционной системы связаны именно с ним.

Включение режима DMA

Возможные режимы работы жесткого диска

У HDD есть возможность работать с данными в двух режимах: устаревший PIO и более новый DMA. Они кардинально отличаются принципом своей работы и, соответственно, скоростью обработки данных. Так в режиме PIO все данные обрабатываются при помощи процессора что сильно его нагружает и, как следствие, приводит к падению общей производительности системы. А вот режим DMA – это уже аппаратная обработка данных при которой используются разнообразные ускорители и ЦП в этом процессе не участвует.

Самопроизвольное переключение Виндовс на режим PIO и признаки этого

Windows по умолчанию работает с HDD в скоростном режиме DMA, но иногда из-за специфических ошибок самостоятельно переключается в режим PIO. Причем обратно включить DMA весьма проблематично и сделать это стандартными способами практически невозможно. Характерные признаки того, что Windows переключилась на работу с жестким диском в режим PIO это:

• Падение быстроты работы с HDD в несколько раз;
• Медленная скорость работы системы во время дисковых операций;
• Чрезмерная загрузка процессора (80-90%) при работе с жестким диском;
• Система начала «тормозить» резко. То есть еще час назад все было нормально, а потом резко появились проблемы.

На данный момент жесткий диск — это самое слабое место всей системы и падение его скорости работы даже в два раза приводит к катастрофическим последствиям. Для того чтобы убедиться, что Windows действительно переключилась на работу с жестким диском в медленный режим PIO нужно сделать следующее:

1. Нажмите на значок «Мой компьютер» правой клавишей мыши и выберите пункт «Управление»;


2. Раскройте ветку контроллера и найдите канал, к которому подключен ваш жесткий диск;
3. Нажмите на нем правую клавишу мыши, зайдите в «Свойства» и переключитесь на «Дополнительные параметры»;
4. Посмотрите на строку «Текущий режим передачи». Если там написано «Режим DMA», то значит все нормально, а вот если «Режим PIO», то вам придется проделать несколько несложных операций и вернуть диск в предпочтительный режим работы.

Включаем режим DMA

На самом деле добиться этого можно двумя способами. Первый из них довольно простой и вам потребуется всего лишь удалить неправильно работающее устройство, а затем перезагрузить компьютер. После этого Windows автоматически установит его заново и режим работы устройства вновь переключится на DMA.

Если по какой-то причине у вас не получается включить DMA первым способом, то тогда вам придется приложить немного больше усилий и использовать редактор реестра. Сделайте следующее:

  1. Нажмите Win+R и напечатайте в появившейся строке команду regedit;
  2. Перейдитепопути HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass<4D36Е96A-Е325-11CE-BFC1-08002BE10318>;

  1. Найдите строку MasterDeviceTimingModeAllowed.
  2. Если в колонке значение этой строки написано 0х00000001f, то это значит, что ваш жесткий диск действительно работает в режиме PIO;
  3. Поменяйте значение на 0xffffffff и перезагрузите компьютер.

После этого ваш жесткий диск вновь переключится на режим DMA, а скорость его работы и общая скорость работы системы увеличится в разы.

Основы компьютера и интернета.

Полезный блог для начинающих пользователей компьютера и не только..

Страницы

  • Главная страница
  • О блоге
  • Карта блога

9/30/2020

Как восстановить производительность системы, режимы PIO и DMA

Привет всем читателям блога. В этой статье поговорим о том, как восстановить производительность системы. Часто у пользователей возникает проблема очень медленной работы компьютера, особенно при записи и при чтении дисков, либо просто необоснованные «тормоза» системы при работе или загрузке. Почему система зависает читайте здесь
Причин возникновения этого может быть великое множество, сегодня предлагаю рассмотреть довольно распространенную – это неверный режим работы CD/DVD — ROM’а или жестких дисков, т. е. поговорим о PIO и DMA. Как проверить жесткий диск на ошибки и устранить их читайте здесь

В чем суть и разница PIO и DMA.

PIO и DMA — это два режима работы жестких дисков, в общем случае любого привода.
PIO (Programmable Input/Output) — уже устаревший режим, для работы ему необходимо
задействовать центральный процессор, что приводит к значительной потери производительности.
DMA (Direct MemoryAccess) — современный метод, который минует процессор и
обращается напрямую к оперативной памяти, это позволяет значительно увеличить производительность и избавиться от надоедливых «тормозов».
Режим DMA в различных вариантах уже давно используется в операционных системах Windows 7, 8, а также в 10, однако в Windows XP, часто случается ситуация в которой DMA автоматически переключается в PIO и уже вывести его обратно обычными методами не получится. Из-за чего возникает эта ситуация?
В Windows XP внедрен механизм контроля ошибок, если при чтении с жесткого диска или другого привода слишком часто возникают ошибки, то система автоматически переходит в более медленный режим, где их процент меньше. Однако, Windows XP может перевести в такой режим и нормально работающее устройство.
Как устранить ошибки Windows читайте здесь

И так, проверим режимы работы всех приводов, чтобы система не тормозила..

1. Запускаем консоль «Управление компьютером» – правой кнопкой на «Мой компьютер»

в выпадающем меню выбираем пункт «Диспетчер устройств», либо через
Панель управления. Или Пуск — Выполнить — devmgmt.msc

2. Выбираем «Диспетчер устройств», выбираем IDE ATA/ATAPI контроллеры,

откроется несколько строчек с контроллерами – нас интересуют:
Первичный и Вторичный каналы IDE → заходим поочередно в свойства этих каналов (правой кнопкой на канале, строка «Свойства»), в закладку «Дополнительные параметры»,
здесь выделены две группы «Устройство 0» и «Устройство 1», в каждой есть строки
«Режим передачи» – в ней должно быть выбрано «DMA, если доступно», далее строка «Текущий режим передачи», должно быть что-то типа «Режим ультра DMA:4,

если здесь стоит «Режим PIO», то это как раз наш случай и мы будем его исправлять.
Если везде стоит режим ультра DMA, то у Вас все в порядке и дальнейшие действия можно не продолжать.
3. Для начала попробуем исправить вручную – в каждой строке «Режим передачи» ставим «DMA, если доступно», жмем «ОК» и перезагружаем компьютер. После включения вновь
смотрим режимы работы каналов, если везде стоит DMA, то все в порядке, если остался PIO, то продолжаем дальше.
4. Вновь найдите Первичный и Вторичный каналы IDE и удалите их (правой кнопкой на каждом канале, в списке выбираем «Удалить»). Не бойтесь, все будет нормально работать.
Снова перезагрузите компьютер – Windows XP найдет контроллеры и переведет их в быстрый режим работы, т.е в DMA. Проверьте результат, везде должен стоять режим DMA.
5. Если все перечисленное не помогло и у Вас опять высвечивается «Режим PIO», тогда необходимо будет переставить драйвера для материнской платы – перегрузиться
и вновь проверить результат.
6. Ну и последний пункт, если после всех страданий режим PIO так и не пропал, тогда придется подредактировать в реестре. Хочу отметить – производите какие-либо операции с
реестром очень осторожно и внимательно, любое неправильное действие может привести к полной неработоспособности Вашей системы. Лучше всего сделать заранее копию реестра.
Как настроить Windows XP с помощью реестра читайте здесь

Для начала попробуйте отключить систему контроля ошибок.
Для этого в ветке реестра:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesCdfs,
создайте ключ ErrorControl и установите его значение равным 0.

После этого перегрузитесь и выполните пункт №4.

Действуем дальше: открываем следующую ветку:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass

в ней можно вручную выставить режим DMA.
Здесь располагаются несколько папок — 0000, 0001, 0002.
0000 – отвечает за сам контролер;
0001 – отвечает за Secondary IDE Chanell;
0002 – отвечает за Primary IDE Chanell;
Открываем папку для нужного нам канала. В ней находятся
несколько ключей, для начала выбираем:
MasteDeviceTimingModeAllowed
SlaveDeviceTimingModeAllowed
и проставляем значение равное 0хffffffff.
После этого выставляем значение следующих ключей:
MasterDeviceTimingMode
SlaveDeviceTimingMode
в соответствии с следующими данными, в зависимости от
поддерживаемого UDMA — режима:
UDMA Mode 2 – 0×2010
UDMA Mode 4 – 0×8010
UDMA Mode 5 – 0×10010
UDMA Mode 6 – 0xffff

После этого перегрузитесь и проверьте результат – должно все нормально работать.

Как ускорить и восстановить производительность Windows 10, читайте далее
Какая скорость передачи информации в компьютерах, читайте далее
Надеюсь эта статья поможет Вам правильно выставить режимы PIO и DMA и повысить общую производительность системы.

Настройка жестких дисков с IDE интерфейсом (DMA/UDMA) под Windows ХР

Статья будет полезна тем у кого на ПК установлено несколько жестких дисков с IDE интерфейсом. При неправильной настройке DMA /UDMA для жестких дисков с IDE интерфейсом могут возникать различные проблемы с подозрением на не исправную оперативную память, например застывание/залипание мыши или системы в целом хоть и не факт что DMA /UDMA сему виной.

Для начала немного про PIO /DMA/UDMA способы/режимы доступа к данным на жестком диске:

Прямой доступ к памяти (DMA — Direct Memory Access) — это аппаратная возможность обмена информацией между устройствами, практически не требующая участия центрального процессора (протоколы — Multiword DMA и Ultra DMA), что позволяет во время выполнения передачи данных использовать ресурсы центрального процессора для выполнения других задач. Для режимов Ultra DMA-3 и выше необходим 80-жильный интерфейсный кабель.

Максимальная пропускная способность протоколов передачи данных (Мб/c (Мбайт/сек))

Single-Word DMA 0 = 2.1
Single-Word DMA 1 = 4.2
Single-Word DMA 2 = 8.3

Multi-Word DMA 0 = 4.2
Multi-Word DMA 1 = 13.3
Multi-Word DMA 2 = 16.7

Ultra DMA 0 = 16.7
Ultra DMA 1 = 25.0
Ultra DMA 2 или Ultra DMA 33 = 33.3
Ultra DMA 3 = 44.4
Ultra DMA 4 или Ultra DMA 66 = 66.7
Ultra DMA 5 или Ultra DMA 100 = 100.0
Ultra DMA 6 или Ultra DMA 133 = 133.0

Для работы UDMA устройств требуется соблюдение следующих условий :

Только после полного отключения блокировщика скриптов и рекламы на этом месте появится полезная подсказка/ссылка/код/пример конфигурации/etc!

Настройки DMA /UDMA в BIOS

Настройки DMA /UDMA в Windows XP

  • Intel(R) 82801DB Ultra ATA Controller
    • Поставщик драйвера: Intel
    • Дата разработки: 01.10.2002
    • Версия драйвера: 2.3.0.2160
    • Цифровая подпись: Microsoft Windows Hardware Compatibility Publisher
  • Intel(R) 82801DB Ultra ATA Storage Controller — 24CB
    • Поставщик драйвера: Intel
    • Дата разработки: 14.11.2003
    • Версия драйвера: 5.1.1.1001
    • Цифровая подпись: Microsoft Windows Hardware Compatibility Publisher
  • Intel(R) 82801DB Ultra ATA Storage Контроллер — 24CB
    • Поставщик драйвера: Intel
    • Дата разработки: 01.07.2001
    • Версия драйвера: 5.1.2600.5512
    • Цифровая подпись: Microsoft Windows Hardware Compatibility Publisher

Проблемы с настройкой DMA /UDMA в Windows XP начались с желания обновить драйвера для набора микросхем Intel® с сайта производителя;(. Так например загрузив самые якобы свежие драйвера для набора микросхем Intel® 845 Chipset Family , непосредственно с сайта производителя intel.com, в исполняемом файле infinst_autol.exe для автоматической их установки — после установки онных в системе был установлен драйвер Intel(R) 82801DB Ultra ATA Controller , тот который Дата разработки: 01.10.2002, Версия драйвера: 2.3.0.2160 .

Дальше, по рекомендации Intel® » If you need a Bus Master driver for the newer Intel® 800 series chipsets, we recommend using the Intel® Application Accelerator. «, был установлен Intel® Application Accelerator. Стоит отметить, что при установке Intel® Application Accelerator устанавливается и драйвер Intel(R) 82801DB Ultra ATA Controller , тот который Дата разработки: 01.10.2002, Версия драйвера: 2.3.0.2160 .

Intel® Application Accelerator предоставляет графический интерфейс для управления Intel(R) контроллером но, после перезагрузки никакой акселерации подразумеваемой или явной ощутить не представилось возможным!:)

Мало того, система стала туго/долго входить в спящий режим и это при том, что в так званом Intel® Application Accelerator стоял режим передачи UDMA-5. Дальше больше.

При выходе из спящего режима Windows стал зависать на сообщении «Восстановление Windows» с белой полосой загрузки внизу. Эта проблема проявляется только когда Windows отправлен в спящий режим из под учётной записи обычного (ограниченного в правах) пользователя. Проблема отсутствует если Windows отправлен в спящий режим из под учётной записи пользователя с административными правами (администратора), в таком случае Windows успешно выходит из спящего режима. Но, тем не менее выход в спящий режим был нудно долгим и затяжным процессом — около 30-40 сек.

Ай да Intel®, ай да Application Accelerator, ох и молодчег — как услужил. После сноса Intel® Application Accelerator драйвер Intel(R) 82801DB Ultra ATA Controller , тот который Дата разработки: 01.10.2002, Версия драйвера: 2.3.0.2160 , остался вместе с проблемой спящего режима. Удаление из диспетчера устройств Intel(R) 82801DB Ultra ATA Controller и его каналов с перезагрузкой ничего не дали как и обновление его драйверов с сайта Microsoft.

С другими версиями драйвера Intel(R) 82801DB Ultra ATA Controller кроме как с Дата разработки: 01.10.2002 Версия драйвера: 2.3.0.2160 штука по имени Intel® Application Accelerator работать отказывается и выдаёт:

Пришлось ручками выбирать нужный драйвер Intel(R) 82801DB Ultra ATA Storage Controller — 24CB который Дата разработки: 14.11.2003, Версия драйвера: 5.1.1.1001 , установленный ранее вместе с Windows. Почему такое различие с драйверами достоверно не известно, ведь поставщик один и тот же Intel(R), а версии разные — вероятно старый, добрый банальный чел. фактор.

После восстановления драйвера проблемы со спящим режимом улетучились, а время ухода в спящим режим сократилось до 5-10 сек.!

Мораль сей басни такова: если не хочешь себе геморроя, то не стоит использовать/всякие твикеры и акселераторы даже если они от Intel(R)!, а все настройки выполнять ручками или стандартными средствами администрирования самой ОС.

Только после полного отключения блокировщика скриптов и рекламы на этом месте появится полезная подсказка/ссылка/код/пример конфигурации/etc!

Тонкая настройка DMA /UDMA в Windows XP

Для более тонкой настройки DMA /UDMA в Windows XP нужно нырять в дебри реестра Windows. Паpаметpы контpолёpа хранятся в pеестpе Windows, по адpесy HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass <4D36E96A-E325-11CE-BFC1-08002BE10318>. Внyтpи этой ветки находится 4 каталога:

Только после полного отключения блокировщика скриптов и рекламы на этом месте появится полезная подсказка/ссылка/код/пример конфигурации/etc!

Выбираем каталог который отвечает за нужный нам канал, и заходим в него. Каждому из каналов (yстpойств), соответствуют по два ключа, MasterDeviceTimingModeAllowed и SlaveDeviceTimingModeAllowed (или UserMasteDeviceTimingModeAllowed и UserSlaveDeviceTimingModeAllowed, если pежимы выбиpались вpyчнyю), определяющие максимальный режим работы Master и Slave yстpойств, yстановленных на контpолёpе, и MasterDeviceTimingMode и SlaveDeviceTimingMode, котоpые опpеделяют в каком pежиме pеально pаботают Slave и Master yстpойства.

Для того что бы pазpешить использовать yстpойство в UDMA pежиме, MasterDeviceTimingModeAllowed (или Slave:, зависит от того к чемy диск подключен) должно иметь значение 0хffffffff. Если оно бyдет 0x0000001f, то yстpойство сможет pаботать только в PIO pежиме. Убедившись что этот ключ стоит пpавильно, выставляем MasterDeviceTimingMode, опpеделяя в каком pежиме должен pаботать пpивод.

Возможны следyющие ваpианты (цифpы в HEX) значений в шестнадцатеричной системе:

Только после полного отключения блокировщика скриптов и рекламы на этом месте появится полезная подсказка/ссылка/код/пример конфигурации/etc!

Кроме этого, UDMA Mode 4 можно включить 0xffff, а UDMA Mode 50xfffff. Выставляйте нyжное, и пеpезагpyжайтесь, диск должен пеpейти в тpебyемый pежим

ВНИМАНИЕ!: Для Windows 7 ключи в реестре от ХР не совпадают.

Проблемы с DMA /UDMA на жестких дисках с IDE интерфейсом

Исходя из расшифровки DMA (DMA — Direct Memory Access) это аппаратная возможность обмена информацией между устройствами и основной памятью (RAM), практически не требующая участия центрального процессора, тобишь возможность обмена данными при помощи прямого доступа к оперативной (основной) памяти.

Так как оперативная память является основной и от её достатка и оперативности зависит скорость работы всех приложений и отображения результата их работы на экране, то при её нехватке и одновременном доступе DMA /UDMA устройства к памяти ВОЗМОЖНО (не факт) могут возникать проблемы типа хаотичного перемещения указателя мыши, застывания мыши/изображения и т.п., а особенно эти проблемы могут проявляться при наличии в системе нескольких DMA /UDMA устройств!

Лечение проблем с DMA /UDMA на жестких дисках с IDE интерфейсом

Первое на что следует обратить внимание, так это на то, что многие очень часто ставят на один канал жесткий диск как Primary master и другое, более медленное устройство, типа CD-ROM, как Primary slave. Но так как IDE может обращаться только к одному устройству на канале одномоментно, то снижается производительность системы в целом. Так что Лучше не иметь slave-устройств в принципе.

На каком IDE диске ограничивать DMA /UDMA когда все на одном IDE канале?

Также в случае когда в системе используется несколько модулей оперативной памяти разной ёмкости (256/512/1024 МВ и т.д.), рекомендуется на первое место/слот (DIMM1) устанавливать тот модуль который имеет наибольший объем памяти! Проверить где и какой модуль установлен можно при помощи программы » EVEREST > Системная плата > SPD (смотреть DIMM1/DIMM2) «.

Автор: Олег Головский

Рекомендуемый контент

А тут же ж мог быть рекомендуемый контент от гугла 🙂 Для отображения рекомендуемого контента необходимо в браузере разрешить выполнение JavaScript скриптов, включая скрипты с доменов googlesyndication.com и doubleclick.net

Вы не любите рекламу!? Напрасно!:) На нашем сайте она вовсе ненавязчивая, а потому для нашего сайта можете полностью отключить AdBlock (uBlock/uBlock Origin/NoScript) и прочие блокировщики рекламы! AdBlock/uBlock может препятствовать нормальной работе системы поиска по сайту, отображению рекомендуемого контента и прочих сервисов Google. Рекомендуем полностью отключить блокировщик рекламы и скриптов, а также разрешить фреймы (aka iframe).

http://datbaze.ru/windows/vklyuchenie-rezhima-dma.html
http://jumabai.blogspot.com/2015/08/pio-dma.html
http://remoteshaman.com/windows/xp/nastrojka-zhestkix-diskov-s-ide-interfejsom-dmaudma

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *