Модель «клиент-сервер»

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

Обмен сообщениями между процессами называется межпроцессным взаимодействием (interprocess communication) и является объектом постоянных исследований. Межпроцессорное взаимодействие может иметь самые разные формы. Одна из них (рис. 3.7) —модель «клиент-сервер» (client/server model) — широко применяется в организации компьютерных сетей. Согласно этой модели процесс является либо клиентом, который что-то запрашивает у другого процесса, либо сервером, который удовлетворяет запрос клиента. Например, программа управления файлами в пределах операционной системы является сервером, который обеспечивает доступ к файлам по запросам клиентов.

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

Введение единой системы передачи сообщений, которая могла бы поддержи-пать такое распределение клиентов и серверов по компьютерной сети, является главной целью набора стандартов и требований, который называется CORBA (Common Object Request Broker Architecture — обобщенная архитектура посредника объектных запросов). CORBA представляет собой стандарт для сетевой коммуникации между элементами программного обеспечения, которые называются объектами. Он был разработан группой Object Management Group — консорциумом производителей программного и аппаратного обеспечения, а также пользователей, которые заинтересованы в расширении границ объектно-ориентированных технологий (их мы рассмотрим в главе 5).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: