Прошу прощения, я не ругал программу Виктория, как и иные другие программы. Они мне помогли понять, что данные живы. Я сказал, что аппаратная часть Виктории чистое разводилово!
and23 Цитата: Не надо так категорично.
Да, не могу я не категорично! Потому как на форумах сайтов владеющих этими агрегатами и программами меня посылал... к спецам без всяких объяснений. Мне и другим помочь хочется, которые оказались в такой же ситуации как и я.
Цитата: Первое - вендор-специфическая работа выносится в контроллер, а программная часть представляет собой высокоуровневую обвязку
А как работают тест-программы вендоров, которые вы скачиваете с их сайтов, со своими родными винтами через стандартные порты ввода-вывода? Как они тестируют свои винты на живучесть и выдают нам соответствующие коды ошибок? Программа Виктория дала сделать все тесты через стандартный порт, но не дала слить данные.
Цитата: некоторые чипы не пропускают некоторые вендор-специфические, а иногда и неосновные ATAстандартные (SMART, HPA etc) команды.
Порты IDE, как и SATA являются стандартными портами ввода-вывода и устройства, подключённые к этим портам, управляются командами в виде битовых последовательностей и шестнадцатеричных кодов а не высокоуровневых команд подаваемых на выводы винтов. Контроллеру ввода-вывода пофиг, что вы туда подадите. Это драйвер усекает вендор-специфические команды а не контроллер. Возьмите техдокументацию на винты и вы там найдёте все команды вплоть до управления скоростью вращения шпинделя.
Цитата: Второе. Таймеры. Кто пытался мерить на PC малые интервалы времени, тот меня поймёт. Без выноса замеров времени (например, чтение сектора в дефектоскопах) на аппаратный уровень реализовать _качественную_ дефектоскопию затруднительно, если вообще возможно.
Возможно для производства винчестеров и нужна такая дефектоскопия, но для восстановления данных в 99,9% случаев вряд ли. Кроме того, штатный таймер на матери работает с наносекундами (иначе как работает память?). Я думаю наносекундных интервалов достаточно для измерения любых тестовых последовательностей в винчестерах. Не верите? Посмотрите техдокументацию к матерям или загляните в справочник по программированию на Си и Ассемлере. Там вы найдёте функции, как получать эти самые наносекунды.
Цитата: Но то, что тест сервометок во многих отвязанных утилитах показывает погоду на Марсе - факт. Сказывается то самое отсутствие "железного" таймера с Писиной платы.
Я думаю, это сказывается жёсткая привязка к конкретному таймеру, а отнюдь не качество работы таймера матери, который синхронизирует хренову тучу контроллеров компьютера и весьма успешно.
Теперь, что касается Линукса. Вы
and23 совершенно правы насчёт упоминания DOS при работе с программами-тестерами. Под Виндой качественный тест сделать трудно, так-как ОС мешает это сделать. Я затрахался винде подсовывать этот винт. При подключённом винте при запуске она падает в BSOD, а если сначала запустить винду, а потом подключить винт, то она не выключется. Приходится питание компа вырубать.
Линукс запустился при подключённом винте. Постукал башкой винта немного, пытаясь определить что там находится за пределами 60-и гиг. Определил на винте два раздела, но не примонтировал их. Дальше я открыл терминал и набрал ту самую команду, предварительно протестировав размер буфера для данных. Он влияет на скорость переноса данных.
Для совсем убитых винтов в Линуксе есть утилита
dd_rescue. Она умеет такое, что и Виктории не снилось! Она умеет снимать данные и анализировать битовые последовательности внутри секторов. Может снимать данные начиная с конца диска, частями, склеивать части, недостающие места забивает нулями. Может снимать данные в несколько проходов и затем на основе ведущегося лога составляет совместный дамп. Может снимать данные из порта в порт, т.е. с диска на диск, посекторно перенося данные, может снимать в файл а затем файл закатывать на другой винт. И всё это делает через стандартный порт! И т.д....
Успехов вам! С наилучшими пожеланиями!