Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
KS_LK_AllInOne.docx
Скачиваний:
175
Добавлен:
23.11.2019
Размер:
28.78 Mб
Скачать

3.3. Гетерогенные мультикомпьютерные системы

Наибольшее число существующих в настоящее время распределенных систем по­строено по схеме гетерогенных мультикомпьютерных. Это означает, что компью­теры, являющиеся частями этой системы, могут быть крайне разнообразны, например, по типу процессора, размеру памяти и производительности каналов ввода-вывода. На практике роль некоторых из этих компьютеров могут испол­нять высокопроизводительные параллельные системы, например мультипроцес­сорные или гомогенные мультикомпьютерные.

Соединяющая их сеть также может быть сильно неоднородной.Примером такой системы является распределенная компьютерная система, названная DAS, состоящая из четырех кластеров муль­тикомпьютерных систем, соединенных высокопроизводительными ATM-комму­тируемыми каналами. Фотографии этой системы и ссылки на исследования, проводимые на ней, можно найти по адресу http://Www.cs.vu.nll-balldas.html. Кла­стеры также были связаны между собой через стандартные Интернет-соедине­ния. Каждый кластер содержал одинаковые процессоры (Pentium III) и соеди­няющую их сеть (Myrinet), но различался по числу процессоров (64-128).

Другим примером гетерогенности является создание крупных мультикомпь­ютерных систем с использованием существующих сетей и каналов. Так, напри­мер, не является чем-то необычным существование кампусных университетских распределенных систем, состоящих из локальных сетей различных факультетов, соединенных между собой высокоскоростными каналами. В глобальных систе­мах различные станции могут, в свою очередь, соединяться общедоступными се­тями, например сетевыми службами, предлагаемыми коммерческими оператора­ми связи, например SMDS или Frame relay.

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

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

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

4. Концепции программных решений рс

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

Распределенные системы очень похожи на традиционные операционные системы. Прежде всего, они работают как менеджеры ресурсов (resource managers) существующего аппаратного обеспечения, которые помогают множеству пользо­вателей и приложений совместно использовать такие ресурсы, как процессоры, память, периферийные устройства, сеть и данные всех видов.

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

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

В сильно связанных системах операцион­ная система в основном старается работать с одним, глобальным представлением ресурсов, которыми она управляет.

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

Это деление на сильно и слабо связанные системы связано с классификацией аппаратного обеспечения, приведенной в предыдущем разделе.

Сильно связан­ные операционные системы обычно называются распределенными операционны­ми системами (Distributed Operating System, DOS) и используются для управле­ния мультипроцессорными и гомогенными мультикомпьютерными системами. Как и у традиционных однопроцессорных операционных систем, основная цель распределенной операционной системы состоит в сокрытии тонкостей управле­ния аппаратным обеспечением, которое одновременно используется множеством процессов.

Слабо связанные сетевые операционные системы (Network Operating Systems, NOS) используются для управления гетерогенными мультикомпьютерными сис­темами. Хотя управление аппаратным обеспечением и является основной зада­чей сетевых операционных систем, они отличаются от традиционных. Это отли­чие вытекает из того факта, что локальные службы должны быть доступными для удаленных клиентов.

Чтобы действительно составить распределенную систему, служб сетевой опе­рационной системы недостаточно. Необходимо добавить к ним дополнительные компоненты, чтобы организовать лучшую поддержку прозрачности распределе­ния. Этими дополнительными компонентами будут средства, известные как систе­мы промежуточного уровня (middleware), которые и лежат в основе современных распределенных систем. Средства промежуточного уровня также обсуждаются в этой главе. В табл. 1.3 представлены основные данные по распределенным и се­тевым операционным системам, а также средствам промежуточного уровня.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]