Обнаружена windows x64 режим pio поддерживается только в windows x86

Если компьютер начинает тормозить, то большинство пользователей, в первую очередь, начинают грешить на процессор, оперативную память или видеокарту, но абсолютно забывают о том, что жесткий диск является не менее важным узлом компьютера и во многих случаях проблемы снижения скорости работы операционной системы связаны именно с ним. Содержание:1 Включение режима DMA1.1 Возможные режимы работы жесткого диска1.2 Самопроизвольное […]

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

Содержание:

  • 1 Включение режима DMA
    • 1.1 Возможные режимы работы жесткого диска
    • 1.2 Самопроизвольное переключение Виндовс на режим PIO и признаки этого
    • 1.3 Включаем режим DMA

Включение режима 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», то вам придется проделать несколько несложных операций и вернуть диск в предпочтительный режим работы.

Включения Режима PIO

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

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

Режим 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, а скорость его работы и общая скорость работы системы увеличится в разы.

Тормозит жесткий диск TOSHIBA MQ01ABD100 SATA Disk Device

Тогда подскажете в каком он состоянии??

Часто такая ситуация проявляется на чипсетах Intel или если вы не устанавливали драйверы от материнской платы и Windows работает со своими «стандартными» драйверами для контроллеров устройств хранения.

Из-за какого-то программного или аппаратного сбоя Windows решила, что надо перевести ваш HDD в более «стабильный» медленный режим работы (вместо UDMA в PIO). Делает она это изменением параметра в реестре. Изменение этих параметров в «Диспетчере устройств» НЕ принесет пользы — они снова будут становиться «только PIO». Но лечение есть! 😉

Надо запустить regedit и найти в нем ветку HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass

Внутри этой ветки находятся подпапки 0000, 0001, 0002 и тд.

Необходимо пройтись по всем этим подпапкам и найти в них параметры, которые называются примерно так:
MasteDeviceTimingModeAllowed
SlaveDeviceTimingModeAllowed
UserMasteDeviceTimingModeAllowed
UserSlaveDeviceTimingModeAllowed
Параметры типа MasteDeviceTimingMode (без Allowed на конце) означают в каком режиме реально сейчас работает устройство подключенное к этому каналу — его менять не надо (у вас вероятно 0х0000001f или 0х00000010 и тд).
А вот параметр типа MasteDeviceTimingModeAllowed (заканчивающийся на Allowed) означает предельно допустимый режим для вашего HDD (SSD и тд) и его необходимо изменить на 0хffffffff — и Windows при загрузке будет правильно определять необходимый режим.
После поиска и изменения соответствующих параметров во всех подпапках этой ветки реестра (см. выше) необходимо перезагрузиться обычным способом.

Причинами подобных сбоев могут быть «плохие» сектора на HDD, плохой контакт кабелей SATA и/или питания HDD, сбойный блок питания, недодающий мощности или непреднамеренно отключающий питание SATA, неисправная материнка или еще чего. 🙁

Если жёсткий диск стал внезапно тормозить. Самопроизвольное включение режима PIO и как с ним бороться

23.07.13 20:36 / Обновлено 20.09.14 03:32 | Версия для печати Windows | Твики | ♼REC | Железо

Винчестер подключается к материнской плате кабелем. Этот кабель, по сути, соединяет электронику винчестера с контроллером дисков на материнской плате. Тип кабеля (IDE, SATA, . ) не имеет значения. Да, у каждого типа кабеля есть свои физические ограничения по передаче данных, но это указывает лишь на то, под какой поток данных затачивалось «железо» на его концах.

Дисковый контроллер умеет работать с дисками в нескольких разных режимах. Электроника винчестера, в свою очередь, тоже поддерживает разные режимы работы с дисковым контроллером. Наборы режимов диска/контроллера могут несовпадать и, чаще всего, именно так и бывает.

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

Режимы передачи данных: PIO и DMA/UDMA

Для многих понятнее игровые аналогии, поэтому воспользуюсь одной из них.

Все знают, что 3D бывает программное (Software Rendering) и аппаратное (Direct3D, OpenGL).

В программном 3D каждый кадр высчитывается процессором, а видеокарта отвечает только за вывод полученной картинки на экран. Трёхмерные просчёты используют дикое количество математики, что сильно нагружает процессор, выдавая при этом достаточно посредственный результат. Почему так происходит? Дело в том, что Центральный Процессор (ЦП) — он универсальный, то есть, приспособлен под вычисления абсолютно разного рода. Трёхмерные вычисления представляют собой лишь узкий класс задач, которые способен выполнять ЦП. И получается, что универсальный ЦП работает с графикой неоптимально.

В случае аппаратного 3D процессор накидывает в видеокарту примитивы (текстуры, модели и т.д.) и даёт команды на их обработку, а построение сцены и красивые эффекты делает уже сама карта — с помощью своего, графического спецпроцессора (GPU, ГП), заточенного как раз под такие задачи. Вычисления на нём идут заметно быстрее, при этом центральный процессор не нагружается.

Так вот, PIO — это типа программного 3D: вся работа с диском осуществляется через ЦП. Очень медленно и ресурсоёмко.
А DMA — аппаратная обработка данных, использующая всевозможные «ускорители». Лишь бы они поддерживались контроллером и самим диском.

Windows

Винда работает с дисками в режиме DMA. Ну, как правило.

При определённых условиях (например, если произошло несколько специфических ошибок чтения-записи) винда переключает режим работы с диском в PIO. Сразу, намертво и без возможности реабилитации.

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

Симптомы того, что винда переключила работу с винчестером в режим PIO
  • Система начала жутко тормозить на дисковых операциях. Скорость работы с диском упала в 2-3 раза.
  • При дисковых операциях стал непомерно грузиться процессор. В «Диспетчере задач Windows» процесс «Система» (или процесс «Interrupts» в утилите «Process Explorer») занимает 80-90% процессорного времени.
  • Резкость и внезапность происходящего. Ещё вчера / 5 минут назад система работала как обычно, а тут — на тебе.

В современных реалиях, когда жёсткие диски являются самыми медленными устройствами компьютера, «узким местом», тормозящим работу программ — даже двукратное падение их скорости может стать катастрофическим.

Убеждаемся, что винда переключила работу с винчестером в режим PIO

Открываем «Диспетчер устройств» в «Консоли управления» компьютером.
ПКМ на «Мой компьютер» (на рабочем столе или в панели «Пуск», не имеет значения) → «Управление».

Раскрываем в дереве ветку контроллера диска («IDE ATA/ATAPI контроллеры») и находим канал, к которому подключен наш винт.
Давим ПКМ → «Свойства» (или просто делаем двойной клик левой кнопкой мыши)

Если «Режим передачи» установлен в «DMA, если доступно», а по факту винчестер работает в режиме PIO (см. картинку ниже), то всё плохо, и это наш случай.

Возвращаем режим DMA/UDMA

Для исправления ошибки достаточно удалить инвалидное устройство и установить его заново. Сделать это можно из того же «Диспетчера устройств».

Или лезем в реестр.

В реестре («Пуск» → «Выполнить» → regedit ) надо зайти в ветку по адресу:

0000 — настройки самого контроллера.
0001 — настройки первичного канала (Primary IDE Chanell).
0002 — настройки вторичного канала (Secondary IDE Chanell).

MasterDeviceTimingModeAllowed
— максимальный по скорости режим, в котором разрешено работать основному (Master) устройству в канале. По сути, значение ключа представляет собой бинарную маску. Ограничивает выбор «Режимов передачи» из диалогового окна.

MasterDeviceTimingMode
— текущий режим работы основного устройства в канале. Соответствует параметру «Текущий режим передачи» диалогового окна.

Те же самые ключи, начинающиеся со Slave , а не Master действуют для подчинённого устройства в канале:

  • SlaveDeviceTimingModeAllowed
  • SlaveDeviceTimingMode

Если в диалоговом окне «Тип устройства» был выбран вручную, соответствующие настройки хранятся в ключах с префиксом User:

  • UserMasterDeviceTimingModeAllowed
  • UserMasterDeviceTimingMode
  • UserSlaveDeviceTimingModeAllowed
  • UserSlaveDeviceTimingMode

Значение любого ключа [. ]DeviceTimingModeAllowed должно быть равно 0xffffffff . Это означает, что выбранное устройство может работать в любом режиме передачи данных, без ограничений.

Если значение ключа равно 0x00000001f (HEX 1f), то устройство может работать только в режиме PIO.

Меняем значение нужного [. ]DeviceTimingModeAllowed на » ffffffff » и перезагружаемся.

Дополнительно

Коды режимов работы:

0х0000001f — PIO
0x00000410 — Multi-Word DMA Mode 2 и PIO 4.
0x00002010 — UDMA Mode 2 (ATA33).
0x00008010 — UDMA Mode 4 (ATA66). Для включения можно использовать маску » 0x0000ffff »
0x00010010 — UDMA Mode 5 (ATA100). Для включения можно использовать маску » 0x000fffff «

Версии ATA/ATAPI (. 4,5,6. ) — это версии ATA/ATAPI спецификации утверждаемые комитетом X3T13. А PIO (Programmed Input-Output) и DMA/UDMA — это режимы передачи данных. Одно с другим никак не связано. Режимы PIO подразумевают обязательное задействование CPU при передаче данных — при чтении данных с носителя, CPU их читает из порта контроллера (команда IN процессора), при записи — CPU пишет в порт (команда OUT). При DMA (UDMA) режимах CPU только инициализирует пересылку (а предварительно еще и контроллер DMA) — всю остальную работу выполняют контроллер DMA (Direct Memory Access) и контроллер IDE (в режиме Bus Master). Понятно что последний вариант выгоднее — меньше загрузка процессора — поэтому PIO режимы после 1995 года никто больше не развивал, и в утвержденных ATA/ATAPI спецификациях (мне все равно, кто чего предлагал на заседаниях X3T13) PIO-5 никогда не было. А UltraDMA 44 — это UltraDMA 3 — этот режим существует, просто им почти никто не пользуется (так как его поддержка есть везде, где есть UDMA 4 — 66). Кстати ATA/ATAPI-6 еще не утвержден, этот документ существует в предварительной версии, так называемый working draft, и возможно еще будет меняться (но вряд-ли туда добавят PIO-5). Последний из утвержденных — версии 5. И UDMA66 появилось при ATA-4, а UDMA100 — при ATA-5. В спецификациях есть рекомендации по применению режимов передачи данных, а вовсе не обязательные требования их поддержки. Есть винты соответствующие ATA-5, но поддерживающие только UDMA66 (например Quantum Fireball+ LM). А еще есть CD-ROM’ы с поддержкой UDMA33 и с соответствием ATAPI-4 и 5. Начиная с версии 4, спецификации ATA и ATAPI объединили в один документ.

