- •1. Операционная система и ее основные функции
- •2. Основные этапы развития ос Первый период (1945–1955 гг.). Операционных систем нет
- •Второй период (1955 г.–начало 60-х). Пакетные операционные системы
- •Третий период (начало 60-х – 1980 г.). Компьютеры на основе интегральных микросхем. Первые многозадачные ос
- •Четвертый период (с 1980 г. По настоящее время). Персональные компьютеры. Классические, сетевые и распределенные системы
- •3. Классификация операционных систем
- •4. Принцип модульности при построении ос
- •5. Принцип особого режима работы при построении ос
- •6. Принцип виртуализации при построении ос
- •7. Принцип мобильности при построении ос
- •8. Принцип совместимости при построении ос
- •9. Принцип генерируемости при построении ос
- •10. Принцип открытости при построении ос
- •11. Принцип обеспечения безопасности вычислений при построении ос
- •12. Макроядерная структура операционных систем
- •13. Микроядерная структура операционных систем
- •14. Среды и оболочки операционных систем
- •15. Понятие потока, процесса, задачи Понятия «процесс» и «поток»
- •16. Понятие прерывания, исключительной ситуации
- •17. Функции ос по управлению памятью. Простейшие схемы управления памятью.
- •Простейшие схемы управления памятью
- •18. Управление памятью. Схема с фиксированными разделами
- •Один процесс в памяти
- •Оверлейная структура
- •Динамическое распределение. Свопинг
- •19. Управление памятью. Схема с переменными разделами
- •20. Управление памятью. Страничная организация памяти Страничная память
- •21. Управление памятью. Сегментная организация памяти
- •22. Прерывание. Обработка прерываний. Исключительные ситуации
- •Обработка прерываний и ошибок
- •23. Управление вводом-выводом в ос. Разделяемые и неразделяемые ресурсы Структура системы ввода-вывода
- •24. Буферизация и кэширование Буферизация и кэширование
- •25. Понятие спулинга, его назначение Spooling и захват устройств
- •26. Алгоритмы планирования запросов к жесткому диску. Алгоритм fcfs Алгоритмы планирования запросов к жесткому диску
- •Алгоритм First Come First Served (fcfs)
- •27. Алгоритмы планирования запросов к жесткому диску. Алгоритм sstf Алгоритмы планирования запросов к жесткому диску
- •Алгоритм Short Seek Time First (sstf)
- •28. Алгоритмы планирования запросов к жесткому диску. Алгоритм sсan и look Алгоритмы планирования запросов к жесткому диску
- •Алгоритмы сканирования (scan, look)
- •29. Управление процессами. Основные состояния процесса
- •Состояния процесса
- •30. Планирование процессов (задач). Алгоритмы планирования
- •31. Дисциплина диспетчеризации процессов (задач) fcfs
- •32. Дисциплина диспетчеризации процессов (задач) rr
- •33. Проблемы организации параллельных вычислений.
- •34. Тупиковые ситуации и способы их разрешения.
- •Способы предотвращения тупиков
- •Способы предотвращения тупиков путем тщательного распределения ресурсов. Алгоритм банкира
- •Предотвращение тупиков за счет нарушения условий возникновения тупиков Нарушение условия взаимоисключения
- •Нарушение условия ожидания дополнительных ресурсов
- •Нарушение принципа отсутствия перераспределения
- •Hарушение условия кругового ожидания
- •35. Страничная недостаточность («голодание» процессора) и ее обработка
- •36. Файловая система. Основные функции файловой системы
- •37. Простейшая таблица оглавления тома и её элементы
- •38. Логическая структура разделов диска на примере ibm- и ms-совместимых файловых систем
11. Принцип обеспечения безопасности вычислений при построении ос
Обеспечение безопасности при выполнении вычислений является желаемым свойством
для любой многопользовательской системы. Правила безопасности определяют такие свойства, как защита ресурсов одного пользователя от других и установление квот по ресурсам для предотвращения захвата одним пользователем всех системных ресурсов (таких как память). Обеспечение защиты информации от несанкционированного доступа является обязательной функцией многих операционных систем. Для решения этой проблемы чаще всего используется механизм учетных записей. Он предполагает проведение аутенификащи пользователя при его регистрации на компьютере и последующую авторизацию, которая определяет уровень полномочий (прав) пользователя. Каждая учетная запись может входить в одну или несколько групп. Встроенные группы, как правило, определяют права пользователей, тогда как создаваемые администратором группы (их называют группами безопасности) используются для определения разрешений в доступе пользователей к тем или иным ресурсам. Имеющиеся учетные записи хранятся в специальной базе данных, которая бывает доступна только для самой системы. Для этого файл базы данных с учетными записями открывается системой в монопольном режиме, и доступ к нему со стороны любого пользователя становится невозможным. Делается это для того, чтобы нельзя было получить базу данных с учетными записями. Если получить файл с учетными записями, то посредством его анализа можно было бы узнать пароль пользователя, по которому осуществляется аутентификация. В соответствии с требованиями Оранжевой книги(изданной в США в 1983) безопасной считается система, которая посредством специальных механизмов защиты контролирует доступ к информации таким образом, что только имеющие соответствующие полномочия лица или процессы, выполняющиеся от их имени, могут получить доступ на чтение, запись, создание или удаление информации.
Иерархия уровней безопасности, приведенная в Оранжевой книге, помечает низший
уровень безопасности как D, а высший — как А.
12. Макроядерная структура операционных систем
В макроядерных, или монолитных, операционных системах ядро, состоящее из множества
управляющих модулей и структур данных, не разделено на центральную часть и периферийные (по отношению к этой центральной части) модули. Ядро получается монолитным, неделимым. В этом смысле макроядерные операционные системы являются прямой противоположностью микроядерным. Можно согласиться с тем, как трактуется архитектура монолитных операционных систем в работах. В монолитной операционной системе, несмотря на ее возможную сильную структуризацию, очень трудно удалить один из уровней многоуровневой модульной структуры. Добавление новых функций и изменение существующих для монолитных операционных систем требует очень хорошего знания всей архитектуры операционной системы и чрезвычайно больших усилий.
Очень плодотворным оказался подход, основанный на модели клиент-сервер. Эта модель предполагает наличие программного компонента — потребителя какого-либо сервиса, или клиента, и программного компонента — поставщика этого сервиса, или сервера. Взаимодействие между клиентом и сервером стандартизируется, так что сервер может обслуживать клиентов, реализованных различными способами и, возможно, разными разработчиками. При этом главным требованием является то, чтобы использовался единообразный интерфейс.
При поддержке монолитных операционных систем возникает ряд проблем, связанных
с тем, что все компоненты макроядра работают в едином адресном пространстве. Во-первых, это опасность возникновения конфликта между различными частями ядра, во-вторых, сложность подключения к ядру новых драйвере. Преимущество микроядерной архитектуры перед макроядерной заключается в TOIV, что каждый компонент системы представляет собой самостоятельный процесс, запуск или остановка которого не отражается на работоспособности остальных процессов.