> С этого поста я...
урра!
вот бы у тебя еще и хватило мудрости не пытаться оставить за собой последнее слово во флейме, который сам же сдуру начал - я бы тебя на последок зауважал
> Но ты забыл указать еще пару параметров "иметь приемлемую скорость работы и не занимать слишком много места для служебной информации".
подумал, что очевидные вещи поминать не надо
> регулярные бэкапы частично решают этот вопрос
не надо мне частичных. у меня вчера вин2к на нтфс грузиться не стала из-за сбоя в файловой системе. загрузился с компашки, фс вылечил - теперь все ок. причем я работу системы обычно завершаю корректно. может, винт сыпется, а я из-за всяких там смартов и не знаю об этом?
чего навыдумывал.
---
- директирии, включая корневую, сами являются файлами.
- адресация - побайтовая (понятие "сектор" в файловой системе отсутствует).
- вместо таблицы секторов, соответствующих файлу, хранится таблица "транзакций" в него.
- защита от физических сбоев реализуется более нижним уровнем, которому уже придется учитывать физический особенности носителя (пока его поминать не будем).
реализация основных операций:
1. чтение из файла: в списке транзакций ищется последняя, затрагивающая необходимую область файла.
2. запись в файл: просто добавляется одна транзакция в список
3. "консолидация": все транзакции, связанные с файлом, и более старые, чем определенная дата, естественным образом объединяются в минимальное количество транзакция. это - служебная операция, производящаяся в свободное время "вручную" или форсированно при недостатке места на носителе.
оверхеды (тормоза) по сравнению с традиционными фс:
от записи: имхо никаких
от чтения:
в случае консолидированного файла - никаких. все файлы, достаточно редко или вообще не изменяющиеся, будут читаться с той же скоростью, что и на традиционной фс.
а вот что касается часто изменяемых файлов - тут жёпа неопределенного размера.
с одной стороны, такая фс дает нехилую фрагментацию данных, и последовательное чтение таких файлов будет значительно тормознее. с другой - а кому надо последовательно читать часто изменяемые файлы? если это - файл какой-нибудь субд, то читать его будут скорее всего теми же кусками, что и изменяли, посему - оверхед будет незначительным.