Это происходит если XP обнаруживает что устройство не стабильно работает в выбранном для него режиме. Определяется это по количеству ошибок чтения, получаемых с привода. Обычно это означает что привод находится в плохом состоянии, и про правде ему надо бы на покой. Но выбрасывать вроде бы работающий привод жалко, поэтому такие устройства можно встретить в машинах наших читателей. Хотя, благодаря механизмам контроля ошибок, многие такие приводы могут работать долго, счастливо и беспроблемно, не смотря на мнение XP о них. Единственное, что портит кровь их владельцам, это постоянные тормоза системы, из за PIO режима. У меня нет полной уверенности, как работает и чем управляется система контроля ошибок в XP, поэтому я не могу гарантировать что этот совет сработает во всех случаях. Но попробовать можно.
Для отключения режима отслеживания ошибок можно попробовать выставить в 0 ключ ErrorControl расположенный по адресу HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesCdfs

Для винчестеров данная рекомендация не работает, не помогает от вылетов в PIO.

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, в принципе все методы, которые можно применить, описаны в нашей статье Тормозит жесткий диск , кроме одного, это редактирование реестра, его и рассмотрим сейчас.

Содержание

  1. Проверил SSD И HDD диски программой Виктория(последняя версия) вышла ошибка,подскажите,как исправить
  2. Режим PIO или как бороться с тем что жесткий диск начал тормозить
  3. Включение режима DMA
  4. Возможные режимы работы жесткого диска
  5. Самопроизвольное переключение Виндовс на режим PIO и признаки этого
  6. Включаем режим DMA
  7. Warning windows x64 detected pio mode supported on windows x86 only что за ошибка
  8. Если жёсткий диск стал внезапно тормозить. Самопроизвольное включение режима PIO и как с ним бороться
  9. Режимы передачи данных: PIO и DMA/UDMA
  10. Windows
  11. Симптомы того, что винда переключила работу с винчестером в режим PIO
  12. Убеждаемся, что винда переключила работу с винчестером в режим PIO
  13. Возвращаем режим DMA/UDMA
  14. Дополнительно
  15. Режим PIO или как бороться с тем что жесткий диск начал тормозить
  16. Включение режима DMA
  17. Возможные режимы работы жесткого диска
  18. Самопроизвольное переключение Виндовс на режим PIO и признаки этого
  19. Включаем режим DMA
  20. Как включить режим Ultra DMA, выключить PIO. Hardware Interrupts грузит систему
  21. Warning windows x64 detected pio mode supported on windows x86 only что за ошибка
  22. Основы компьютера и интернета.
  23. Страницы
  24. 9/30/2020
  25. Как восстановить производительность системы, режимы PIO и DMA

Проверил SSD И HDD диски программой Виктория(последняя версия) вышла ошибка,подскажите,как исправить

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Вышла последняя бета-версия Windows 8 и Windows Server 8
Вслед за бета-версиями Windows 8 и Windows Server 8 Microsoft выпустит финальную версию новой.

tickМожно ли переносить винду с hdd на ssd одного производителя программой другого производителя ssd?
например у меня ssd Amd r5 m2, а перенести хочу с помощью Acronis WD Edition который от WD или.

Чем отличаются HDD диски от SSD
Какое отличие в HDD и SSD дисках? И влияет ли данный выбор на производительность системы.

Как исправить ошибку 0xc00000e9 с установленными дисками HDD + SSD?
Всем привет! Уверен, что среди вас есть те, кто знаком с решением данной проблемы. Обрыл весь.

Какой программой можно протестировать HDD ocz solid 2 series sata ii 2.5 ssd?
Побывал протестировать на Victoria 3.52, MHDD 4.6 ни одна из этих программ HDD не видит, но при.

Проверил HD программой MHDD
Здравствуйте, форумчане! Проверил HD програмкой MHDD из под DOS. Результаты на картинке. Что.

Проверка жесткого диска программой Виктория
Попытался запустить викторию, пишет Error 30, Disk no reed. Что это значит: 1. Что все хана.

программы для ssd сам ssd не видят, пропали диски с ssd
Всем привет, купил на днях ssd adata.Решил перенести систему на ssd диск с помощью программы.

SSD диски SATA 2 против HDD SATA 3
помогите разобраться. Хочу поставить ssd диск под загруску ОС. Все говорят, что в 1000 раз все.

Источник

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

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

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

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

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

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

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

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

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

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

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

lazy placeholder

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

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

lazy placeholder

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

lazy placeholder

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

Источник

Warning windows x64 detected pio mode supported on windows x86 only что за ошибка

Если жёсткий диск стал внезапно тормозить. Самопроизвольное включение режима PIO и как с ним бороться

