- •Распределение памяти. Динамическое выделение памяти. Работа с динамической памятью с помощью операций new и delete
- •3 Динамически загружаемые библиотеки
- •4 Загрузка программ. Абсолютная загрузка.
- •5 Загрузка программ. Относительная загрузка.
- •7. Сборка программ. Объектный модуль
- •8. Сборка программ. Библиотеки объектных модулей.
- •9. Варианты построения загрузчиков
- •10. Управление памятью. Основные положения размещения процессов в памяти
- •12. Управление памятью. Логическое и физическое адресное пространство
- •11. Управление памятью. Многоэтапная обработка пользовательской программы
- •13. Управление памятью. Устройство управления памятью
- •14. Модели взаимодействия компонент распределенной системы.
- •15. Взаимодействия компонент распределенной системы. Обмен сообщениями
- •16. Взаимодействия компонент распределенной системы. Дальний вызов процедур
- •17. Взаимодействия компонент распределенной системы. Использование удаленных объектов
- •18. Взаимодействия компонент распределенной системы. Модель единственного вызова
- •19. Взаимодействия компонент распределенной системы. Модель единственного экземпляра
- •22. Взаимодействие компонент распределенной системы. Использование свойств удаленных объектов
- •23. Взаимодействие компонент распределенной системы. Распределенные события.
- •24. Взаимодействие компонент распределенной системы. Распределенные транзакции.
- •25. Взаимодействие компонент распределенной системы. Безопасность в распределенных системах.
- •26. Взаимодействие компонент распределенной системы. Промежуточные среды в Microsoft .Net Framework
- •27. Методы взаимодействия процессов. Независимые и взаимодействующие процессы. Виды организации взаимосвязи процессов.
- •28. Методы взаимодействия процессов. Парадигма (шаблон) взаимодействия процессов: производитель – потребитель.
- •29. Методы взаимодействия процессов. Коммуникация процессов.
- •30. Методы взаимодействия процессов. Непосредственная коммуникация процессов. Косвенная коммуникация процессов.
- •31. Методы взаимодействия процессов. Буферизация и очередь сообщений.
- •32. Методы взаимодействия процессов. Клиент-серверная взаимосвязь – один из наиболее распространенных видов коммуникации процессов.
- •33. Особенности ос для мобильных устройств
- •34. Рынок ос для мобильных устройств. Windows Mobile
- •35. Рынок ос для мобильных устройств. Symbian os
- •36. Рынок ос для мобильных устройств. Google Android
- •37. Рынок ос для мобильных устройств. BlackBerry os
- •38. Обзор инструментальных средств разработки приложений для мобильных устройств под управлением платформ Windows Mobile. Средства разработки приложений для мобильных устройств.
- •39. Обзор инструментальных средств разработки приложений для мобильных устройств под управлением платформ Windows Mobile. Базы данных.
- •40. Основы облачных вычислений. Виды облачных вычислений.
- •41. Основы облачных вычислений. Инфраструктура как сервис (IaaS).
- •42. Основы облачных вычислений. Платформа как сервис (PaaS).
- •43. Основы облачных вычислений. Программное обеспечение как сервис (SaaS).
- •44. Основы облачных вычислений. Варианты развёртывания облачных систем.
- •45. Основы облачных вычислений. Достоинства облачных вычислений.
- •46. Основы облачных вычислений. Недостатки и проблемы облачных вычислений.
- •47. Основы облачных вычислений. Распределенные вычисления (grid computing).
- •48. Особенности ос для персональных компьютеров.
- •49. Параллельные компьютерные системы и особенности их ос
- •50. Симметричные и асимметричные мультипроцессорные системы
- •51. Распределенные компьютерные системы и особенности их ос
- •52. Виды серверов в клиент-серверных компьютерных системах
- •53. Кластерные вычислительные системы и их ос
- •54. Системы и ос реального времени
- •55. Карманные компьютеры (handhelds) и их ос
- •56. Вычислительные среды
18. Взаимодействия компонент распределенной системы. Модель единственного вызова
При использовании данной модели объект активируется на время единственного удаленного вызова. В наиболее простом случае для каждого вызова удаленного метода объекта клиентом на сервере создается и активируется новый экземпляр объекта, который деактивируется и затем удаляется сразу после завершения удаленного вызова метода объекта. Таким образом, удаленные вызовы разных клиентов изолированы друг от друга. Благодаря удалению объектов после вызова достигается экономное расходование ресурсов памяти, но могут тратиться значительные ресурсы процессора на постоянное создание и удаление объектов. Посредник на клиенте и заглушка на сервере существуют до уничтожения посредника объекта
Данный метод использования удаленных объектов можно рассматривать как некоторый вариант удаленного вызова процедур, поскольку объект не сохраняет свое состояние между вызовами. Тем не менее, сервер использует свои ресурсы на поддержание каркаса и канала между посредником и заглушкой.
Определенным недостатком метода одного вызова является частое создание и удаление экземпляров объектов, поэтому в промежуточным средах может существовать сервис, позволяющий поддерживать некоторое количество уже созданных, но еще не активированных объектов, которые используются для обработки удаленных вызовов. Такой набор объектов, ожидающих своей активации, называется пулом объектов (object pooling). По завершении удаленного вызова объекты деактивируются и могут либо быть помещены в пул и использованы повторно в дальнейшем, либо удаляются, если размер пула достиг некоторого максимального значения. Такая технология позволяет достичь баланса между скоростью обработки запроса и объемом используемых ресурсов сервера. Как видно из описания, в системах с пулом объектов активация не всегда следует непосредственно после создания объекта, а удаление не всегда следует сразу за деактивацией.
Отличительной особенностью метода одного вызова являются наименьшие затраты на организацию системы балансировки нагрузки и ее наибольшая эффективность, поскольку каждый обслуживающий запросы сервер может обработать вызов любого удаленного метода.
19. Взаимодействия компонент распределенной системы. Модель единственного экземпляра
При использовании модели единственного экземпляра удаленный объект существует не более чем в одном экземпляре. Созданный объект существует, пока есть хоть один использующий его клиент. При использовании модели единственного объекта вызовы различных клиентов работают с одним и тем же экземпляром удаленного объекта. Поскольку вызовы клиентов не изолированы друг от друга, то используемый объект не должен иметь какого-либо внутреннего состояния. Модель единственного объекта позволяет получить наиболее высокую производительность, поскольку объекты не создаются и не активируются сервером при каждом вызове метода объекта.
20-21. Взаимодействия компонент распределенной системы. Активация по запросу клиента. Состояние компоненты распределенной системы.
При каждом создании клиентом ссылки на удаленный объект (точнее, на посредника) на сервере создается новый объект, который существует, пока клиент не удалит ссылку на посредника. При таком методе использования вызовы различных клиентов изолированы друг от друга, и каждый объект сохраняет свое состояние между вызовами, что приводит к наименее рациональному использованию ресурсов памяти сервера Состояние компоненты распределенной системы Программные компоненты с точки зрения пользователей своих сервисов можно разделить на две категории: 1) компоненты без сохраняемого между удаленными вызовами своих методов внутреннего состояния (stateless components); 2) компоненты с внутренним состоянием, сохраняемым между удаленными вызовами своих методов (statefull components).Под состоянием в данном случае понимается совокупность значений полей реализующих компоненту объектов, хранящихся в памяти сервера. Если компонента в ходе своей работы сохраняет какие-либо данные во внешнем хранилище, например в базе данных или очереди сообщений, это обычно не рассматривается как ее внутреннее состояние. Модель единственного вызова не сохраняет состояния удаленного объекта между вызовами его методов, в силу чего данная модель может использоваться только с распределенными компонентами без внутреннего состояния. Модель одного экземпляра может быть использована для вызова компонент с внутренним состоянием, но это вряд ли часто имеет смысл, поскольку ее состояние будет меняться каждым из клиентов в произвольном порядке. Модель активации по запросу клиента может быть использована с любыми компонентами.
