- •Понятие распределенной системы
- •Понятие и классификация сетевых ос
- •Управление процессами в сетевых ос
- •Понятие вызова удаленных процедур. Этапы выполнения.
- •Динамическое связывание. Семантика вызова удаленных процедур в случае отказов.
- •Проблема синхронизации процессов. Алгоритм логических часов.
- •Алгоритмы синхронизации взаимного исключения
- •Взаимоблокировки в распределенных системах, их обнаружение и предотвращение.
- •Неделимые транзакции. Процессы и нити (потоки) в распределенных системах.
- •Способы организации вычислений потоков в распределенных системах. Архитектура реализации нитей, нити и вызов удаленных процедур (особенности).
- •Особенности вызова удаленной процедур для потоков
- •Особенности использования транзакций в распределенных системах
- •Понятие распределенной файловой системы. Модели сетевых файловых систем.
- •Доступ к одной локальной фс через несколько протоколов.
- •Доступ к локальным фс различного типа через один протокол
- •Интерфейсы файлового сервиса и сервиса каталогов. Семантика разделения файлов Файловый сервис
- •Сервис каталогов
- •Семантика разделения файлов
- •Вопросы разработки структуры распределенной файловой системы. Stateless и Statefull серверы.
- •С ервер хранит информацию о клиентских запросах между самими запросами – Statefull server
- •Кэширование в распределенных системах. Организация и управление кэшированием.
- •Алгоритмы управления кэшированием:
- •Репликация в распределенных системах.
- •Алгоритмы изменения реплицированных файлов
- •Организация работы в гетерогенных сетях.
- •Структура транспортных средств в ос
- •Назначение и архитектура справочной службы.
- •Виртуализация серверов. Типы решений виртуализации.
- •Вычислительные среды. Операционные системы облачных вычислений
- •Практические вопросы Удаленный вызов методов rmi.
- •Основные понятия nfs. Управление доступом, кэширование.
- •Списки управления доступом
- •П оддержка кэширования
- •Поддержка отображаемых файлов и монтирование в nfs
- •Процедура монтирования
- •Управление nfs
- •Rpc в nfs. Блокировка файлов.
- •Функциональная структура маршрутизатора
- •Основные характеристики cisco ios, модульная структура
- •Модульная структура ios
- •Управление процессами в cisco ios
- •Организация памяти в cisco ios
- •Буферизация в cisco ios, поддержка QoS
- •Программная маршрутизация и ускоренная коммутация в cisco ios
- •Поддержка качества обслуживания
- •Основные концепции Active Directory (домены, объекты, сайты, глобальный каталог)
- •Иерархическая структура Active Directory. Пространство имен. Репликация Структура
- •Концепции глобального каталога. Novell eDirectory, Open ldap.
- •Windows Azure: выполнение приложений, хранение данных
- •Среда выполнения приложений
- •Особенности среды выполнения приложений
- •Преимущества среды выполнения приложений Огромная среда для размещения приложений
- •Возможность сосредоточиться на приложении, не заботясь об операционных ограничениях
- •Гибкий выбор размера объектов в соответствии с потребностями приложения
- •Windows Azure: служба доступа, шина служб
- •Особенности Access Control
- •Платформа System I
- •[Править]Система команд
- •Платформа System z
Вычислительные среды. Операционные системы облачных вычислений
Вычислительная система (ВС) - это взаимосвязанная совокупность аппаратных средств вычислительной техники и программного обеспечения, предназначенная для обработки информации. Иногда под ВС понимают совокупность технических средств ЭВМ, в которую входит не менее двух процессоров, связанных общностью управления и использования общесистемных ресурсов (память, периферийные устройства, программное обеспечение и т.п.).
К ресурсам вычислительной системы относят такие средства вычислительной системы, которые могут быть выделены процессу обработки данных на определенный квант времени. Основными ресурсами ВС являются процессоры, области оперативной памяти, наборы данных, периферийные устройства, программы.
В зависимости от ряда признаков различают следующие вычислительные системы (ВС):
однопрограммные и многопрограммные (в зависимости от количества программ, одновременно находящихся в оперативной памяти);
индивидуального и коллективного пользования (в зависимости от числа пользователей, которые одновременно могут использовать ресурсы ВС);
с пакетной обработкой и разделением времени (в зависимости от организации и обработки заданий);
однопроцессорные, многопроцессорные и многомашинные (в зависимости от числа процессоров);
сосредоточенные, распределенные (вычислительные сети) и ВС с теледоступом (в зависимости от территориального расположения и взаимодействия технических средств);
работающие или не работающие в режиме реального времени (в зависимости от соотношения скоростей поступления задач в ВС и их решения);
универсальные, специализированные и проблемно-ориентированные (в зависимости от назначения).
Практические вопросы Удаленный вызов методов rmi.
Remote method Invocation — механизм, который позволяет вызывать метод удалённого объекта. Согласно ему, все операции по подготовке и передаче данных инкапсулируются в вызываемом методе клиентского объекта-заглушки (stub). Сам же вызов метода ничем не отличается от вызова метода обычного локального объекта, за небольшим исключением: Технология CORBA.
локальные объекты передаются по значению (копии)
при передаче удалённого (Remote) объекта, если он экспортирован, передаётся stub этого объекта
передаваемые объекты должны быть Serializable
кроме всех прочих исключительных ситуаций, при вызове удалённого метода может возбуждаться исключение RemoteException (ошибки маршализации/демаршализации, передачи данных и другие возможные ошибки протокола)
Так же нужно отметить, что при вызове метода мы работаем с удалённым интерфейсом, а не с удалённым классом.
Задача RMI — организация клиент-серверного взаимодействия. Это значит, что вам не придётся беспокоится о передаче и предварительной обработке данных (протокол и т.д.). Удобно? Да. Но не во всех случаях. Если в вашей клиент-серверной среде подразумевается работа программ, написанных не только на java, от RMI толку мало (хотя при большом желании можно попытаться «выкрутиться» при помощи JNI).
В терминах RMI объект, который вызывает удаленный метод, называется клиентским объектом, а удаленный объект — серверным объектом. Компьютеры выступают в роли клиента и сервера только для конкретного вызова. Вполне возможно, что при выполнении следующей операции эти компьютеры поменяются ролями, то есть сервер предыдущего вызова может сам стать клиентом при обращении к объекту на другом компьютере.
При вызове метода удаленного объекта на самом деле вызывается обычный метод языка Java, инкапсулированный в специальном объекте-заглушке (stub), который является представителем серверного объекта. Заглушка находится на клиентском компьютере, а не на сервере. Она упаковывает параметры удаленного метода в блок байтов. Каждый параметр кодируется с помощью алгоритма, обеспечивающего независимость от аппаратуры. Например, числа всегда передаются в порядке, при котором сначала передается старший байт (big-endian). При этом объекты подвергаются сериализации. Процесс кодирования параметров называется развертыванием параметров (parameter marshaling). Основная цель развертывания параметров — преобразование их в формат, пригодный для передачи параметров от одной виртуальной машины к другой.
Метод, принадлежащий заглушке, создает блок, в который входят следующие элементы:
идентификатор удаленного объекта;
описание вызываемого метода;
развернутые параметры.
Затем метод заглушки посылает эту информацию серверу. Далее объект-получатель выполняет для каждого вызова удаленного метода следующие действия:
свертывание параметров;
поиск вызванного объекта;
вызов заданного метода;
извлечение и развертывание возвращаемого значения или исключения, сгенерированного данным методом;
передача пакета, состоящего из развернутых возвращаемых данных, объекту-заглушке на клиентском компьютере.
Клиентский объект-заглушка свертывает возвращаемое значение или исключение, полученное с сервера. Результат свертывания становится возвращаемым значением метода заглушки. Если удаленный метод возвращает исключение, то объект-заглушка повторит его в среде объекта-клиента.