Дисковый контроллер умеет работать с дисками в нескольких разных режимах. Электроника винчестера, в свою очередь, тоже поддерживает разные режимы работы с дисковым контроллером. Наборы режимов диска/контроллера могут несовпадать и, чаще всего, именно так и бывает.

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

Режимы передачи данных: PIO и DMA/UDMA

Для многих понятнее игровые аналогии, поэтому воспользуюсь одной из них.

Все знают, что 3D бывает программное (Software Rendering) и аппаратное (Direct3D, OpenGL).

В программном 3D каждый кадр высчитывается процессором, а видеокарта отвечает только за вывод полученной картинки на экран. Трёхмерные просчёты используют дикое количество математики, что сильно нагружает процессор, выдавая при этом достаточно посредственный результат. Почему так происходит? Дело в том, что Центральный Процессор (ЦП) — он универсальный, то есть, приспособлен под вычисления абсолютно разного рода. Трёхмерные вычисления представляют собой лишь узкий класс задач, которые способен выполнять ЦП. И получается, что универсальный ЦП работает с графикой неоптимально.

В случае аппаратного 3D процессор накидывает в видеокарту примитивы (текстуры, модели и т.д.) и даёт команды на их обработку, а построение сцены и красивые эффекты делает уже сама карта — с помощью своего, графического спецпроцессора (GPU, ГП), заточенного как раз под такие задачи. Вычисления на нём идут заметно быстрее, при этом центральный процессор не нагружается.

Так вот, PIO — это типа программного 3D: вся работа с диском осуществляется через ЦП. Очень медленно и ресурсоёмко.
А DMA — аппаратная обработка данных, использующая всевозможные «ускорители». Лишь бы они поддерживались контроллером и самим диском.

Windows

Винда работает с дисками в режиме DMA. Ну, как правило.

При определённых условиях (например, если произошло несколько специфических ошибок чтения-записи) винда переключает режим работы с диском в PIO. Сразу, намертво и без возможности реабилитации.

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

Симптомы того, что винда переключила работу с винчестером в режим PIO

В современных реалиях, когда жёсткие диски являются самыми медленными устройствами компьютера, «узким местом», тормозящим работу программ — даже двукратное падение их скорости может стать катастрофическим.

Убеждаемся, что винда переключила работу с винчестером в режим PIO

Открываем «Диспетчер устройств» в «Консоли управления» компьютером.
ПКМ на «Мой компьютер» (на рабочем столе или в панели «Пуск», не имеет значения) → «Управление».

Раскрываем в дереве ветку контроллера диска («IDE ATA/ATAPI контроллеры») и находим канал, к которому подключен наш винт.
Давим ПКМ → «Свойства» (или просто делаем двойной клик левой кнопкой мыши)

Если «Режим передачи» установлен в «DMA, если доступно», а по факту винчестер работает в режиме PIO (см. картинку ниже), то всё плохо, и это наш случай.

Возвращаем режим DMA/UDMA

Для исправления ошибки достаточно удалить инвалидное устройство и установить его заново. Сделать это можно из того же «Диспетчера устройств».

Или лезем в реестр.

В реестре («Пуск» → «Выполнить» → regedit ) надо зайти в ветку по адресу:

0000 — настройки самого контроллера.
0001 — настройки первичного канала (Primary IDE Chanell).
0002 — настройки вторичного канала (Secondary IDE Chanell).

MasterDeviceTimingModeAllowed
— максимальный по скорости режим, в котором разрешено работать основному (Master) устройству в канале. По сути, значение ключа представляет собой бинарную маску. Ограничивает выбор «Режимов передачи» из диалогового окна.

MasterDeviceTimingMode
— текущий режим работы основного устройства в канале. Соответствует параметру «Текущий режим передачи» диалогового окна.

Если в диалоговом окне «Тип устройства» был выбран вручную, соответствующие настройки хранятся в ключах с префиксом User:

Если значение ключа равно 0x00000001f (HEX 1f), то устройство может работать только в режиме PIO.

Меняем значение нужного [. ]DeviceTimingModeAllowed на » ffffffff » и перезагружаемся.

Дополнительно

Коды режимов работы:

0х0000001f — PIO
0x00000410 — Multi-Word DMA Mode 2 и PIO 4.
0x00002010 — UDMA Mode 2 (ATA33).
0x00008010 — UDMA Mode 4 (ATA66). Для включения можно использовать маску » 0x0000ffff »
0x00010010 — UDMA Mode 5 (ATA100). Для включения можно использовать маску » 0x000fffff «

Это происходит если XP обнаруживает что устройство не стабильно работает в выбранном для него режиме. Определяется это по количеству ошибок чтения, получаемых с привода. Обычно это означает что привод находится в плохом состоянии, и про правде ему надо бы на покой. Но выбрасывать вроде бы работающий привод жалко, поэтому такие устройства можно встретить в машинах наших читателей. Хотя, благодаря механизмам контроля ошибок, многие такие приводы могут работать долго, счастливо и беспроблемно, не смотря на мнение XP о них. Единственное, что портит кровь их владельцам, это постоянные тормоза системы, из за PIO режима. У меня нет полной уверенности, как работает и чем управляется система контроля ошибок в XP, поэтому я не могу гарантировать что этот совет сработает во всех случаях. Но попробовать можно.
Для отключения режима отслеживания ошибок можно попробовать выставить в 0 ключ ErrorControl расположенный по адресу HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesCdfs

Для винчестеров данная рекомендация не работает, не помогает от вылетов в 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 первым способом, то тогда вам придется приложить немного больше усилий и использовать редактор реестра. Сделайте следующее:

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

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

Компьютер сильно тормозит, работать вообще не возможно. При этом индикатор доступа к 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 делаем так:

1. В меню правка Создать, параметр DWORD.
2. Введите строку ResetErrorCountersOnSuccess и нажмите клавишу ВВОД.
3. 2 раза щелкнуть по созданому параметру и ввести значение 1. Нажать Ок.

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

Далее, проверьте, чтобы в этих же разделах параметры MasterDeviceTimingModeAllowed и SlaveDeviceTimingModeAllowed у вас имели значеие ffffffff (в шестнадцатиричной системе). И соответствующему параметру MasterDeviceTimingMode или SlaveDeviceTimingMode присвойте одно из значений:
0x10010 — соответствует режиму UDMA Mode 5 (ATA100).
0x8010 — UDMA Mode 4 (ATA66).
0x2010 — UDMA Mode 2 (ATA33).
0x0410 — Multi-Word DMA Mode 2

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

Но, если вы точно не знаете, в каком режиме должен работать винт и если вы всё сделали правильно, но после перезагрузки ничего не поменялось (маловероятно, но вдруг…), то
В этом случае, сначала удалите из списка устройств IDE-контроллер, и перезагрузитесь. Windows заново найдёт и переустановит драйвер IDE-контроллера, при этом все устройства встанут в нужные DMA-режимы (MasterDeviceTimingMode и SlaveDeviceTimingMode сами примут нужное значение).

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

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

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

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

Warning windows x64 detected pio mode supported on windows x86 only что за ошибка

Исходная конфигурация: ASUS P5Q, 4 x 1 Gb SATA диска, 2 x 1.5 Gb SATA диска, никаких RAID-ов нет, Windows XP SP3. Диск работал в UDMA режиме, как и все остальные, я его тестировал после установки. Device Manager –> IDE controllers –> канал и смотрим “current transfer mode”. На картинке оба устройства работают в режиме UDMA, в моем случае второе устройство работало в PIO mode, но картинку такую я не сохранил. Чтобы понять кто висит на каком канале переключите вид Device Manager-а в View –> Devices by Connection.

Версии возможных причин:

1) Что-то с шлейфом.
2) Что-то с драйверами, сбой или конфликт.
3) Что-то с HDD.

Есть вторая система – Windows 7, гружусь в нее и наблюдаю полную работоспособность дисков в UDMA режимах, значит железо вроде в норме. Смотрю журнал событий, в нем не обнаруживаю сообщений о проблеме с дисками, смотрю диагностику SMART – все ок, конфликтов устройств нет, все это хорошо. Беру последние драйверы с ASUS. Записываю старый номер версии драйвера Intel ICH10R, ставлю новый. Ставится подозрительно быстро, в итоге не обновился. Вручную через INF файлы обновляю драйверы ICH10R, ставится, но проблема остается. Иду на Intel, качаю самую свежую версию, ставлю, снова ничего не ставится. Выясняю, что их драйверы обновляются только если устройство вообще не имеет драйвера, чтобы форсировать надо использовать секретный ключик “–overlall”, пробую, обновляется, но не решает проблемы. Меняю шлейф, вынимаю, втыкаю диск – не помогает. Промежуточный итог – железо работает, новый софт не помогает.

Нахожу в Microsoft-е интересную статью: “После появления нескольких ошибок CRC или истечения времени ожидания диски с интерфейсами IDE ATA и ATAPI используют режим PIO”. Пишут, что если были сбои передачи по UDMA, то система последовательно понижает режимы вплоть до PIO mode (или сразу) и замораживает это состояние! Чтобы вернуть обратно предлагают удалить контроллер из Device Manager-а и он возродится из пепла. На это я не пошел, т.к. побоялся, что он может и не возродиться (писали про это где-то), поэтому пошел вторым путем описанным там и еще в других местах.

Решение. Открыть ветку реестра “HKEY_LOCAL_MACHINESYSTEMCurrentContro lSetControlClass ”, в ней будут ветки 0000, 0001 и т.д. Они соответствуют устройствам в Device Manager-е. Нас интересуют только каналы, название смотрим по DriverDesc, в данном случае “Primary IDE Channel”.

Обращаем внимание на MasterDeviceTimingModeAllowed и SlaveDeviceTimingModeAllowed – они задают маску допустимых режимов, если 0xffffffff, значит все допустимо, а если 0x1f, то только PIO mode. У меня проблема на Slave. Сами текущие режимы хранятся в MasterDeviceTimingMode и SlaveDeviceTimingMode, они отличаются (в сети можно найти смысл чисел). MS предлагает сделать следующее – выставить дополнительный ключ ResetErrorCountersOnSuccess (DWORD) = 1 и перегрузиться. Я это сделал, но это ничего не дало, дало только то, что желаемый режим UserSlaveDeviceTimingModeAllowed тоже сбросился в 0x1f. Я его вернул в Device Manager-е, но думаю можно и здесь вручную выставить 0xffffffff. Далее я выствил SlaveDeviceTimingModeAllowed = 0xffffffff, перегрузился и вуаля!, все заработало. Итого, я думаю надо было сделать всего лишь следующее (проблема на Slave):

