Существует ли файловая система с операцией предварительной подготовки низкого уровня? - PullRequest
3 голосов
/ 16 августа 2011

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

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

Существует ли какая-либо историческая или техническая причина, по которой операция prepend не существует или будет более дорогой, чем аналогичная операция добавления?

1 Ответ

0 голосов
/ 16 августа 2011

Мне известна только одна исследовательская работа, описывающая что-то вроде этого: « Поддержка вставок и удалений в чередующихся параллельных файловых системах » от 1992 года. Аннотация

ДраматическийУлучшения в скорости обработки параллельных компьютеров превращают многие задания, связанные с вычислениями, в задания ввода-вывода.Параллельные файловые системы были предложены для лучшего соответствия пропускной способности ввода-вывода с вычислительной мощностью.Многие параллельные файловые системы распределяют файлы на многочисленные диски;У каждого диска есть свой контроллер.Полосатый файл может быть добавлен (или добавлен) к и поддерживать его структуру.Тем не менее, блок не может быть вставлен или удален из середины файла, так как это приведет к разрушению регулярной чередующейся структуры файла.В этой статье мы представляем распределенную файловую структуру, которая поддерживает файлы в индексированных полосатых экстентах в многопроцессорных системах передачи сообщений.Этот подход допускает высокопараллельное случайное и последовательное чтение, а также позволяет вставлять и удалять в середине файла.

Более подробную информацию вы можете найти в статье.

...