- •Вопросы к зачету по курсу «Сетевое программное обеспечение(2007 г.)
- •1. Функции и характеристики сетевых операционных систем (ос).
- •2. Уровни поддержки распределенных вычислений сетевыми операционными системами.
- •3. Вычисления в архитектуре клиент-сервер. Способ разделения приложений на части.
- •4. Классы приложений клиент/сервер.
- •5. Передачи сообщений в распределенных системах.
- •6. Синхронизация процессов при передачи сообщений.
- •7. Буферизация при передачи сообщений.
- •8. Способы адресации при передаче сообщений.
- •9. Надежные и ненадежные примитивы передачи сообщений.
- •10. Конвейеры (программные каналы).
- •11. Концепция удаленного вызова процедур.
- •12. Вопросы согласование времени в сетевых системах.
- •13. Алгоритмы синхронизации часов в сетевых системах.
- •14. Именование в сетевых системах.
- •15. Взаимное исключение в сетевых системах.
- •16. Алгоритмы взаимного исключения в сетевых системах. Алгоритмы взаимного исключения
- •Распределенная взаимоблокировка. Виды распределенных взаимоблокировок.
- •18. Распределенная взаимоблокировка. Методы предотвращения взаимоблокировок.
- •19. Репликация данных. Согласование реплик. Варианты внесения изменений в реплицированные данные.
- •20. Кластерная обработка. Методы кластеризации.
- •21. Миграция процессов. Механизмы переноса процессов.
- •22. Организация доступ к удаленным данным. Доступ к данным, основанный на документах.
- •23. Доступ, основанный на файловой системе. Модели переноса.
- •24. Принципы построения сетевых файловых систем.
- •30. Системные вызовы и выполнение кода ядра unix.
- •31. Процессная модель ос unix. Управление процессами. Состояния процесса..
- •32. Архитектура ос Linux. Управление процессами.
20. Кластерная обработка. Методы кластеризации.
Ее часто рассматривают как альтернативу асимметричной мультипроцессорной обработки.
Кластер – это группа взаимосвязанных рабочих компов, представляющих собой единый ресурс и создающий иллюзию работы единой системы.
Узлы кластера могут работать и отдельно от кластера (своя ОС)
Методы кластеризации:
-
Отдельные серверы. В этом случае каждый узел представляет собой отдельный сервер со своими собственными дисками. Такой подход обеспечивает высокую производительность и доступность.
-
Серверы без совместного использования дисков. Узлы кластеров имеют общие диски, разбитые на тома, и каждый том принадлежит одному из узлов. Если узел выходит из строя, кластер должен быть переконфигурирован так, чтобы какой-то из оставшихся узлов стал владельцем вышедшего из строя узла. Чаще всего эти диски реализуются в виде RAID массивов.
-
Несколько компов используют одни и те же диски – каждый из узлов имеет доступ ко всем томам всех дисков.
21. Миграция процессов. Механизмы переноса процессов.
Миграция процесса - передача выполнения процесса другому процессору. В некоторых случаях миграция используется для балансирования загрузки многопроцессорной системы. Эта концепция возникла при создании методов выравнивания загрузки для повышения производительности системы.
Механизмы:
-
Процессы интенсивно обменивающиеся информацией целесообразно перенести в один узел.
-
Процессы переносятся при простое узла.
-
Перенос для использования некоторых особых возможностей узла.
22. Организация доступ к удаленным данным. Доступ к данным, основанный на документах.
23. Доступ, основанный на файловой системе. Модели переноса.
Различают два сервиса:
-
Сервис хранения файлов
-
Сервис каталога файлов
Для одновременного доступа к одному и тому же файлу в функции ФС входит управление параллельным доступом. Простейший вариант: всем процессам разрешается читать файл, но лишь одному разрешается писать в файл.
Существуют открытая и закрытая архитектура ФС:
-
Открытая – заключается в реализации интерфейса на уровне сервиса хранения файлов.
-
Закрытая – заключается в том, что создается единый сервис, предоставляющий процессам единый сервис операций каталога и операций хранения. Эти сервисы д.б. распределенными. Доступ к данным осуществляется совместно по этим двум сервисам.
24. Принципы построения сетевых файловых систем.
Не является строго объектно – ориентированной, но близка к этому.
Архитектура:
Непосредственно над аппаратным обеспечением есть уровень программного обеспечения – уровень аппаратных абстракций, отражающий особенности конкретной аппаратной платформы. Подмена этого уровня дает варианты реализации различных аппаратных платформ.
МО – менеджеры объектов
МЗ – менеджеры защиты
LPC – local procedure call
МП - --- памяти
Менеджеры связаны с ядром некоторыми внутренними интерфейсами. С помощью системы интерфейса происходит вызов функций менеджера и функций ядра. При переходе из пользовательского режима в режим ядра происходит переключение контекста приложения.
25. Архитектура Windows 2000 . Компоненты исполнительной системы.
26. Объектная модель Windows 2000 и менеджер объектов.
27. Сетевые компоненты Windows 2000 и их соответствие уровням модели OSI.
28. Основные черты ОС UNIX.
-
производительности практически линейно);
-
переносимость (приложения переносимы на уровне исходных текстов между различными версиями ОС UNIX);
-
кросс-платформенность (версии ОС UNIX существуют практически для всех современных архитектур);
открытость (для получения системой торговой UNIX выполняется набор тестов на соответствие стандартам открытых систем).
29. Структура системы и ядро UNIX.
Одно из основных достижений ОС UNIX состоит в том, что система обладает свойством высокой мобильности. Смысл этого качества состоит в том, что вся операционная система, включая ее ядро, сравнительно просто переносится на различные аппаратные платформы. Все части системы, не считая ядра, являются полностью машинно-независимыми. Эти компоненты аккуратно написаны на языке Си, и для их переноса на новую платформу (по крайней мере, в классе 32-разрядных компьютеров) требуется только перекомпиляция исходных текстов в коды целевого компьютера.
Конечно, наибольшие проблемы связаны с ядром системы, которое полностью скрывает специфику используемого компьютера, но само зависит от этой специфики. В результате продуманного разделения машинно-зависимых и машинно-независимых компонентов ядра (видимо, с точки зрения разработчиков операционных систем, в этом состоит наивысшее достижение разработчиков традиционного ядра ОС UNIX) удалось добиться того, что основная часть ядра не зависит от архитектурных особенностей целевой платформы, написана полностью на языке Си и для переноса на новую платформу нуждается только в перекомпиляции.
Однако сравнительно небольшая часть ядра является машинно-зависимой и написана на смеси языка Си и языка ассемблера целевого процессора. При переносе системы на новую платформу требуется переписывание этой части ядра с использованием языка ассемблера и учетом специфических черт целевой аппаратуры. Машинно-зависимые части ядра хорошо изолированы от основной машинно-независимой части, и при хорошем понимании назначения каждого машинно-зависимого компонента переписывание машинно-зависимой части является в основном технической задачей (хотя и требует высокой программистской квалификации).
Машинно-зависимая часть традиционного ядра ОС UNIX включает следующие компоненты:
-
раскрутка и инициализация системы на низком уровне (пока это зависит от особенностей аппаратуры);
-
первичная обработка внутренних и внешних прерываний;
-
управление памятью (в той части, которая относится к особенностям аппаратной поддержки виртуальной памяти);
-
переключение контекста процессов между режимами пользователя и ядра;
-
связанные с особенностями целевой платформы части драйверов устройств.
К основным функциям ядра ОС UNIX принято относить следующие:
(a) Инициализация системы
(b) Управление процессами и нитями
(c) Управление памятью
(d) Управление
(e) Коммуникационные средства
(f) Программный интерфейс