UserSlaveDeviceTimingModeAllowed = 0xffffffff, SlaveDeviceTimingModeAllowed = 0xffffffff, ResetErrorCountersOnSuccess = 1 и перегрузиться.

На следующей картинке итоговое состояние реестра после перезагрузки. Режимы теперь одинаковые, маски сохранились и в Device Manager-е видим картинку, как в начале поста.

Теперь о причине. Как следует из статьи MS, одна из причин исправления их драйвера была в том, что время ожидания старта HDD было недостаточным (в Win2000 – 4 сек, сделали 10 сек) и это было проблемой в случае выхода дисков из сна. Я постоянно использовал настройку выключения дисков по бездействию через 2 часа, что приводило иногда к веерному их просыпанию, когда некоторые приложения хотели полезть сразу на несколько разделов. Я полагаю, что может при каком-то сценарии таймаут все-таки был превышен и был зафиксирован сбой, который привел к отключению UDMA. Теперь я отказался от отключения дисков, пусть работают, к тому-же частые включения и выключения возможно больше вредят чем приносят пользу.

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

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

Страницы

9/30/2020

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

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

откроется несколько строчек с контроллерами – нас интересуют:
Первичный и Вторичный каналы 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

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

Источник

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, в принципе все методы, которые можно применить, описаны в нашей статье Тормозит жесткий диск, кроме одного, это редактирование реестра, его и рассмотрим сейчас.

Вообще метод рисковый, можно не загрузиться, поэтому сделайте лучше всего бэкап системы, например в 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
Перезагрузка.

0 / 0 / 0

Регистрация: 09.12.2020

Сообщений: 1

1

09.12.2020, 04:55. Показов 10070. Ответов 2


Первое фото-это ошибка(Warning! Windows x64 detected! PIO mode supported on Windows x86 only.)
Второе фото smart(ssd)
Третье фото smart(hdd)

Проверил SSD И HDD диски программой Виктория(последняя версия) вышла ошибка,подскажите,как исправить

Проверил SSD И HDD диски программой Виктория(последняя версия) вышла ошибка,подскажите,как исправить

Проверил SSD И HDD диски программой Виктория(последняя версия) вышла ошибка,подскажите,как исправить

дальше информация по сканированию hdd и sdd(красных ,оранжевых и ошибочных не было)

Проверил SSD И HDD диски программой Виктория(последняя версия) вышла ошибка,подскажите,как исправить

Проверил SSD И HDD диски программой Виктория(последняя версия) вышла ошибка,подскажите,как исправить

Подскажите,пожалуйста,в рабочем ли состоянии диски?Дискам примерно год.Рабочее устройство ноутбук(игровой).

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь



0



Модератор

Эксперт Hardware

20519 / 12407 / 2187

Регистрация: 23.11.2016

Сообщений: 62,050

Записей в блоге: 22

09.12.2020, 16:34

2

как по мне — то всё ок



0



527 / 1623 / 19

Регистрация: 01.10.2017

Сообщений: 1,267

11.12.2020, 20:12

3

Цитата
Сообщение от Timur1337
Посмотреть сообщение

Warning! Windows x64 detected! PIO mode supported on Windows x86 only.)

Это вообще не ошибка, это просто программа говорит, что в x64-винде некоторые её возможности работать не будут. Учите английский, полезная вещь в 2к20, знаете ли.
А с дисками всё в порядке



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

11.12.2020, 20:12

Помогаю со студенческими работами здесь

Какой программой можно протестировать HDD ocz solid 2 series sata ii 2.5 ssd?
Побывал протестировать на Victoria 3.52, MHDD 4.6 ни одна из этих программ HDD не видит, но при…

Проверил HD программой MHDD
Здравствуйте, форумчане!
Проверил HD програмкой MHDD из под DOS.

Результаты на картинке. Что…

Проверка жесткого диска программой Виктория
Попытался запустить викторию, пишет Error 30, Disk no reed.

Что это значит:

1. Что все хана…

программы для ssd сам ssd не видят, пропали диски с ssd
Всем привет, купил на днях ssd adata.Решил перенести систему на ssd диск с помощью программы…

SSD диски SATA 2 против HDD SATA 3
помогите разобраться…

Хочу поставить ssd диск под загруску ОС. Все говорят, что в 1000 раз все…

hdd и виктория
Привет, у меня с хардом очень большая беда. винду поставить немогу , адски виснет. скачал лайв сд ,…

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:

3

В чëм особенность режима PIO

У нас есть специализированные инструменты, так что Victoria мы не пользуемся, но из разговоров с Сергеем Казанским помню, что он позиционировал режим PIO как вариант для экспериментов и ограниченных по возможностям попыток ремонта. Этот режим — попытка избежать вмешательства драйверов Windows в вашу работу с диском, т.к. в случае экспериментов они могут оказать ненужное влияние, а в случае работы с полуживыми накопителями, Windows API их просто добьёт.

