Как включить режим Ultra DMA, выключить PIO. Hardware Interrupts грузит систему

  • 1-09-2011
  • 41 147

Жёсткий диск / Железо и периферия

PIO (Programmable Input/Output) – очень старый и имеющий много существенных недостатков режим работы устройств, при передачи данных жёсткими дисками и приводами CD/DVD задействуется процессор, конечно это уменьшает производительность. В 1990 годах появляется режим обмена данными, использующий прямой доступ к памяти DMA (Direct Memory Access), центральный процессор уже не используется и устройства обращаются напрямую к основной памяти, что увеличивает быстродействие системы в целом в несколько раз.

PIO и DMA

В этой статье мы рассмотрим причины по которым операционная система может перевести устройства в более медленный режим работы PIO и как их устранить. Данный вопрос возник у моего друга, когда его устроили на работу системным администратором на предприятие, где ощущалась острая необходимость обновления компьютерного парка, конечно начальство этого делать не собиралось и пришлось выкручиваться самим. В основном компьютеры были не новые, но со своими обязанностями справлялись. Что интересно, два из них работали в режиме PIO и их надо было как-то переводить в режим DMA

На первом же системном блоке работающем в режиме PIO, мы увидели, что хард подключен с помощью 40-жильного интерфейсного кабеля, для работы DMA нужен 80-жильный шлейф IDE, заменяем и вопрос решается. На другом компьютере, стоял новый жесткий диск, Western Digital интерфейса подсоединения SATA 250 GB и на нём находилась операционная система Windows XP, вторым Seagate Barracuda 80GB, старого интерфейса IDE и оба работали в режиме PIO. Стоило убрать устаревший винчестер IDE и новый SATA работал в режиме DMA.

В принципе старый хард можно было убрать, но вопрос бы остался нерешённым. Прежде чем переустанавливать драйвера на материнскую плату или саму Windows, удалять первичные и вторичные каналы IDE, можно сказать плясать с бубном, я стал вспоминать что где-то, читал о подобной проблеме и о том, как её решили. А решили её банально, умные люди. Два жёстких диска, нового образца SATA и старого IDE будут работать вместе, в режиме DMA, если они одного производителя.

У меня дома был хард Western Digital, интерфейса IDE, на 40GB, мы установили его в системный блок вместо прежнего и они оба заработали в режиме DMA, вот так был решён конфликт устройств. Что ещё можно предпринять в случае если Windows XP перевела работу ваших устройств в более медленный режим PIO, в принципе все методы, которые можно применить, описаны в нашей статье Тормозит жесткий диск, кроме одного, это редактирование реестра, его и рассмотрим сейчас.

1314881397_2.jpgВообще метод рисковый, можно не загрузиться, поэтому сделайте лучше всего бэкап системы, например в Acronis.Нам нужен куст HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesCdfs, далее создаём ключ ErrorControl со значением равным 0 и перезагружаемся и удаляем в диспетчере устройств в пункте IDE ATA/ATAPI контроллеры, все Первичные и Вторичные каналы IDE. Далее следующий кустHKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass{4D36E96A-E325-11CE-BFC1-08002BE10318}, тут нам нужны папки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 Перезагрузка. 1314904521_11.jpg Задайте вопрос Быстрый доступ

Администрирование клиентских ОС Windows > Windows 7
  • Вопрос

  • Обнаружил не давно, что мой DVD в PIO стоит, много искал, как в DMA его перевести ничего не выходило. В реестре записей нет, птичка не активируется, удаление, переподключение не помогало. DVD SATA, все порты SATA включая e-SATA у меня заняты. Получается так, что винт и DVD висят на одном канале и как только винт переводишь в PIO – включается DMA у DVD, включаешь DMA у винта – DVD в PIO уходит, что за прикол я не понял. Как это исправить можно кто-то знает?17 марта 2010 г. 4:55 Ответить | Цитировать

Ответы

  • В поиске пробыл я часа четыре, и перепробовал все, что смог найти, кроме переустановки Win 7. Перевести работу дисков на AHCI у меня так и не вышло, но заменив один из контроллеров IDEна стандартный контроллер ACHI все SATA винты и DVD раскидались по устройству на канал и DVDстал в DMAработать, так что проблема была решена. Если попытаться обновить стандартный контроллер ACHI на тот что на диске от материнской платы то все тот же синий экран в режиме RAIDили темный экран в режиме ACHI, или длительная загрузка в режиме native, конца которой я спустя 10 мин так и не дождался…

    • Предложено в качестве ответа25 марта 2010 г. 16:55
    • Помечено в качестве ответа29 марта 2010 г. 6:29

    25 марта 2010 г. 3:32 Ответить | Цитировать

Все ответы

  • 17 марта 2010 г. 5:51 Ответить | Цитировать
  • что-то я не понял… а это тогда что такое?http://img34.imageshack.us/img34/7185/sata.pngЕсли AHCI не используется, то SATA-диски эмулируются как IDE-устройства.17 марта 2010 г. 6:37 Ответить | Цитировать
  • 17 марта 2010 г. 6:39 Ответить | Цитировать
  • У меня материнская плата ASUS M2R32-MVP переключение дисков в AHCI приводит просто к темному экрану при попытке загрузить ОС. Переключение в RAID приводит к синиму экрану. Качал драйвера на чипсет, менял значения в реестре винда отказывается видить жесткие диски на SATA. Запускал востановление системы, давал ей драйвера, но ОС все равно не хочет увидеть еще 3 винта и СД.21 марта 2010 г. 21:32 Ответить | Цитировать
  • Вот этими рекомендациями пробовали воспользоваться?MCSA21 марта 2010 г. 23:36 Ответить | Цитировать
  • Да, так и стоит в реестре 023 марта 2010 г. 4:28 Ответить | Цитировать
  • Странно. У меня прокатило.Тогда остаётся одно – запуск установки Windows 7 в режиме восстановления Windows. Все проги и документы в этом случае останутся рабочими и процесс установки пройдёт гораздо быстрее. Хотя, документы по старой привычке я бы всё-таки куда-нибудь забэкапил.

    MCSA23 марта 2010 г. 6:47 Ответить | Цитировать

  • Парни, все гораздо проще.

    Вы не хотите использовать поиск.

     

    23 марта 2010 г. 10:06 Ответить | Цитировать

  • В поиске пробыл я часа четыре, и перепробовал все, что смог найти, кроме переустановки Win 7. Перевести работу дисков на AHCI у меня так и не вышло, но заменив один из контроллеров IDEна стандартный контроллер ACHI все SATA винты и DVD раскидались по устройству на канал и DVDстал в DMAработать, так что проблема была решена. Если попытаться обновить стандартный контроллер ACHI на тот что на диске от материнской платы то все тот же синий экран в режиме RAIDили темный экран в режиме ACHI, или длительная загрузка в режиме native, конца которой я спустя 10 мин так и не дождался…

    • Предложено в качестве ответа25 марта 2010 г. 16:55
    • Помечено в качестве ответа29 марта 2010 г. 6:29

    25 марта 2010 г. 3:32 Ответить | Цитировать

Привет всем читателям блога. В этой статье поговорим о том, как восстановить производительность системы. Часто у пользователей возникает проблема очень медленной работы компьютера, особенно при записи и при чтении дисков, либо просто необоснованные «тормоза» системы при работе или загрузке.Почему система зависает читайтездесь Причин возникновения этого может быть великое множество, сегодня предлагаю рассмотреть довольно распространенную – это неверный режим работы 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{4D36E96A-E325-11CE-BFC1-08002BE10318} в ней можно вручную выставить режим DMA. Здесь располагаются несколько папок – 0000, 0001, 0002.0000 – отвечает за сам контролер;0001 – отвечает за Secondary IDE Chanell;0002 – отвечает за Primary IDE Chanell; Открываем папку для нужного нам канала. В ней находятся несколько ключей, для начала выбираем:MasteDeviceTimingModeAllowedSlaveDeviceTimingModeAllowed и проставляем значение равное 0хffffffff. После этого выставляем значение следующих ключей:MasterDeviceTimingModeSlaveDeviceTimingMode в соответствии с следующими данными, в зависимости от поддерживаемого UDMA – режима: После этого перегрузитесь и проверьте результат – должно все нормально работать.Как ускорить и восстановить производительность Windows 10, читайте далееКакая скорость передачи информации в компьютерах, читайте далее Надеюсь эта статья поможет Вам правильно выставитьрежимы PIO и DMA и повысить общую производительность системы.

Компьютер сильно тормозит, работать вообще не возможно. При этом индикатор доступа к HDD постоянно мигает, диспетчер задач показывает загрузку ЦП, а движения никакого? Если включить сторонний диспетчер, например Process Explorer то видно, что процесс Hardware Interrupts грузит систему на 50% и больше. Скорее всего ваш жесткий диск  перешел в режим PIO. Это значит, что при чтении с диска после 6-и ошибок истечения времени ожидания Windows переводит скорость подключения контроллера IDE/ATAPI (HDD) с быстрого режима UDMA на медленный PIO и все начинает тормозить. Как обратно включить режим Ultra DMA?Как включить режим Ultra DMA

1. Чтобы узнать, в каком режиме винт, заходим в диспетчер устройств — IDE/ATAPI контроллеры — первичный(вторичный)  канал и в дополнительных параметрах смотрим режим передачи — если PIO, то это он все тормозит и процесс Hardware Interrupts загружает процессор (у меня было 40-50%). Пробуем поставить режим «DMA если доступно» (причем это проделать во  всех первичных и вторичных каналах) и перезагрузить систему. Немного поработать и проверить опять режим IDE/ATAPI контроллера. Если опять стоит режим PIO, то проверить шлейф винчестера и питание. Если не помогло, то решение простое — поменять винчестер или вариант 2:

2. Отключить контроль ошибок.

В подразделах 0001 и 0002 делаем так:

В этих же разделах проверить

Перезагрузите систему. Вот и все! По идее, у вас должен всегда стоять режим Ultra DMA.

[rekl1]

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

Но (еще одно но ), я вам рекомендую важную информацию копировать на другие носители, так как с HDD у вас проблемы.

Теперь о процессе   Hardware Interrupts — процесс прерываний самого железа. Когда плохой винчестер, то он постоянно сообщает об ошибках чтения, вот и получаются эти прерывания. Процессор начинает заниматься исправлением этих ошибок, а не вашей задачей и начинаются тормоза.

Такое возможно и не только через винчестер. Можно в БИОСе попробовать поменять номера прерываний, но это отдельная история.

ОЦЕНИТЕ,пожалуйста, статью количеством звезд 1 – 5:

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

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

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

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

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

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

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

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

Vklyucheniya-Rezhima-PIO.png

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

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

Rezhim-DMA.png

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

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

Reestor.png

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

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

Используемые источники:

  • https://remontcompa.ru/hard-disk/132-pio-i-dma.html
  • https://social.technet.microsoft.com/forums/ru-ru/4b5e981e-77cd-4aa6-9135-b5e7afbd5464/10551077108810771082108311021095108010901100-pio-10851072-dma
  • https://jumabai.blogspot.com/2015/08/pio-dma.html
  • http://userpk.ru/problem_windows/ultradma/
  • https://datbaze.ru/windows/vklyuchenie-rezhima-dma.html

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
Добавить комментарий