Прозрачность именования

Главная проблема такой формы именования заключается в том, что она не полностью прозрачна. В данном контексте большое значение имеют две формы прозрачности, которые следует различать. Первая форма, называемая прозрачностью местоположения (location transparency), означает, что по имени пути невозможно определить, где именно находится файл.
Путь /server1/dir1/dir2/x сообщает всем, что файл x находится на сервере server1, но он не сообщает о том, где именно находится этот сервер. Сервер может как угодно перемещаться по сети, не требуя изменения имени пути. Это означает, что данная система имеет прозрачность местоположения.

А теперь предположим, что файл x имеет очень большой размер, а на сервере server1 мало места. Кроме того, предположим, что на сервере server2 избыток места. Для системы было бы неплохо автоматически переместить файл x на сервер server2. К сожалению, когда первым компонентом всех имен путей является сервер, система не может автоматически переместить файл на другой сервер, даже если каталоги dir1 и dir2 существуют на обоих серверах. Проблема в том, что автоматическое перемещение файла изменит имя его пути с /server1/dir1/dir2/x на /server2/dir1/dir2/x. Программы, имеющие встроенную в себя первую строку, не станут работать, если путь изменится. Про системы, в которых файлы могут перемещаться без изменения их имен, говорится что они обладают независимостью от местонахождения (location indenpendence). Понятно, что распределенные системы, в которых имена машин или серверов внедряются в имена путей, не обладают независимостью местонахождения. Системы, основанные на подключении (монтировании), также не обладают этим свойством, поскольку невозможно переместить файл из одной файловой группы (смонтированного блока) в другую и сохранить возможность использования старого имени пути. Достичь независимости от местонахождения не так-то просто, но желательно, чтобы это свойство все же присутствовало в распределенной системе.

Подводя итог всему сказанному, следует отметить, что существует три общепринятых подхода к наименованию файлов и каталогов в распределенных системах:

1. Имя машины + имя пути, например /машина /путь или машина:путь.

2. Подключение (монтирование) удаленной файловой системы к локальной файловой иерархии.

3. Единое пространство имен, которое выглядит одинаково на всех машинах.

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

<< | >>
Источник: Э. ТАНЕНБАУМ Х. БОС. СОВРЕМЕННЫЕ ОПЕРАЦИОННЫЕ СИСТЕМ Ы 4-е ИЗДАНИЕ. 2015

Еще по теме Прозрачность именования:

  1. Правило "бон тон"
  2. Правило «бон тон»
  3. Внутреннее Солнышко
  4. Озеро Печали
  5. Уран и Нептун
  6. ИДЕЯ 11 КРАСИВАЯ УПАКОВКА
  7. Б. Целительство на девятом уровне ауры
  8. “Похвалили”
  9. Мужчина и женщина
  10. Крайон, скажи, пожалуйста, что это за код?
  11. Космический план
  12. ПАРАПСИХОЛОГИЯ
  13. 7. Фирменное наименование: содержание, регистрация
  14. Рассмотрим Инь органы по отдельной схеме.
  15. ДВАДЦАТЬ СЕДЬМОЙ ДЕНЬ
  16. О самом больном
  17. Упражнение:
  18. КАТАРАКТА
  19. § 1. Понятие и система исключительных прав (интеллектуальной собственности)