обнаружить совсем мëртвый диск, который даже BIOS не видит?

Я могу неточно помнить подробности, но во времена, когда мы обо всём этом говорили, нужно было предварительно в БИОСе переключать режим доступа к диску с ACHI на Legacy. А вы этого сделать не сможете.
Кстати, в те времена точно не было, как минимум, Windows 10. Если у вас она, то неясно получится ли завести PIO вообще.

Да и в целом я полагаю, что в вашем случае вряд ли поможет какой-либо «пользовательский» софт вообще.
Но на всякий случай, можете дополнительно попробовать R.tester: https://rlab.ru/tools/rtester.html
Это схожая программа для проверки дисков, но написанная до определённой степени по-другому, и с учётом того, что на наш взгляд, стоило улучшить в других утилитах.
Тоже бесплатная и работает без установки.

P.S.
Кстати, если вы пытаетесь что-то сделать с жёстким диском, т.к. хотите восстановить данные, то лучше заканчивайте и даже не включайте его. Текущая ситуация неясна, а добить накопитель можно всегда. В этом случае лучше найдите специалиста в своём регионе и сходите к нему на диагностику. У адекватных она бесплатная.


Windows, Windows XP

  • 18.08.2021
  • 4 605
  • 0
  • 1
  • 1
  • 0

Режимы PIO и DMA

  • Содержание статьи
    • Описание
    • Что такое PIO и DMA?
    • Как сменить режим работы с PIO на DMA?
    • Добавить комментарий

Описание

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

Что такое PIO и DMA?

PIO и DMA – это два режима работы жестких дисков, в общем случае любого привода.

PIO (Programmable Input/Output) – уже устаревший режим, для работы ему необходимо задействовать центральный процессор, что приводит к значительной потери производительности.

DMA (Direct Memory Access) – современный метод, который минует процессор и обращается напрямую к оперативной памяти, это позволяет значительно (в несколько раз) увеличить производительность и избавиться от надоедливых «тормозов». Режим DMA в различных вариантах уже давно используется в операционных системах, однако в Windows XP часто случается ситуация в которой DMA автоматически переключается в PIO и уже вывести его оттуда обычными методами не получится. Из-за чего возникает эта ситуация? В Windows XP внедрен механизм контроля ошибок, если при чтении с жесткого диска или др. привода слишком часто возникают ошибки, то система автоматически переходит в более медленный режим, где их процент меньше. Однако, Windows XP может перевести в такой режим и нормально работающее устройство исходя из известных только ей критериев.

Как сменить режим работы с PIO на DMA?

Итак, Ваша система стала существенно притормаживать – проверим режимы работы всех приводов:
1. Запускаем консоль «Управление компьютером» – правой кнопкой на «Мой компьютер» → в выпадающем меню выбираем пункт «Управление», либо через Панель управления.
2. Выбираем «Диспетчер устройств», справа выбираем IDE ATA/ATAPI контроллеры, откроется несколько строчек с контроллерами – нас интересуют Первичный и Вторичный каналы IDE

Заходим поочередно в свойства этих каналов (правой кнопкой на канале, строка «Свойства»), в закладку «Дополнительные параметры»

Здесь выделены две группы «Устройство 0» и «Устройство 1», в каждой есть строки «Режим передачи» – в ней должно быть выбрано «DMA, если доступно», далее строка «Текущий режим передачи», должно быть что-то типа «Режим ультра DMA: 5», если здесь стоит «Режим PIO», то это как раз наш случай и мы будем его исправлять. Если везде стоит режим ультра DMA, то у Вас все в порядке и дальнейшие действия можно не продолжать.

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

и проставляем значение равное 0хffffffff.
После этого выставляем значение следующих ключей:
MasterDeviceTimingMode
SlaveDeviceTimingMode

в соответствии с следующими данными, в зависимости от поддерживаемого UDMA-режима:
UDMA Mode 2 – 0x2010
UDMA Mode 4 – 0x8010
UDMA Mode 5 – 0x10010
UDMA Mode 6 – 0xffff
После этого перезагрузитесь и проверьте результат – должно все нормально работать.

Длительное состояние стабильности рано или поздно нарушает что-то непредсказуемое и странное, вот и наступил такой момент. Пару дней назад при копировании файла с одного физического диска на другой, вдруг заметил, что скорость катастрофически низкая — 4-6 Mb/s вместо ожидаемых 50-90 Mb/s (с поправкой на фрагментацию). Смотрю на загрузку CPU – одно ядро полностью занято обработкой прерываний, все понятно – диск перешел в PIO mode.

Исходная конфигурация: ASUS P5Q, 4 x 1 Gb SATA диска, 2 x 1.5 Gb SATA диска, никаких RAID-ов нет, Windows XP SP3. Диск работал в UDMA режиме, как и все остальные, я его тестировал после установки. Device Manager –> IDE controllers –> канал и смотрим “current transfer mode”. На картинке оба устройства работают в режиме UDMA, в моем случае второе устройство работало в PIO mode, но картинку такую я не сохранил. Чтобы понять кто висит на каком канале переключите вид Device Manager-а в View –> Devices by Connection.

