ВОРОТА | ВОРОТА КС 2021 | Набор 1 | Вопрос 25
Рассмотрим реализацию каталога на основе линейного списка в файловой системе. Каждый каталог представляет собой список узлов, где каждый узел содержит имя файла вместе с метаданными файла, такими как список указателей на блоки данных. Рассмотрим данный каталог foo.
Какая из следующих операций обязательно потребует полного сканирования foo для успешного завершения?
(A) Создание нового файла в foo
(B) Удаление существующего файла из foo
(C) Переименование существующего файла в foo
(D) Открытие существующего файла в foo
Ответ: (А) (С)
Объяснение: Поскольку каталог содержит список узлов, где каждый узел содержит имя файла вместе с метаданными файла, такими как список указателей на блоки данных,
Нам обязательно нужно выполнить полное сканирование foo, чтобы переименовать существующий файл, а повторяющиеся имена файлов не разрешены в каталоге, поэтому, чтобы создать новый файл, сначала мы должны проверить, существует ли он уже или нет, и для этого требуется полное полное сканирование.
Викторина этого вопроса