Объявление форума |
Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС. |
Полигон-2 » Документация » Програмный ремонт жёстких дисков HDD |
<<Назад Вперед>> | Страницы: 1 2 3 4 5 ... 34 35 36 37 38 * 39 40 41 42 .. 75 76 77 78 79 80 | Печать |
ATauenis
Advanced Member
Откуда: Москва Всего сообщений: 2904 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 апр. 2015 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 14 апреля 2018 14:11 Сообщение отредактировано: 14 апреля 2018 14:12
KALDYH написал: И на многих выгорала. Надо откопать свои трупы вдшек именно со сгоревшей 6283, как найду, сообщу модели. Выгорала очень часто. только на WD-шках, зато на многих. |
i8088
Advanced Member
Откуда: г. Баку, Азербайджан Всего сообщений: 2132 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 янв. 2015 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 14 апреля 2018 14:57 Сообщение отредактировано: 14 апреля 2018 14:59
KALDYH, я выше спрашивал про D540X-4K с нестабильным чтением, достал, проверил. Предусилитель питается от +-5V,причем +5V берется не от блока питания, а тоже формируется преобразователем импульсным, совмещенным с -5V, схема весьма интересная. Вот лог в терминале, помогите интерпретировать
RDfile считавшиеся модули, EC это error code, а RS? HSxxxx это перебор головок? Отмечу, что накопитель ни разу не стучал, в готовность выходит без проблем |
KALDYH
Advanced Member
Технонекромант Откуда: Кемерово Всего сообщений: 2355 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 5 июня 2009 |
Затрудняюсь сказать. Вот лог с моего рабочего D540X-4K 40 Гб: Rom A08 Вот лог с рабочего D740X-6L 40 Гб: Viper-PA 10 |
i8088
Advanced Member
Откуда: г. Баку, Азербайджан Всего сообщений: 2132 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 янв. 2015 |
Спасибо за логи! Я оказывается случайно начало лога пропустил, там было:
Я сравнил оба лога, после выравнивания переносов, основное отличие что у Вашего накопителя сообщение RS #01 FFF7 01 0000 R EC 0019 есть лишь один раз, а у моего три раза, и несколько оличаются значения параметров. В принципе, инициализация и чтение SA у моего в прядке, проблемы начинаются в user area. PS. Скопировал FreeBSD на ALPINE, где я сбрасывал G-list, поработаю на нем и понаблюдаю. |
i8088
Advanced Member
Откуда: г. Баку, Азербайджан Всего сообщений: 2132 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 янв. 2015 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 15 апреля 2018 16:55 Сообщение отредактировано: 15 апреля 2018 16:55
KALDYH, вопрос про WD на Marvell, правильно ли я делаю перенос G->P? (Модули SA я сохранил в файлы перед процедурами). Подопытный четырехголовый (как оказалось) WDC WD1600JS-08NCB1 WD-WMANM6006868 F/W 10.02E01 Hawk 1.Перенос плохих секторов из G в P лист 2. Регенерация транслятора 3. Внутреннее форматирование с учетом P лист 4. Проверка (делаю запись по поверхности, dd или MHDD итп) 5. Если после пункте 4 появились remap, повторяю с пункта 1. Что такое быстрое внутреннее форматирование? Что в терминологии WD означает калибратор для служебной и user области? |
KALDYH
Advanced Member
Технонекромант Откуда: Кемерово Всего сообщений: 2355 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 5 июня 2009 |
i8088 написал: Насколько мне известно, перенос сам производит пересчёт транслятора и вероятнее всего частичное внутреннее форматирование (у WD резервные сектора распределены по всему диску и транслятор разъезжается только частично). 1.Перенос плохих секторов из G в P лист i8088 написал: По правде говоря, не знаю. В более поздних версиях терминология и диалоговое меню форматирования были изменены на более логичные. Что такое быстрое внутреннее форматирование? i8088 написал: Калибратор SA - один из ARCO тестов, осуществляет форматирование и дефектоскопию служебной области. Калибратор UA - скорее всего то же самое. Полнофункциональная платная версия к настоящему времени научилась проводить полную ARCO последовательность, восстанавливая её из логов, и эти тесты из пунктов меню убраны (есть меню запуска произвольного одиночного ARCO теста или теста селфскана). Что в терминологии WD означает калибратор для служебной и user области? |
i8088
Advanced Member
Откуда: г. Баку, Азербайджан Всего сообщений: 2132 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 янв. 2015 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 15 апреля 2018 19:59 Сообщение отредактировано: 15 апреля 2018 20:00
Спасибо за подробный ответ!! Действительно, я думал, после переноса G->P и пересчета транслятора, после места первого бывшего remap пойдут IDNF, но такого не случилось. А стоит вообще тогда это форматирование выполнять тогда, если IDNF-ы не появились после переноса? |
KALDYH
Advanced Member
Технонекромант Откуда: Кемерово Всего сообщений: 2355 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 5 июня 2009 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 15 апреля 2018 20:54 Сообщение отредактировано: 15 апреля 2018 21:23
i8088 написал: Если не появились - не стоит. Даже если появились, можно попробовать просто затереть эти сектора обычной записью - вроде при этом заголовок тоже правильный переписывается. А стоит вообще тогда это форматирование выполнять тогда, если IDNF-ы Поверив в свои силы, считал дамп памяти с платы Jaguar и засунул в дизассемблер IDA Pro (напоминаю, ни пользоваться им, ни программировать я не умею). Попробую раскурить его и составить реальную таблицу команд на Conner. Кто-нибудь умеет идой пользоваться? |
i8088
Advanced Member
Откуда: г. Баку, Азербайджан Всего сообщений: 2132 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 янв. 2015 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 16 апреля 2018 9:18 Сообщение отредактировано: 16 апреля 2018 9:27
KALDYH написал: OK, и да обычная запись тоже помогает, я часто обычным dd из FreeBSD пользуюсь. Если не появились - не стоит. Даже если появились, можно попробовать просто затереть эти сектора обычной записью - вроде при этом заголовок тоже правильный переписывается. KALDYH написал: Я пользуюсь DOS версией IDA 3.64, в основном для разбора x86 BIOS. В скриптах правда не силен Поверив в свои силы, считал дамп памяти с платы Jaguar и засунул в дизассемблер IDA Pro (напоминаю, ни пользоваться им, ни программировать я не умею). Попробую раскурить его и составить реальную таблицу команд на Conner. Кто-нибудь умеет идой пользоваться? (да они еще неприятным образом различаются в разных версиях), но в общем во многих случаях можно и без них обойтись. С Motorola правда не приходилось работать. Чуть не единственная книга про IDA - это книга Криса Касперски, "Образ мышления - Дизассемблер IDA", к сожалению недописанная. Дизассемблерование начинайте со стартового адреса, далее видно будет, иногда может быть проще содержимое ОЗУ реассемблировать, тут главное найти правильно точку входа (и адреса в адресном пространсве CPU). Для примера, разборы BIOS удобно начинать с распакованного original.tmp (загрузив его по адресам 0xE0000 - 0xFFFFF, и создав два сегмента, E и F), тогда не нужно раскручивать декомпрессор и создавать дополнительные сегменты. Иногда можно просто искать кусочки осмысленного кода и раскручивать от них, так для x86 байт C3 это часто retn, то есть конец подпрограммы, искать обращения к известным портам (здесь у HDD конечно тяжело), обращения к последовательному приемопередатчику (вывод TMOS). Байты текстовых строк сразу полезно преобразовать в строки (команда a), будет легче. У дизассемблера этого много странностей/особенностей, но лучше него просто нет! В общем пишите, попробую помочь чем смогу. |
KALDYH
Advanced Member
Технонекромант Откуда: Кемерово Всего сообщений: 2355 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 5 июня 2009 |
Я скачал версию 6.8. Похожего процессора с 384 байтами ОЗУ я не нашёл, выбрал некий обобщённый. Автоанализ нашёл таблицу обрабочиков прерываний, и дальше танцуя от неё - некоторые функции. К сожалению, только небольшую часть. Далее я прошёлся по всему дампу и отметил текстовые строки. Строки очень похожи на сишные, нуль-терминированы. Между ними начали обнаруживаться подпрограммы. Удобно - преобразовал один байт как команду, разворачивает сразу целый немаленький блок. Протыкав так по всему дампу, определил его большей частью. Области адресации, ранее определённые как не содержащие памяти, скрыл - как заменить их на gap я не знаю. Затем довольно быстро нашёл функцию печати форматированной строки в терминал, обозвал её printf и поискал cross references. Их оказалось довольно много, и перед вызовом большинства из них стоил ldd #addr, где addr - адрес текстовой строки. Заменил адреса на автосгенерированные метки ранее найденных строк - код начал обретать читаемую форму, начало проясняться назначение отдельных процедур. Затем по рецету Шаклеина для коннергейтов нашёл таблицу уровней команд и от неё таблицы самих команд. Там очень просто - символ и за ним адрес подпрограммы. Пройдясь по ним, нашёл ещё несколько невыявленных блоков кода. Потом догадался пройтись по всему ранее обнаруженному мною коду и везде заменить адреса обращений к памяти на метки. Таким образом определил реальные границы ОЗУ (очевидно же, что в ПЗУ переменные храниться не могут), нашёл точки обращений к константам, ещё несколько форматированных строк и точки вызова большинства подпрограмм. Итого на данный момент известно строение 95% адресного пространства, далее пойдёт разбор формата текстовых строк, от них можно будет найти параметры, передаваемые подпрограмме печати строки и назначение некоторых переменных, также надо определить границы пространства ввода-вывода. Дальше: по коду видно различие процедур и функций, в начале идут функции. Можно попробовать их оформить. Основная задача - это, разумеется, установить назначение команд терминала, опираясь на уже известные, ну и переименовать соответствующие им процедуры. Также надо найти процедуру ввода и определить, какие и сколько параметров у каждой команды. Ещё задача - по командам работы с буферами найти механизм переключения банков памяти и узнать о нём всё: через какой порт переключается, в какое окно подставляется, где в них служебные данные найти (куски ПЗУ и серт). Практически неразрешимой частью остаётся карта портов ввода-вывода, но она особо и не нужна. Пока основное затруднение - огромный объём монотонной ручной работы, которую хорошо бы автоматизировать, но я не знаю как. |
<<Назад Вперед>> | Страницы: 1 2 3 4 5 ... 34 35 36 37 38 * 39 40 41 42 .. 75 76 77 78 79 80 | Печать |
Полигон-2 » Документация » Програмный ремонт жёстких дисков HDD |
1 посетитель просмотрел эту тему за последние 15 минут |
В том числе: 1 гость, 0 скрытых пользователей |
Последние | |
[Москва] LIQUID-Акция. Сливаются разъемы CF МС7004 и 7004А на AT и XT Пайка термотрубок Проммать s478 PEAK 715VL2-HT ( Full-Size SBC) Подскажите по 386 материке по джамперам. |
Самые активные 5 тем | |