Во-первых глянуть на atadrv с http://ata-atapi.com - драйверы для низкоуровневой работы с контроллерами IDE в исходниках. Там в принципе есть все, что необходимо для работы с ними (в том числе и инициализация с чтением конфигурации)
Во-вторых глянуть на модель IDE-устройств в bochs (bochs.sourceforge.net если не ошибаюсь) - виртуальная машина в исходниках. Очень хороший способ понимания работы железа - смотреть на программные модели этого железа. Так как в этой виртуальной машине все же правильно работает большая часть софты (включая и ОС-и), можно предположить, что модель адекватна.
ЗЫ: Если не поможет, просьба сильно не пинать. Я всего лишь высказал мнение, где бы искал я (и мне кажется нашел бы)
(пргораммирование д.подсистем/Кулаков)
EXECUTE DEVICE DIAGNOSTIC - произвести диагностику устройства
'В процессе выполнения операции подключенные к каналу устройства поочередно выдают хосту информацию о результатах самодиагностики'
(вобщем пихают различные значения в АТА-регистры)
вопросы:
1.как отловить моменты между этими передачами чтобы прочесть инфу о каждом утройстве (в соответ. протоколе нет ничего полезного)
2.почему в диагностических кодах (записываемых в регистр ошибки ER) нет кода отсутствия устройсва 0 (лишь только исправно/неисправно)
3.что будет если записать значение в регистр команд отсутствующего уст-ва?
Посмотри на identify [packet] device25.10.02 13:31 Автор: amirul <Serge> Статус: The Elderman
EXECUTE DEVICE DIAGNOSTIC как раз и выполняет диагностику устройств (типа SMART-а), если сам девайс во время диагностики найдет у себя неисправность, то сообщает об этом. Может я и ошибаюсь, но по мойму тебе нужна именно идентификация устройства: выдается сектор со всяческой инфой об нем.
ЗЫ: По мойму в hacker (или еще где) проходил пост Wud-а про лоченье винта на пароль. Там в числе прочего была ссылка на черновик ATA/ATAPI-5 стандарта. Не знаю как там в "Программировании подсистем", но если не найдешь нужной инфы в стандарте, значит этого или нет или плохо искал
ну посмотрел..25.10.02 15:59 Автор: kar Статус: Незарегистрированный пользователь Отредактировано 25.10.02 16:04 Количество правок: 1
>>(пргораммирование д.подсистем/Кулаков)
EXECUTE DEVICE DIAGNOSTIC - произвести диагностику устройства
'В процессе выполнения операции подключенные к каналу устройства поочередно выдают хосту информацию о результатах самодиагностики'
(вобщем пихают различные значения в АТА-регистры)
вопросы:
1.как отловить моменты между этими передачами чтобы прочесть инфу о каждом утройстве ??
2.почему в диагностических кодах (записываемых в регистр ошибки ER) нет кода отсутствия устройсва 0 (лишь только исправно/неисправно)
3.что будет если записать значение в регистр команд отсутствующего уст-ва?
------------------------------------------------------------------------------------------------------------
> EXECUTE DEVICE DIAGNOSTIC как раз и выполняет диагностику > устройств (типа SMART-а), если сам девайс во время > диагностики найдет у себя неисправность, то сообщает об > этом. Может я и ошибаюсь, но по мойму тебе нужна именно > идентификация устройства: выдается сектор со всяческой > инфой об нем. > > ЗЫ: По мойму в hacker (или еще где) проходил пост Wud-а про > лоченье винта на пароль. Там в числе прочего была ссылка на > черновик ATA/ATAPI-5 стандарта. Не знаю как там в > "Программировании подсистем", но если не найдешь нужной > инфы в стандарте, значит этого или нет или плохо искал
хм.. я что не внятно объяснил?
говорю меня интересует как считывается инфа с регистров кажого устройства
(после команды Диагностики)
Команда EDD не выводит как ты думаешь пакеты(512байт)..она пихает значение в ряд АТА-регистров(ERR,SC,SN и тд)... [после диагностики каждого устройства]
И если все утройства поочередно проводят диагностику (выводят значения в выше упом. регистры)то как же мне поймать информацию от Каждого устройства???
Тогда звиняй :-) Хотя есть еще варианты28.10.02 14:29 Автор: amirul <Serge> Статус: The Elderman
Во-первых глянуть на atadrv с http://ata-atapi.com - драйверы для низкоуровневой работы с контроллерами IDE в исходниках. Там в принципе есть все, что необходимо для работы с ними (в том числе и инициализация с чтением конфигурации)
Во-вторых глянуть на модель IDE-устройств в bochs (bochs.sourceforge.net если не ошибаюсь) - виртуальная машина в исходниках. Очень хороший способ понимания работы железа - смотреть на программные модели этого железа. Так как в этой виртуальной машине все же правильно работает большая часть софты (включая и ОС-и), можно предположить, что модель адекватна.
ЗЫ: Если не поможет, просьба сильно не пинать. Я всего лишь высказал мнение, где бы искал я (и мне кажется нашел бы)