iHDD.RU
Список форумов Форум iHDD.RU Форум iHDD.RU
Ремонт накопителей и восстановление информации
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

 
ASECTOR

 
Начать новую тему   Ответить на тему    Список форумов Форум iHDD.RU -> Двинянинов(tm) о винчестерах  Двинянинов(tm) о винчестерах
ASECTOR
Автор Сообщение
maysoft



Зарегистрирован: 27.09.2005
Сообщения: 666

СообщениеДобавлено: Пт, 27 Янв, 2006 22:09    Заголовок сообщения: ASECTOR Ответить с цитатой

Copyright (c) Dvinyaninov A Ru 2004
Freeware. Refer is require.

ASECTOR

Не знаю надо ли это. Получается сразу из стандарта A и упаковки.

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

Файл состоит из секторов. По стандарту ADT вводится метка ADT в начало каждого сектора. Пусть имя файла сделано по стандарту ADT и формируется как отметка времени. Тогда все имена файлов по стандарту ADT на компе не повторяются. Ограничение ADT - не более 5 файлов в секунду. Имя файла может быть любым. Тогда в заголовке файла надо запоминать отметку создания ADT. Можно создать файл с людбым именем, но где-то надо сохранить значение ADT или AKEY.


В начале каждого сектора вводится заголовок
Код:
 .mode .hdr = .struct (
   .b8   adt,   # имя файла по стандарту ADT #
   .i4   num ) ; # номер сектора в файле #


Выделение 4 байт под номер сектора позволяет иметь файлы длиной 4 G * 512 = 2 террабайта.
Потеря в длине составляет 12/512 = 24/1024 = 0.2% .
Такая структура позволяет собрать файл при полной потере FATа. Для любой длины кластера и для любой файловой системы.
Можно добавить еще 4 байта для CRC32. Тогда потеря длины составит 16/512 = 32/1024 = 0.3%.
Ограничение - нельзя исключать сектора в любом месте. Только с конца. Для файлов типа LOG-ов/журналов транзакций баз данных - это само то. При развале диска можно взять с BACKUPа предыдущую нормальную копию базы данных, восстановить LOG транзакций и симулировать эти транзакции. Лог транзакций всегда гораздо меньше базы данных. Да и оказывается часто надо сохранять журналы транзакций. Вот такая разновидность дифференциального BACKUPа.
Может быть полезно для архивов. Сжатый файл - обычный файл состоит из секторов. Хранится непонятно на чем и долго. Простой контроль типа данного позволяет вытащить максимально быстро и просто хоть что-то при сбое в архиве.
Аппаратура по умолчанию пытается прочитать сбоящие сектора или блоки с повторами. В крайнем случае народ пытается руками прочитать хоть какую-то часть сектора. Для таких случаев и надо ставить CRC32 в заголовок.
Для случая исключения секторов в любом месте добавляется еще 2 ссылки по I4. Одна - номер сектора впереди и вторая - номер следующего сектора. Это дает потерю 8 байт на сектор. Общие потери составляют (16+Cool/512=48/1024=0.5%. Максимальный заголовок сектора
Код:
.mode   .hdr = .struct (
   .b8   adt,
   .i4   num,
   .i4   crc,
   .i4   prv,
   .i4   nxt ) ;


Для расширения сектора на блок типа 2K,4K,8K,12K заголовок тоже полезен. Это может быть полезно для архивов и для передачи данных в сетях. Кстати для кластеров это уже не так хорошо. При копии файла с одного логического диска с одной длиной кластера на другой логический диск с другой длиной кластера, надо делать замену заголовков. Это уже спорно надо ли делать заголовок для кластера.

Можно вместо ключа использовать ADT48. Тогда пропадает соответствие ключа и имени файла. Но можно использовать сколько угодно файлов и сколько угодно быструю машину.

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

==== EOF ======
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Форум iHDD.RU -> Двинянинов(tm) о винчестерах Часовой пояс: GMT + 3
Страница 1 из 1

 








Rambler's Top100 Рейтинг@Mail.ru

Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB