Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.12.30;
Скачать: CL | DM;

Вниз

Остановка двигателя HDD   Найти похожие ветки 

 
AndreyRus   (2007-06-11 11:06) [0]

Здравствуйте!
Известен ли кому нибудь способ остановки двигателя в жестком диске без использования DeviceIOControl?


 
homm ©   (2007-06-11 11:11) [1]

Сильный удар по корпусу.


 
AndreyRus   (2007-06-11 11:21) [2]


> Сильный удар по корпусу.

:)
Может функцией энергосбережения? Вот только какой... :(


 
Dimaxx ©   (2007-06-14 10:10) [3]

Выдернуть кабель питания. Или написать программу, которая будет выдергивать его автоматически. :)


 
clickmaker ©   (2007-06-14 10:41) [4]


> Или написать программу, которая будет выдергивать его автоматически

нужно еще робота до кучи смастерить, который по этой программе...


 
tesseract ©   (2007-06-14 11:06) [5]


> Известен ли кому нибудь способ остановки двигателя в жестком
> диске без использования DeviceIOControl?


ExitWindowsEx(EWX_SHUTDOWN or EWX_FORCE,SHTDN_REASON_FLAG_PLANNED );


 
Игорь Шевченко ©   (2007-06-14 12:29) [6]

SetSystemPowerState с предварительным определением политики электропитания или все-таки DeviceIOControl, если драйвер поддерживает установку режима электропитания вне зависимости от системной политики.


 
AndreyRus   (2007-06-14 13:31) [7]


> SetSystemPowerState с предварительным определением политики
> электропитания

Можно поподробнее за предварительную политику электропитания?

> или все-таки DeviceIOControl, если драйвер поддерживает
> установку режима электропитания вне зависимости от системной
> политики.

DeviceIOControl в купе с недокументированным кодом (2000, XP, XP SP1) и документированным (XP SP2, 2003, Vista) позволяет отправлять жесткому диску прямые ATA команды и соответственно проблем с остановкой двигателя нет. Проблема заключается в том, что в некоторых драйверах, вследствие их ущербности (nVidia, внешние контроллеры (S)ATA) такая возможность не реализована.


 
homm ©   (2007-06-14 14:16) [8]

> в некоторых драйверах, вследствие их ущербности (nVidia,
> внешние контроллеры (S)ATA) такая возможность не реализована.

Тоды только [1] или [3].


 
tesseract ©   (2007-06-14 14:44) [9]


> соответственно проблем с остановкой двигателя нет


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


 
AndreyRus   (2007-06-14 15:05) [10]

Windows знает, что винт может уснуть самостоятельно. C этим проблемы нет.


 
tesseract ©   (2007-06-14 15:10) [11]


> Windows знает, что винт может уснуть самостоятельно.


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


 
AndreyRus   (2007-06-14 15:22) [12]

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

> Она сама его выключает
Винт сам может уснуть если поддерживает APM (свое) и его значение меньше 128.


 
tesseract ©   (2007-06-14 15:30) [13]


> Проверено, правда не на всех драйверах, что проблемы нет.


Ключевое слово не на всех драйверах. На встроенных да, чаще всего работает, на Promise например сильно удивляеться такому обороту событий.


 
AndreyRus   (2007-06-14 15:47) [14]

Поэтому и нужен иной способ усыпления.
Дравер + IRP_MJ_POWER, IRP_MN_SET_POWER не подходит.


 
AndreyRus   (2007-06-16 02:37) [15]

Почему?


 
Германн ©   (2007-06-16 02:44) [16]


> AndreyRus   (16.06.07 02:37) [15]
>
> Почему?
>

Эээ. Почему? А что именно почему?
:)


 
AndreyRus   (2007-06-16 10:57) [17]

А потому что, а по тому что, ... ничего и никогда не делал в жизни сам. :)



Страницы: 1 вся ветка

Текущий архив: 2007.12.30;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.017 c
15-1196074479
No_Dead
2007-11-26 13:54
2007.12.30
Логика БД


2-1196927339
O.O
2007-12-06 10:48
2007.12.30
Запуск приложения для Windows под Линукс


2-1195211860
Yurij-7
2007-11-16 14:17
2007.12.30
Помогите с запросом


2-1196935732
Scazzi
2007-12-06 13:08
2007.12.30
Помогите перевести string в keycode


8-1171918111
ы
2007-02-19 23:48
2007.12.30
книги