Главная » Просмотр файлов » Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы)

Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы) (1162619), страница 57

Файл №1162619 Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы) (Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы)) 57 страницаЭ. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы) (1162619) страница 572019-09-20СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 57)

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

Корне­вой узел входящих ребер не имеет. Соответственно, каждый узел имеет лишь од­но соответствующее ему абсолютное имя.Граф именования, изображенный на рис. 4.1, является примером направлен­ного ациклического графа {directed acyclic graph). При подобной организации узелможет иметь более одного входящего ребра, но граф не может иметь циклов. Су­ществуют также пространства имен, не имеющие подобного ограничения.Чтобы приблизить наши рассуждения к практике, рассмотрим способ именова­ния файлов в стандартной файловой системе UNIX.

В графе именования UNIXнаправляющий узел соответствует файловому каталогу, а листовой узел — фай­лу. Существует единственный корневой каталог, соответствующий в графе име­нования корневому узлу. Реализация графа именования является составной ча­стью файловой системы. Эта реализация состоит из непрерывного набора блоковлогического диска, обычно поделенных на загрузочный блок, суперблок, наборыиндексных узлов и блоки файловых данных [117, 319, 450]. Эта структура приве­дена на рис. 4.2.СуперблокVБлоки файловых данныхчуVЗагрузочныйблокV нд ек(:ньюБлок дискау'ЗЛ ыРис.

4 . 2 . Обобщенная организация реализации файловой системы UNIXна логическом диске в виде непрерывного набора дисковых блоковЗагрузочный блок — это специальный блок данных и инструкций, которыеавтоматически загружаются в оперативную память при загрузке системы. Загрузоч­ный блок используется при загрузке оперативной системы в основную память.Суперблок содержит информацию обо всей файловой системе — это размернезанятых дисковых блоков, неиспользованные индексные узлы и т. д.

Индекс­ные узлы нумеруются, начиная с нуля. Нуль зарезервирован для индексного уз­ла, соответствующего корневому каталогу.220Глава 4. ИменованиеКаждый индексный узел содержит информацию о данных расположенного надиске соответствующего файла. Кроме того, индексный узел содержит информа­цию о своем владельце, времени создания и последней модификации, защите иподобных же вещах. Соответственно, имея номер индексного узла, можно полу­чить доступ к соответствующему файлу. Каждый из каталогов также реализованв виде файла. Это относится и к корневому каталогу, который обеспечивает ото­бражение между именами файлов и индексами индексных узлов. То есть индексиндексного узла соответствует идентификатору узла в графе именования.4.1.2. Разрешение именПространства имен предоставляют удобный способ сохранения и извлечения ин­формации о сущностях по их именам.

В общем виде, зная имя пути, можно из­влечь всю информацию, которая хранится в узле, соответствующем этому имени.Процесс поиска информации называется разрешением имени {пате resolution).Чтобы понять, как происходит разрешение имени, рассмотрим путь N:<label-1,label-2, ..., Iabel-n>. Разрешение этого имени начинается с узла N графа именова­ния, при этом в направляющей таблице ищется имя label-1 и возвращается иденти­фикатор узла, на который указывает это имя. Разрешение продолжается поис­ком в направляющей таблице указанного узла имени 1аЬе1-2 и т. д. Предполагая,что названный путь действительно существует, разрешение завершается при об­наружении последнего узла, соответствующего имени label-n, возвращением со­держимого этого узла.При поиске имен возвращается идентификатор узла, с которого продолжает­ся процесс разрешения.

В частности, необходимо, получить доступ к направляю­щей таблице найденного узла. Рассмотрим снова файловую систему UNIX. Какуже говорилось, идентификатором узла является индекс (номер) индексного узла.Доступ к направляющей таблице означает возможность сначала прочитать ин­дексный узел, чтобы определить, где на диске находятся данные, а затем прочи­тать блоки данных.Механизм свертыванияРазрешение имен может происходить только в том случае, если мы знаем, откудаи как начать. В нашем примере начальный узел задан, причем предполагается,что мы знаем, как получить доступ к его направляющей таблице.

Знание того, от­куда и как начинать разрешение имен, называется механизмом свертывания {closuremechanism). По существу, механизм свертывания относится к выбору начальногоузла пространства имен, с которого должно начинаться разрешение имени [367].О функционировании механизмов свертывания иногда довольно трудно судить.Это происходит из-за их частично неявной реализации и значительного отличиядруг от друга.Так, например, разрешение имен в графе именования файловой системы UNIXпредполагает знание того факта, что индексный узел корневого каталога являетсяпервым индексным узлом логического иска, на котором находится рассматри­ваемая файловая система.

Его истинное смещение в байтах вычисляется из зна-4.1. Именованные сущности221четш других полей суперблока, а также внутренней информации операционнойсистемы об организации суперблока.Чтобы прояснить этот момент, рассмотрим строковое представление именифайла /home/steen/mbox. Чтобы разрешить это имя, необходимо иметь доступк направляющей таблице корневого узла соответствующего графа именования.Будучи корневым узлом, этот узел не может быть разрешен, если только он нереализован в виде другого узла иного графа именования, скажем G. Но в этомслучае необходимо иметь прямой доступ к корневому узлу G.

Из этого следует,что разрешение имени файла требует предварительной реализации некоторыхмеханизмов, которые начнут процесс разрешения.Абсолютно другой пример — использование строки "0031204430784". Боль­шинство людей не поймут, что делать с этими цифрами. Исключением будутлишь те, кому скажут, что эта цепочка цифр — номер телефона. Подобная инфор­мация необходима для того, чтобы начать разрешение имени, в частности, длянабора номера. После этого телефонная система сделает то, чего от нее требуют.В качестве последнего примера рассмотрим использование в распределенныхсистемах глобальных и локальных имен. Типичный пример локального имени —переменная среды.

Так, в UNIX-системах переменная с именем НОМЕ использует­ся для ссылки на домашний каталог пользователя. Каждый пользователь имеетсвою копию этой переменной, инрщиализируемую глобальным общесистемнымименем, соответствующим домашнему каталогу пользователя. Механизм свер­тывания, ассоциированный с переменными среды, гарантирует, что имя этойпеременной будет правильно разрешено путем поиска в направляющей таблицепользователя.Организация ссылок и монтированиеС разрешением имен связано использование псевдопимов {aliases).

Псевдоним —это другое имя той же сущности. Переменные среды — пример псевдонимов. В по­нятиях графа именования существует два основных способа реализации псевдо­нимов. Первый способ — просто предоставление нескольких абсолютных путейк каждому узлу графа именования. Подобный подход иллюстрирует рис. 4.1, накотором на узел п5 можно сослаться с использованием двух различных путей.В терминологии UNIX оба пути, /keys и /home/steen/keys, называются жесткимиссылками (hard links) к узлу п5.Другой подход состоит в том, чтобы представить сущность в виде листовогоузла, скажем N, но вместо сохранения в нем адреса или состояния этой сущно­сти, сохранить в нем ее абсолютный путь. Когда первое разрешение абсолютногопути приведет к узлу N, разрешение имени вернет путь, сохраненный в N, послечего мы продолжим разрешение нового пути.

Этот принцип соответствует ис­пользованию символических ссылок (symbolic links) в файловых системах UNIXи его иллюстрирует рис. 4.3. В этом случае имя пути /home/steen/keys, ссылаю­щееся на узел, содержащий абсолютное имя пути /keys, является символическойссылкой на узел п5.Описанное разрешение имени полностью относится к одиночным простран­ствам имен. Однако разрешение имен может также использоваться и при про-222Глава 4. Именованиезрачном слиянии нескольких пространств имен. Давайте сначала рассмотриммонтируемые файловые системы.

В понятиях нашей модели именования монти­руемая файловая система — это система, в которой направляющий узел хранитидентификатор направляющего узла другого пространства имен, называемоговнешним пространством имен. Направляющий узел, содержащий такой иден­тификатор узла, называется моптаэююй точкой {mount point). Соответственно,направляющий узел во внешнем пространстве имен называется точкой монтирования {mounting point). Обычно точка монтирования является корнем пространст­ва имен.

В ходе разрешения имен отыскивается точка монтирования, и процессразрешения продолжается поиском в ее направляющей таблице.Данные, хранящиесяв узле п1п2: "eike"пЗ: "max"п4: "steen"steenДанные, хранящиесяп4 Iв узле п6Листовой узелНаправляющийQ["j.twmrcQУ»Жх\1^®У^ОПкеу£;)@nhome/steen/keys"Рис. 4 . 3 . Концепция символической ссылки в графе именованияПринципы монтирования могут быть обобщены и на другие пространстваимен. В частности, все, что необходимо для использования направляюш.его узлав качестве монтажной точки, — это чтобы в ней хранилась вся информация, не­обходимая для идентификации монтирующей точки чужого пространства имени доступа к ней.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6487
Авторов
на СтудИзбе
303
Средний доход
с одного платного файла
Обучение Подробнее