- •Распределение памяти. Динамическое выделение памяти. Работа с динамической памятью с помощью операций new и delete
- •3 Динамически загружаемые библиотеки
- •4 Загрузка программ. Абсолютная загрузка.
- •5 Загрузка программ. Относительная загрузка.
- •7. Сборка программ. Объектный модуль
- •8. Сборка программ. Библиотеки объектных модулей.
- •9. Варианты построения загрузчиков
- •10. Управление памятью. Основные положения размещения процессов в памяти
- •11. Управление памятью. Многоэтапная обработка пользовательской программы
- •12. Управление памятью. Логическое и физическое адресное пространство
- •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. Вычислительные среды
52. Виды серверов в клиент-серверных компьютерных системах
Клиент-серверная архитектура распределенных систем весьма широко распространена и поддержана операционными системами. Поэтому очень важно знать, какие виды и функции серверов предлагают современные распределенные системы.
Файл-сервер (file server) – компьютер и программное обеспечение, предоставляющие доступ к подмножеству файловых систем, расположенных на дисках компьютера-сервера, другим компьютерам локальной сети (LAN). Пример – серверное программное обеспечение SAMBA (SMB – сокращение от Server Message Block) для ОС типа UNIX (Linux, FreeBSD, Solaris и т.д.), обеспечивающее доступ с Windows-компьютеров локальной сети к файловым системам UNIX-машин. Samba также реализована для платформы Macintosh / MacOS.
Сервер приложений (application server) – компьютер и программное обеспечение, предоставляющее вычислительные ресурсы (память и процессор) и необходимое окружение для удаленного запуска определенных классов (как правило, больших) приложений с других компьютеров локальной сети. Примеры серверов приложений - WebSphere (IBM), WebLogic (BEA).
Сервер баз данных (database server) – компьютер и программное обеспечение, предоставляющее доступ другим компьютерам сети к базам данных, расположенным на компьютере-сервере. Пример: серверное программное обеспечение для доступа к базам данных Microsoft SQL Server.
Веб-сервер (Web server) – компьютер и программное обеспечение, предоставляющее доступ клиентам через WWW к Web-страницам, расположенным на компьютере-сервере. Пример: свободно распространяемый Web-сервер Apache.
Прокси-сервер – компьютер и программное обеспечение, являющиеся частью локальной сети и поддерживающие эффективное обращение компьютеров локальной сети к Интернету, фильтрацию трафика, защиту от внешних атак. Proxy-сервер обычно встроен в операционную систему.
Сервер электронной почты – компьютер и программное обеспечение, выполняющие отправку, получение и "раскладку" электронной почты для компьютеров некоторой локальной сети. Могут обеспечивать также криптование почты (email encryption) – шифрование электронных писем перед отправкой адресатам из определенного сетевого домена (как правило, заказчику) и их дешифровку после получения от заказчика.
Серверный бэк-энд (Server back-end) – группа (пул) связанных в локальную сеть серверных компьютеров, используемых вместо одного сервера, в целях большей надежности и предоставления большего объема ресурсов. Другой термин, близкий к этому, - центр обработки данных (data center).Эти понятия особенно актуальны в связи со все более широким распространением облачных вычислений, являющихся, с этой точки зрения, наиболее современной реализацией клиент-серверной схемы взаимодействия.
53. Кластерные вычислительные системы и их ос
Компьютерные кластеры весьма популярны для научных вычислений. Компьютеры в кластере, как правило, связаны между собой через быструю локальную сеть. Кластеризация позволяет двум или более системам использовать общую память. Кластеризация обеспечивает высокую надежность. Различают компьютерные кластеры двух видов:
1) асимметричная кластеризация (asymmetric clustering) – организация компьютерного кластера, при которой один компьютер выполняет приложение, а остальные простаивают;
2) cимметричная кластеризация (symmetric clustering) - организация компьютерного кластера, при которой все машины кластера исполняют одновременно различные части одного большого приложения.
Различают также:
1) кластеры с высокоскоростным доступом (high-availability clusters) – компьютерные кластеры, обеспечивающие оптимальный доступ к ресурсам, предоставляемым компьютерами кластера, например, к базам данных;
2) кластеры с балансировкой загрузки (load-balancing clusters) – компьютерные кластеры, которые имеют несколько входных компьютеров, балансирующих запросы (front-ends), распределяющих задания между компьютерами серверного back-end’а (серверной фермы).
Кластеры часто используются в университетах и в исследовательских центрах (. Операционные системы для кластеров: Windows 2003 for clusters; Windows 2008 High-Performance Computing.
