Устройства IDE (жёсткие диски, CD приводы и т.п.) работают в двух основных режимах: DMA – непосредственного доступа к памяти, PIO – обработка данных через ЦП (работа сильно замедляется, а порой и почти невозможно работать).
Во время работы IDE устройств, система отслеживает и ведёт учёт ошибок, поступивших от них, когда число ошибок перевалило за 6, ОС переводит устройства в более медленные режимы DMA, а после переключает их в режим PIO.
Решения:
1. При включении компьютера зайдите в настройки его BIOS, найдите там раздел для управления IDE устройствами, переключите нужные вам устройства в режим DMA и перезагрузите систему.
2. Загрузите систему, в панели управления зайдите в свойства системы (Win+Pause Break), выберите вкладку оборудование, затем диспетчер устройств, в списке выберите IDE ATA/ATAPI контроллеры.
И удалите там все первичные каналы IDE и вторичные каналы IDE, а затем перезагрузите систему.
Если устройства поддерживают режим DMA, то после перезагрузки устройства по умолчанию заново установятся в режим DMA.
3. Если после этого всего система будет переключать устройства в режим PIO, то тогда проверьте свой жёсткий диск на наличие математических ошибок и бэд-секторов, и, если выяснится, что ваш жёсткий диск не повреждён, а ошибки математические, то проверьте всю систему на наличие вирусов и попробуйте восстановить данные с помощью утилит по восстановлению данных.
Некоторые утилиты для проверки, восстановления данных и повреждённых секторов на локальных дисках: HDD Scan – может только проверять жёсткие диски на наличие повреждённых секторов, Victoria – (есть версии для работы в системах Windows и Ms-Dos) проверяет локальные диски на предмет физических повреждений секторов диска и восстанавливает или заменяет повреждённые сектора.
4. Но если вы всё же решили против системы выставить режим DMA, то заново выставляйте устройства в режим DMA и отключите учёт ошибок в реестре.
Для этого откройте Запуск программы (Win+R), введите в строке regedit, затем HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesCdfs, затем в параметре ErrorControl выставляйте значение 0 и перезагрузите компьютер.