понедельник, сентября 26, 2005

Программы предотвращения сбоев

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

В эти статьи я буду постепенно перемещать описания программ из раздела "Обзор программ" сайта http://skopin.fromru.com.

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

Defence - Diskette Data Protection
Freeware - 62K (Zip)
"Утилита командной строки, защищающая файлы от повреждений при записи на дискеты при помощи избыточного кодирования. При кодировании исходный файл остается без изменения, избыточная информация пишется в отдельный файл. Описание на русском языке. Автор - А.Жданов."
Сайт программы уже не существует, но ее можно найти в архиве каталога freeware.ru по этому адресу http://download.ware.ru:8080/win/mycomputer/utility/defence.zip.

DataShield 2.0
Freeware - 40K (Zip)..395K (Exe)

"Дискеты иногда сбоят. Последствия таких сбоев могут быть не столь плачевны, если Вы воспользуетесь этой программой. Избыточная информация(~5%), вносимая программой в данные резко повышает живучесть файла. Потеря 3-х любых кластеров восстанавливается в любом случае, 30 кластеров также можно восстановить с хорошей вероятностью. Кроме защиты данных, программа разбивает большие файлы на куски под размер дискеты."
Программа поставляется в двух вариантах: инсталятором и в виде консольной версии.
Сайт программы: http://vvvladdd.chat.ru


понедельник, сентября 19, 2005

Skopin FileCopier. Общие принципы работы

Программа для копирования файлов с испорченных носителей разрабатывалась с 2000 года, когда у меня возникла реальная необходимость скопировать некоторые файлы с битых дискет. Именно «скопировать» файл, а не «восстановить» поврежденный. Разница в том, что реально поврежденный файл уже не восстановить, т.е. фрагменты его все же будут безвозвратно утеряны. Стояла задача как можно больше вытащить данных из того что все-таки осталось на дискете. Спасти хотя бы часть информации (предполагаем, что хорошей копии у Вас нет или она далеко)

На тот момент существующими средствами этого сделать не удавалось. Были (и есть), конечно, различные приложения – ScanDisk, Norton Disk Doctor и т.п. позволявшие «восстановить» испорченный файл. На самом деле они его не восстанавливали, они просто помечали битые сектора как ‘Bad block’, чтобы на их место больше ничего нельзя было записать, а фрагмент файла находившийся в них, записывали в другую часть дискеты. Записывали как правило нули, т.к. физически что-либо прочитать было невозможно. Впоследствии файл копировался стандартными средствами без сообщений об ошибках.

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

Тогда я и взялся за разработку FileCopier’а. Программа последовательно копирует файл и, как только встречается испорченный фрагмент, она предлагает или пропустить его, т.е. записать в конечный файл ровно такое же количество нулевых байтов, сколько прочитать не удается, либо считать из другой копии только этот фрагмент и записать его в конечный файл. Таким образом получался файл полностью идентичный нормальному оригиналу.

Поскольку используются стандартные функции чтения/записи Windows, FileCopier может копировать файлы с любых носителей воспринимаемых проводником MS Windows.

Несколько позже после многократных публикаций программы в софтверных интернет-каталогах, пользователи подсказали мне совершенно неожиданное применение программы – копировать фильмы с царапанных компакт-дисков. Для фильмов потеря нескольких байт, даже килобайт, не особо заметна. Только проблема была в том, что аппаратно CD-ROM начинал тормозить и очень долго определять что он наткнулся на нечитаемое место компакт-диска. Эта проблема остается и по сей день и в Skopin FileCopier’е я ее не пытаюсь исправить. Это минус программы и как его убрать, пока не знаю.

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

Skopin FileCopier позволяет это сделать при наличии дополнительной утилиты FileCOMPILER (в дальнейшем планирую для удобства объединить их в одно приложение). Она также занимает чрезвычайно мало места и ее можно скачать как с сайта проекта, так и в составе FULL версии Skopin FileCopier. Но поскольку это процедура технически непростая, то и чтобы понять как это делается нужно отдельное описание.

В следующих статьях этого блога я выложу подробное описание сего процесса.

Вот и начало...

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

На всякий случай напомню адрес сайта с представленным на нем ПО: http://skopin.fromru.com.

Есть и гостевая книга. Поскольку она находится на халявном хостинге, то и работает через пень колоду - около полугода (если не больше) она была недоступна.

Теперь ближе к делу. На картинке сверху представлен скриншот новой версии Skopin FileCopier'а под номером 1.7. На сайте пока выложена версия 1.7 Alpha 2, которая сильно отличается интерфейсом и возможностями от той, что в данный момент в разработке. А поскольку в ней производятся кардинальные изменения, некоторые ключевые функции или работают не так как надо или попросту не работают :), то до выхода сколько-нибудь тестируемой версии еще пилить и пилить (может неделю..). Как могу, в силу свободного времени, я занимаюсь разработкой. Хочется выпустить продукт, полезный, бесплатный и популярный как раньше (2 года назад).


Так вот. Пока основное, что бросится в глаза в пре-релизе версии 1.7 - полное отсутствие многоязыковой поддержки. Т.е. все те варианты интерфейса от прошлых версий не будут перенесены в 1.7. Это связано прежде всего с тем, что в новом интерфейсе совершенно по другому называются кнопки, много новых сообщений, пояснений и т.д. Надо переводить заново.....

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

Но до этого еще далеко...

Из других изменений в проекте в целом. Как бы не сглазить, но теперь я могу оперативно отвечать на ваши письма и реагировать на замечания по программам. Т.е. возобновилась поддержка отсутствовавшая около полутора-двух лет... Это пока самое главное.