воскресенье, 29 января 2006 г.

Quantum AS 20Gb (7200) упорно не включается DMA - Белорусский 'железный' форум

Quantum AS 20Gb (7200) упорно не включается DMA - Белорусский 'железный' форум: "Когда у меня были проблеммы со шлейфом , то винда с каждой последующей ошибкой чтения/записи понижала режим работы. В конце концов установился PIO. Шлейф я сразу на новый заменил , но не помогло. Винда упорно отказывалась выставлять DMA. Пришлось в реестре искать параметр , отвечающий за режим. Нашёл и подправил, а после перезагрузки всё стало ОК , т.е. UDMA5.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}\0001 (последнее число может варьироваться в зависимость от канала IDE)

MasterDeviceTimingMode = 0х10010 (для UDMA5) ; 0x2010 (для UDMA2) ; 0x10 (для PIO)
MasterDeviceTimingModeAllowed = 0xffffffff"

Очень частая проблема...Пишу не первый раз про ЭТО
HDD или CD-ROM (CD-ROM почаще бывает, из-за кривизны дисков, что-ли) постоянно сбрасывается в PIO режим, и не хочет выставляться обратно в UDMA.
Это происходит если XP обнаруживает, что устройство не стабильно работает в выбранном для него режиме. Определяется это по количеству ошибок чтения, получаемых с привода. Обычно это означает что привод находится в плохом состоянии, и про правде ему надо бы на покой. Но выбрасывать вроде бы работающий привод жалко. Благодаря механизмам контроля ошибок, многие такие приводы могут работать долго, счастливо и беспроблемно, несмотря на мнение XP о них. Единственное, что портит кровь их владельцам, это постоянные тормоза системы, из за PIO режима. У меня нет полной уверенности, как работает и чем управляется система контроля ошибок в XP, поэтому я не могу гарантировать что этот совет сработает во всех случаях. Но попробовать можно.
Для отключения режима отслеживания ошибок можно попробовать выставить в 0 ключ ErrorControl расположенный по адресу HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Cdfs
Для того чтобы вернуть режим UDMA, лучше всего удалить и поставить заново IDE контроллер из Device Manager.
Но можно вновь обратится к реестру. Параметры контроллера определяются в реестре, по адресу

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E96A-E325-11CE-BFC1-08002BE10318}

Внутри этой ветки находится 4 папки. В том числе и

0000 – отвечает за сам контролёр.
0001 – отвечает за Secondary IDE Chanell.
0002 – отвечает за Primary IDE Chanell.

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

MasteDeviceTimingModeAllowed и
SlaveDeviceTimingModeAllowed
(или UserMasteDeviceTimingModeAllowed и UserSlaveDeviceTimingModeAllowed, если режимы выбирались вручную),

определяющие в каком максимальном режиме разрешается работать Master и Slave устройства, установленные на контроллере, и

MasterDeviceTimingMode и
SlaveDeviceTimingMode

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

MasterDeviceTimingModeAllowed (или Slave..., зависит от того к чему диск подключен)
должно иметь значение 0хffffffff.

Если оно будет 0х0000001f, то устройство сможет работать только в PIO режиме.
Убедившись что этот ключ стоит правильно, выставляем MasterDeviceTimingMode,
определяя в каком режиме должен работать привод.

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

0x10010 режим UDMA Mode 5 (ATA100).
0x8010 режим UDMA Mode 4 (ATA66).
0x2010 режимы UDMA Mode 2 (ATA33).
0x0410 режим Multi-Word DMA Mode 2 и PIO 4.

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

Комментариев нет: