Индивидуальный вопрос формата архива - PullRequest
0 голосов
/ 18 мая 2011

Я думал о разработке собственного формата файлового архива для использования в частных проектах. Дело в том, что я не ищу решение, такое как 7z или RAR, но я хочу сделать что-то другое, похожее на файловую систему.

Рассматривая реальную файловую систему, каждый имеет две общие части в своей архитектуре - информацию о файлах, хранящихся на диске, и фактические данные о файлах следующим образом:

    ----------------------------
       METADATA  |  FILE DATA
    ----------------------------

Мой вопрос - как это возможно, что эти два раздела не будут перекрываться? Я имею в виду, раздел FAT STRUCTURE увеличивается по направлению к разделу FILE DATA, а последний - к концу диска (раздела). Как файловая система управляет этими разделами?

Это то, что я пытался выяснить большую часть времени, и любой совет будет более чем приветствоваться.

1 Ответ

0 голосов
/ 18 мая 2011

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

Кстати, есть ли причина изобретать велосипед (пользовательская файловая система для личных нужд)? Существует несколько реализаций файловых виртуальных файловых систем, которые похожи на архивы, но предоставляют больше функциональности. Одним из примеров является наша SolFS .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...