ScreenShot00117

Хотя диски SATA, контроллеры в Device Manager-е — ATA. Дело в том, что в BIOS SATA контроллеры по умолчанию сконфигурированы прикидываться ATA контроллерами, в таком случае не требуется дополнительных новых AHCI драйверов. Перейти в AHCI режим можно безболезненно, это не влияет на логическую организацию данных, требует лишь соответствующих драйверов. В AHCI режиме появляется поддержка NCQ (переупорядочивание команд HDD) и в целом производительность чуть чуть подрастает, но совсем немного и еще добавляется поддержка горячей замены.

Версии возможных причин:

1) Что-то с шлейфом.
2) Что-то с драйверами, сбой или конфликт.
3) Что-то с HDD.

Есть вторая система – Windows 7, гружусь в нее и наблюдаю полную работоспособность дисков в UDMA режимах, значит железо вроде в норме. Смотрю журнал событий, в нем не обнаруживаю сообщений о проблеме с дисками, смотрю диагностику SMART – все ок, конфликтов устройств нет, все это хорошо. Беру последние драйверы с ASUS. Записываю старый номер версии драйвера Intel ICH10R, ставлю новый. Ставится подозрительно быстро, в итоге не обновился. Вручную через INF файлы обновляю драйверы ICH10R, ставится, но проблема остается. Иду на Intel, качаю самую свежую версию, ставлю, снова ничего не ставится. Выясняю, что их драйверы обновляются только если устройство вообще не имеет драйвера, чтобы форсировать надо использовать секретный ключик “–overlall”, пробую, обновляется, но не решает проблемы. Меняю шлейф, вынимаю, втыкаю диск – не помогает. Промежуточный итог – железо работает, новый софт не помогает.

Нахожу в Microsoft-е интересную статью: “После появления нескольких ошибок CRC или истечения времени ожидания диски с интерфейсами IDE ATA и ATAPI используют режим PIO”. Пишут, что если были сбои передачи по UDMA, то система последовательно понижает режимы вплоть до PIO mode (или сразу) и замораживает это состояние! Чтобы вернуть обратно предлагают удалить контроллер из Device Manager-а и он возродится из пепла. На это я не пошел, т.к. побоялся, что он может и не возродиться (писали про это где-то), поэтому пошел вторым путем описанным там и еще в других местах.

Решение. Открыть ветку реестра “HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass{4D36E96A-E325-11CE-BFC1-08002BE10318}”, в ней будут ветки 0000, 0001 и т.д. Они соответствуют устройствам в Device Manager-е. Нас интересуют только каналы, название смотрим по DriverDesc, в данном случае “Primary IDE Channel”.

ScreenShot00116

Обращаем внимание на MasterDeviceTimingModeAllowed и SlaveDeviceTimingModeAllowed – они задают маску допустимых режимов, если 0xffffffff, значит все допустимо, а если 0x1f, то только PIO mode. У меня проблема на Slave. Сами текущие режимы хранятся в MasterDeviceTimingMode и SlaveDeviceTimingMode, они отличаются (в сети можно найти смысл чисел). MS предлагает сделать следующее – выставить дополнительный ключ ResetErrorCountersOnSuccess (DWORD) = 1 и перегрузиться. Я это сделал, но это ничего не дало, дало только то, что желаемый режим UserSlaveDeviceTimingModeAllowed тоже сбросился в 0x1f. Я его вернул в Device Manager-е, но думаю можно и здесь вручную выставить 0xffffffff. Далее я выствил SlaveDeviceTimingModeAllowed = 0xffffffff, перегрузился и вуаля!, все заработало. Итого, я думаю надо было сделать всего лишь следующее (проблема на Slave):

UserSlaveDeviceTimingModeAllowed = 0xffffffff, SlaveDeviceTimingModeAllowed = 0xffffffff, ResetErrorCountersOnSuccess = 1 и перегрузиться.

На следующей картинке итоговое состояние реестра после перезагрузки. Режимы теперь одинаковые, маски сохранились и в Device Manager-е видим картинку, как в начале поста.

ScreenShot00118

Теперь о причине. Как следует из статьи MS, одна из причин исправления их драйвера была в том, что время ожидания старта HDD было недостаточным (в Win2000 – 4 сек, сделали 10 сек) и это было проблемой в случае выхода дисков из сна. Я постоянно использовал настройку выключения дисков по бездействию через 2 часа, что приводило иногда к веерному их просыпанию, когда некоторые приложения хотели полезть сразу на несколько разделов. Я полагаю, что может при каком-то сценарии таймаут все-таки был превышен и был зафиксирован сбой, который привел к отключению UDMA. Теперь я отказался от отключения дисков, пусть работают, к тому-же частые включения и выключения возможно больше вредят чем приносят пользу.

Понравилась статья? Поделить с друзьями:
  • Обнаружено прокси этой сети что это значит windows 7
  • Обнаружен конфликт ip адресов windows что это такое
  • Обнаружено переполнение стекового буфера при загрузке windows 10
  • Обнаружен конфликт ip адресов windows что это значит
  • Обнаружено переполнение стекового буфера в данном приложении windows 11 как исправить