Восстановление данных Москва С.-Петербург Новосибирск Другие города » Все города »
Звоните нам в Москве:  +7 495 230−1000

Руководство по использованию R.tester


Находится в процессе дополнения. Текущая версия от 31.08.2020г.


Если после прочтения данного руководства у вас остаются или возникают вопросы по использованию R.tester, пожалуйста, задайте их в соответствующем разделе форума.


Функциональные особенности

  • Для работы функции быстрой автоматической диагностики в настройках должна быть включена поддержка Lua.
  • Диагностический дамп позволяет изучить состояние носителя информации не имея к нему доступа. Ранее сохранённый файл дампа можно импортировать в R.tester, в результате чего в списке носителей информации главного окна появится новое виртуальное устройство.

    Сохранить дамп можно двумя способами. По нажатию кнопки «Diag dump...» главного окна, либо по нажатию кнопки «Diag dump...» в окне с отображением результатов быстрой диагностики. Во втором случае, в дамп попадут также результаты выполненных тестов.
  • CERT Tool предназначен для *осознанных* экспериментов и всегда собирает информацию о производительности с максимальной детализацией. Поэтому, например, выполнение теста линейного чтения/записи на накопителе 4ТБ и больше с очень мелким блоком (64КБ и меньше) может привести к нехватке памяти.
  • С целью защиты от случайного повреждения системных накопителей, все *известные стандартные* операции записи по умолчанию запрещены для обоих протоколов (SCSI и ATA).

    Разблокируется запись в меню Options -> Unlock Write Operations.
  • Системные накопители в тестовой машине рекомендуется «спрятать», чтобы исключить случайные операции с ними и не повредить ОС.

    В дереве устройств, двойной клик мыши на нужном накопителе и «Hide by - SERIAL». Выбранный S/N будет добавлен в INI-файл и данное устройство в дальнешйем всегда будет скрываться из дерева.

    Показ скрытых устройств можно разрешить через Options -> Show Hidden Devices.
  • Распространённые в настоящий момент ОС работают с накопителями всех типов через слой SCSI.

    Для ненативных SCSI-устройств всю трансляцию SCSI-команд в команды реального интерфейса (ATA, USB, NVMe, ...) выполняет либо драйвер контроллера, либо FW (HBA, USB-моста, ...).

    Поэтому, R.tester реализует два режима доступа для функций R/W - через ОС и через SATL (прямая подача АТА команд через SCSI-обёртку).

    Включение режима прямого доступа управляется опцией Options -> Prefer Direct I/O.

    * В режиме Direct I/O драйвером контроллера всегда накладывается ограничение на максимальный размер данных для передачи.

    * Текущий лимит на размер передачи при Direct I/O можно посмотреть в логе поиска устройств после старта R.tester - в центре окна внизу есть чек-бокс "[ ] Event Log":

    ...

    [2020-08-31 15:51:22.488]

    \\?\scsi#disk&ven_hgst&prod_huc101212css600#5&2d249843&1&010000#{53f56307-b6bf-11d0-94f2-00a0c91efb8b}

    -> PCI\VEN_1000&DEV_0087&SUBSYS_30501000&REV_05\4&38AC18AC&0&0009

    [2020-08-31 15:51:22.488] Vendor [ HGST ] Model [ HUC101212CSS600 ] FW [ V580 ] S/N [ KZJRL123 ] VS [ ]

    ** selected nMaxTransfer= 2101248 (2052Kb, 0x201000)

    В данном примере для текущего HBA доступно до 2МБ за одну команду. Это уже хорошо :)

    По умолчанию, SATA-драйвера под Windows позволяют передачи лишь от 128КБ до 512КБ, что сильно ограничивает манипуляции в ручном режиме (включая работу с инженерными командами).
  • В текущей версии доступен почти неограниченный функционал для работы с ATA- и SCSI-командами в ручном режиме.

    ATA commander разрешен сейчас только для контроллеров, либо USB мостов, которые поддерживают SAT.

    Если позволяет HBA / USB-мост, для ATA также доступны все DMA-команды (но блокируется NCQ, его сложно отлаживать и в публичной версии это лишнее).

    Toolbox -> PATA / SATA -> ATA Command Exerciser

    и

    Toolbox -> SCSI / SAS / FCAL -> SCSI Command Exerciser

    Оба диалога учитывают текущий режим блокировки операций записи и не позволят случайно напортачить с командами записи, формата и т.п.

    Так же, в обоих диалогах реализован относительно интеллектуальный анализатор команд, который не позволит выполнить заведомо опасные или неадекватные действия.

Пояснения к интерфейсу

Считаем, что необходимости в полном описании интерфейса приложения нет. Приведённые ниже комментарии, в совокупности с представлениями о современных концепциях UI и работе носителей информации, должны дать достаточно понимания для его использования.

Отдельные усложнения и отступления от распространённых практик организации интерфейсов сделаны намеренно, для того, чтобы пользователь действовал осознанно, а не «на автомате».


Интерфейс главного окна

Двойной клик левой кнопкой на элементе списка устройств выведет контекстное меню для данного элемента.

Одинарный клик правой кнопкой в области со списком устройств позволит загрузить диагностический дамп, который будет отображаться как отдельный накопитель в ветке «Offline Containers».

«Diag dump...» — сохранение диагностического дампа.

«Quick DIAG!» — запуск процедуры автоматической диагностики для жёстких дисков.

