HDDL
AAM hddl 

所属分类:单片机开发
开发工具:DOS
文件大小:118KB
下载次数:7
上传日期:2010-03-12 23:17:27
上 传 者neoj
说明:  Power program to work with hard drive in technical mode : read / write IO-ports AAM HPA SMART atributs

文件列表:
HDDL\DEFAULT.INI (0, 2004-10-10)
HDDL\HDDL.BAT (25, 2005-02-11)
HDDL\HDDL.EXE (260596, 2003-06-11)
HDDL\WHATSNEW.TXT (1149, 2003-06-11)
HDDL (0, 2010-03-04)

HDDL v2.01 1. Введение Программа HDDL предназначена для исследования, диагностики и ремонта накопителей на жестких магнитных дисках с IDE-интерфейсом (далее называемых общеупотребительным словом "винт"). Программа написана в соответствии со стандартом ATA-6 и не включает в себя ряд возможностей, принятых в этом стандарте устаревшими - к примеру, работу с винтом в LCHS-адресации. Программа позволяет: - Производить поиск сбойных и долгочитающихся блоков на диске, и, в некоторых случаях, восстановление/замену таких блоков. - Строить график времени верификации секторов диска в LBA-режиме, что позволяет визуально оценить качество поверхности диска. - Изменять конфигурационные настройки винта - режим работы кеша, предел LBA, уровень шума и т.д. - Управлять парольной защитой винта - Загружать в винт внешний микрокод, к примеру, для обновления микропрограммы. - Просматривать атрибуты SMART, журналы ошибок и тестов, а также запускать SMART-диагностику. - Просматривать и редактировать содержимое секторов диска - Работать с IDE-регистрами винта - посылать команды, читать результаты, обмениваться с винтом блоками данных и т.д. Последняя возможность предназначена, в основном, для исследователей и экспериментаторов, поскольку в этом режиме можно работать и с суперкомандами винтов (кроме quantum). Остальные возможности рассчитаны на широкий круг пользователей и, в частности, на тех, кто активно использует для диагностики винтов утилиту HDDSpeed, поскольку данная программа работает в LBA-режиме непосредственно с портами винта и не имеет ограничений в 8 Гб. Можно было бы назвать эту программу Hddspeed-4 но имя hddspeed уже зарезервировано одним шерифом из Шервуда, правда, зарезервировано совершенно без пользы. Программа работает на любом IBM-совместимом компьютере с процессором i386 и выше. Программа может работать как в чистом досе, так и в его эмуляторах различных операционных систем. Единственное ограничение - функция построения графика верификации не может быть запущена под Windows. Кроме того, программе необходимо 512К расширенной памяти (XMS) для размещения буфера обмена с диском. Если XMS недоступна, то операции обмена с диском блоками данных будут недоступны. При работе по системами класса M$ Windows 9x, необходимо с помощью панели управления отключить контроллер, к которому подключен исследуемый винт. В противном случае система не даст прямого доступа программе к IDE-портам винта. В системе OS/2 необходимо, чтобы в файле CONFIG.SYS была строка IOPL=YES, что разрешает доступ DOS-программ к аппаратным портам системы. Программа пока еще сырая и глючная, и, видимо, содержит массу ошибок. В дальнейшем на тот же ftp://195.209.232.10 будут выкладываться следующие версии программы. Не забывайте иногда заглядывать туда. 2. Копирайты, ограничения итд. Поскольку такие вещи никто не читает, пропустим их и пойдем дальше. 3. Запуск программы. Командная строка имеет вид: >HDDL x ini x - одна из букв: f - винт висит на Primary IDE (0x1f0) p - винт висит на контроллере PC-3000 (0x100) любая другая буква или вообще ничего - винт висит на Secondary IDE ini - имя файла с настройками предопределенных команд (см. описание работы с окном IDE-регистров). По умолчанию - default.ini. Если файл с таким именем отсутствует в каталоге с программой, то он создается автоматически. Обратите внимание, что при использовании этого параметра необходимо указать в командной строке и первый параметр, то есть букву, определяющую используемый IDE-контроллер. После запуска на экране появится обычный для такого типа программ рабочий стол. В верхней части экрана имеется главное меню, доступ к которому можно получить клавишей F10. Внизу экрана расположена строка состояния имеющая следующий вид: 170h M BSY RDY DWF DSC DRQ COR INX ERR | BBK UNC 0 IDNF 0 ABRT T0NF AMNF В левой части строки показывается базовый адрес IDE-контроллера, на котором расположен исследуемый винт, а также буква, показывающая, какое из устройств выбрано (M - master, или S - slave). Затем идет побитовое содержимое регистра состояния (1x7) и регистра ошибок (1x1). Нулевые биты показываются синим цветом, единичные - красным (в регистре ошибок) и зеленым (в регистре состояния). Программа динамически отслеживает содержимое указанных регистров. Описание смысла отдельных битов можно найти в ATA-стандарте и куче других док, здесь приводить его я не буду. Все полезные функции программы запускаются через главное меню. Далее следует подробное их описание. 4. Меню "Файл". В этом меню имеются следующие пункты: - "выбрать файл конфигурации", предназначенный для установки нового файла конфигурации. Описание его приводится в разделе, описывающем окно регистров. - "о программе" - "выход" Последние 2 пункта в комментарии не нуждаются. 5. Меню "Винт" В этом меню имеются следующие пункты: - "выбор интерфейса" - "паспорт" - "окно регистров" (описывается в соответствующем разделе далее) - "редактирование секторов" - "загрузка микрокода" - "останов шпинделя" - "Программный сброс" 5.1 Выбор интерфейса Позволяет указать программе, к каому интефейсу подключен исследуемый винт. Возможны 3 значения - Primary, Secondary и PC-3000. Первые два интерфейса имеются практически во всех компьютерах (их базовые адреса 1F0h и 170h соответственно). Интерфейс PC-3000 нужен только тем, у кого есть соответствующая карта (старая PC-3000 или новая PC-3000 pro). Базовый адрес порта - 100h. Кроме того, можно указать тип устройства - Master или Slave. Следует учесть, что в окне регистров тип устройства игнорируется. 5.2 Паспорт. Выводит основную информацию из блока идентификации винта, отдаваемого по ATA-команде identify (ECh). Как известно, по этой команде отдается 512-байтовый блок, большая часть которого не представляет для нас никакого интереса. В данном случае из всего блока выбирается наиболее полезные поля. Открывается окно, имеющее примерно следующий вид: ╔═[■]═════════════════ Паспорт винта ═══════════════1═[]═╗ ║ ║ ║ Модель: WDC AC22000L ║ ║ Версия микропрограммы: 32.41N37 ║ ║ Серийный #: WD-WM0000000000 ║ ║ Всего секторов в CHS: 3907008 ║ ║ Всего секторов в LBA: 3907008 ║ ║ ║ ║ * Текущие параметры CHS: ║ ║ ║ ║ лог. цилиндров: 3876 ║ ║ лог. головок: 16 ║ ║ лог. секторов на дорожку: 63 ║ ║ ║ ║ Предел LBA: не поддерживается ║ ║ Уровень шума: не поддерживается ║ ║ Парольная защита: не поддерживается ║ ║ ║ ╚════════════════════════════════════════════════════════─┘ Под текущими параметрами CHS понимаются параметры, установленные последней командой Initialize drive parameters (91h) или выбранные винтом автоматически при запуске. Окно можно закрыть кнопкой ESC. 5.3 Загрузка микрокода. Команда предназначена для загрузки в винт внешнего микрокода с помощью команды Download Microcode (92h). Для загрузки необходимо иметь специальный файл - загрузчик (лоадер), причем этот лоадер должен быть предназначен для загрузки именно в этот винт. Попытка загрузки в винт чужого лоадера может окончиться чем угодно - от аборта команды до полной порчи служебки. Так что смотрите внимательно, какой лоадер вы грузите. При вызове команды открывается такое окно: ╔═[■]══════════ Загрузка микрокода ═══════════════╗ ║ ║ ║ Файл: __________________________ Выбрать▄ ║ ║ ║ ║ [X] Только в память ║ ║ ║ ║ OK ▄ Отмена ▄ ║ ║ ║ ╚═════════════════════════════════════════════════╝ В поле "файл" необходимо вписать имя файла-загрузчика - или руками, или с помощью команды "выбрать", открывающей стандартное диалоговое окно выбора файла. Флажок "только в память" определяет, куда будет помещен загружаемый микрокод - только в RAM винта, или также в служебную область на диске. Следует учесть, что интерпретация этого флага зависит от конкретного винта - к примеру, для IBM этот флаг должен быть обязательно снят. После нажатия кнопки ОК начинается процесс загрузки, а на экране отображается мониторное окно со счетчиком уже загруженных блоков. В этой версии программы предусмотрена загрузка лоадеров размером до 65536 блоков (32К). Предыдущая версия, а также большинство других программ такого типа, включая квантумовские утилиты из комплекта PC3000, имеют ограничение на длину лоадера в 255 секторов. 5.4 Останов шпинделя. Производит остановку вращения диска с помощью команды Idle Immediate (E0h). Может быть полезно, к примеру, для выполнения различных вариантов hot-swap (типа перестановки платы с банки на банку без отключения питания). Надо заметить, что hot-swap - это весьма опасная процедура, и прибегать к ней лучше только в очень крайних случаях. 5.5. Программный сброс. Посылает винту сигнал Reset, который, в принципе, должен прерывать выполнение текущей команды. Правда, это происходит далеко не всегда - часто бывают случаи, когда винт уходит в себя и не реагирует ни на какие воздействия со стороны интерфейса. Если винт подключен к контроллеру PC-3000, то вместо программного сброса производится аппаратный сброс (IDE Reset), благодаря заложенной в этот контроллер возможности (сброс через регистр 10A). Но даже этот сброс не всегда помогает. 5.6. Редактирование секторов. Эта функция предназначена для просмотра и изменения секторов данных диска. После ее вызова на экран выводится диалоговая панель, позволяющая ввести LBA редактируемого сектора. Затем открывается собственно окно редактирования. Оно представляет собой самый обычный редактор дампов, всем привычный и не требующий особых комментариев. Кнопка TAB переводит курсор из HEX-окна в ASCII и обратно. Кнопка F2 записывает сделанные изменения на диск, а F4 - уничтожает сделанные изменения, приводя сектор к первоначальному виду. F5 позволяет перейти к редактированию сектора с дркгим LBA. ESC закрывает окно и завершает процедуру редактирования. 6. Меню "Тесты". В этом меню собраны средства диагностики винтов. Оно имеет следующие пункты: - Внутренняя диагностика - Запись секторов - Быстрая запись - Верификация секторов - Скорость верификации в LBA. 6.1. Внутренняя диагностика Запускает внутреннюю диагностическую процедуру винта с помощью команды Drive Diagnostic (90h). По окончании диагностики отображается результат выполнения команды. Следует учесть, что многие современные винты весьма странно отрабатывают эту команду. К примеру, " ... ...

近期下载者

相关文件


收藏者