«Toolbox» — набор инструментов.

Галочка в чекбоксе «Event Log» переключит интерфейс на отображение содержимого лога.


Интерфейс CERT Tool

В ближайшем будущем планируется существенное изменение интерфейса. Обозначенные ниже недостатки текущей версии интерфейса устраняться уже не будут, поскольку их причина будет устранена при обновлении.

Загрузка скрипта с тестами возможна двумя способами

  1. По нажатию «AddTask» будет загружен предустановленный скрипт.
  2. Нажатие «Load Script» позволит загрузить ранее сохранённый набор скриптов. Эта кнопка становится активной только в случае пустого списка тестов.

Список тестов очищается нажатием кнопки «Remove Task».

Примеры скриптов, которые можно использовать для тестирования и редактирования, находятся в папке CERT корневой директории программы.

Редактирование скриптов

Для добавления нового пункта в список тестов требуется кликнуть на список и нажать кнопку «ins» на клавиатуре. После чего выбираем тест из списка и задаём его параметры.

Удаление осуществляется нажатием на клавиатуре кнопки «del».

Редактирование параметров тестов осуществляется в окне «CERT Command Editor», появляющемся в момент добавления нового теста, либо после двойного клика правой кнопкой по строке в списке тестов.

Значения параметров редактируются путём выбора соответствующей строки в списке и внесения изменений в появившееся поле ввода или выпадающий список, с последующим нажатием кнопки «set» для передачи нового значения из поля ввода в список.

* Кнопка «set» добавлена в интерфейс с целью дополнительной защиты от случайных ошибок.

Для завершения редактирования параметров теста и сохранения изменений в скрипте следует нажать кнопку «Apply».

После завершения выполнения скрипта двойной клик по строке с тестом приведёт к появлению окна с дополнительной информацией о ходе процесса.

Другие особенности

Самое интересное в CERT Tool в случае тестов линейного чтения или записи — график Access Time.

Режимы отображения Performamce (MiB/sec) или Access Time (msec/cmd request) переключаются галочкой «Performance Mode».

График можно зумировать в реальном времени: левый клик мышки выбирает регион, правый клик возвращает оригинальный масштаб.

Важно принять к сведению! Недостатки текущей версии интерфейса

Невозможно добавление нового пункта в начало или середину списка. Можно добавить только в конец.

Нет возможности изменить порядок выполнения тестов в уже созданном скрипте.

Не все алгоритмы из выпадающего списка режимов тестирования в окне «CERT Command Editor» присутствуют в коде приложения. В случае выбора алгоритма, реализация которого отсутствует в приложении, соответствующая команда будет мгновенно завершена со статусом «no_code».

Скрипт имеет смысл сохранять только до его первого запуска на выполнение. После запуска теста, в структуру данных скрипта попадает много дополнительной информации, которая неверно обрабатывается при редактировании и последующем запуске. И такой скрипт будет глючить. Не сохраняйте скрипты после запуска. Вносите изменения и сохраняйте их до первого запуска.


Интерфейс ATA Command Exerciser

ATA команда подаётся с помощью таск-файла, который формируется из содержимого полей соответствующей формы.

Переключатели над столбцом полей ввода предназначены для возможности задания трёх вариантов содержимого формы и переключения между ними.

При вводе команды в поле «Command», в интерфейсе может появиться подсказка с названием команды, а также вспомогательные поля, упрощающие заполнение остальных полей таск-файла.

Для того, чтобы произошло заполнение таск-файла на основе значения вспомогательного поля, требуется нажатие соответствующей кнопки «set».

Столбец «reply» отображает содержимое таск-файла после выполнения команды.

Подача ряда команд подразумевает использования буфера для отправки или получения данных из диска.

Элементы управления буфером сгруппированы и помечены как «Data I/O».

Для создания буфера требуется указать его размер, в соответствующем поле нажать кнопку «Create». Он должен быть кратен размеру блока и задаётся в байтах.

«Save» и «Load», соответственно, позволят сохранить и загрузить его содержимое. «Dump» – открыть его в шестнадцатеричном редакторе.

При исполнении отдельных команд предварительное создание буфера не требуется. Утилита создаст его сама.

Переключатель позволяет оперировать тремя буферами.

Установка галочки в чекбоксе CK_COND указывает на необходимость отдельного запроса содержимого регистра состояния, если драйвер не сообщил эту информацию после выполнения команды.

Выпадающий список вверху окна предназначен для использования в качестве подсказки по именам команд и правильному заполнению таск-файла. Соответствующие поля будут заполнены после выбора строки из списка и нажатия кнопки «select».

Кнопка «X» используется для очистки содержимого полей ввода таск-файла.

Для отправки команды служит кнопка « > GO < ».


Интерфейс SCSI Command Exerciser

Принцип организации интерфейса аналогичен таковому для АТА коммандера.

Комментарии

Отзывы о статье Руководство по использованию R.tester

None | 10.10.2022
Контакты
Центральный офис

телефон: +7 495 230−1000
e-mail:
адрес: 119049, Москва, Коровий Вал, д. 1А, стр. 1 (здание универмага «Добрынинский»), 6 этаж, офис R.LAB

Социальные сети и мессенджеры

VK: Паблик компании
YouTube: Наш канал
Telegram: Консультация у специалистов R.LAB через бота (@rlabsupportbot)
WhatsApp: Консультации по восстановлению данных (74952301000)