- •Вопросы по ос:
- •1. Понятие операционной системы;
- •2.Эволюция развития операционных систем;
- •3.Функции операционных систем, концепции операционных систем;
- •4.Построение операционных систем.
- •5.Понятие процесса;
- •6.Состояния процесса;
- •7.Модель представления процесса в операционной системе;
- •8.Операции, над процессами операционной системой.
- •9.Уровни планирования процессов;
- •10.Цели и критерии планирования. Требования к алгоритмам планирования;
- •11.Алгоритмы планирования;
- •12.Санкционированное взаимодействия процессов;
- •13.Логическая организация взаимодействия процессов;
- •14.Расширенное понятия процесс
- •15.Алгоритмы синхронизации процессов.
- •16.Механизмы синхронизации процессов.
- •17. Концепция мониторов.
- •18. Механизм передачи сообщений.
- •19.Взаимоблокировки процессов. Условия возникновения тупиков;
- •20.Способы предотвращения тупиков;
- •21.Обнаружение тупиков. Восстановление после тупиков;
- •22.Физическая и логическая организация памяти эвм;
- •23.Функции системы управления памятью. Простейшие схемы управления памятью;
- •24.Страничная, сегментная и сегментно– страничная организация памяти;
- •25.Понятие виртуальной памяти. Страничная виртуальная память;
- •26.Сегментно-страничная организация виртуальной памяти;
- •27.Ассоциативная память;
- •28.Исключительные ситуации при работе с памятью. Стратегии управления страничной памятью;
- •29.Управление количеством страниц, выделенных процессу. Модель рабочего множества;
- •30.Программная поддержка сегментной модели памяти процесса. Аспекты функционирования менеджера памяти;
- •31.Файловая система. Основные функции файловой системы;
- •32.Основные понятия файлов. Имя, тип, атрибуты. Организация файлов;
- •33.Операции над файлами. Логическая структура файлового архива;
- •34.Разделы диска. Организация доступа к архиву файлов. Защита файлов;
- •35.Общая структура файловой системы управления внешней памятью;
- •36.Надёжность и производительность файловых систем;
- •37.Физические принципы организации ввода/вывода;
- •38.Логические принципы организации вводв/вывода;
- •39.Интерфейс между базовой подсистемой ввода/вывода и драйверами;
- •40.Алгоритмы планирования запросов к жёсткому диску;
- •41.Сети и сетевые операционные системы. Взаимодействие удалённых процессов;
- •42.Сети и сетевые операционные системы. Понятие протокола и многоуровневая модель построения сетевых вычислительных систем;
- •43.Сети и сетевые операционные системы. Проблемы адресации в сети;
- •44.Сети и сетевые операционные системы. Локальная адресация, понятие порта;
- •45.Сети и сетевые операционные системы. Проблемы маршрутизации в сетях;
- •46.Угрозы безопасности. Формализация подхода к обеспечению информационной безопасности;
- •47. Криптографические алгоритмы обеспечения технологий безопасности операционных систем;
- •48.Защитные механизмы операционных систем. Система защиты операционных систем. Основные задачи;
- •49. Идентификация и аутентификация;
- •50. Авторизация и разграничение доступа к ресурсам;
- •51. Протоколирование;
- •52. Аудит операционных систем.
16.Механизмы синхронизации процессов.
Концепция семафоров;
Для повышения производительности вычислительных систем и облегчения задачи программистов существуют специальные механизмы синхронизации. Одним из первых механизмов, предложенных для синхронизации поведения процессов, стали семафоры. Семафор представляет собой целую переменную, принимающую неотрицательные значения, доступ любого процесса к которой, за исключением момента ее инициализации, может осуществляться только через две атомарные операции: P (от датского слова proberen – проверять) и V (от verhogen – увеличивать). Подобные переменные-семафоры могут с успехом применяться для решения различных задач организации взаимодействия процессов. Соответствующая целая переменная располагается внутри адресного пространства ядра операционной системы. Операционная система обеспечивает атомарность операций P и V, используя, например, метод запрета прерываний на время выполнения соответствующих системных вызовов. Если при выполнении операции P заблокированными оказались несколько процессов, то порядок их разблокирования может быть произвольным, например, FIFO. Одной из типовых задач, требующих организации взаимодействия процессов, является задача producer-consumer (производитель-потребитель). Пусть два процесса обмениваются информацией через буфер ограниченного размера. Производитель закладывает информацию в буфер, а потребитель извлекает ее оттуда.
17. Концепция мониторов.
Для того чтобы облегчить работу программистов, в 1974 году Хором (Hoare) был предложен механизм еще более высокого уровня, чем семафоры, получивший название мониторов. Мониторы представляют собой тип данных, который может быть с успехом внедрен в объектно-ориентированные языки программирования. Монитор обладает собственными переменными, определяющими его состояние. Значения этих переменных извне могут быть изменены только с помощью вызова функций-методов, принадлежащих монитору. В свою очередь, эти функции-методы могут использовать в работе только данные, находящиеся внутри монитора, и свои параметры. Важной особенностью мониторов является то, что в любой момент времени только один процесс может быть активен, т. е. находиться в состоянии готовность или исполнение, внутри данного монитора. Поскольку мониторы представляют собой особые конструкции языка программирования, компилятор может отличить вызов функции, принадлежащей монитору, от вызовов других функций и обработать его специальным образом, добавив к нему пролог и эпилог, реализующий взаимоисключение. Так как обязанность конструирования механизма взаимоисключений возложена на компилятор, а не на программиста, работа программиста при использовании мониторов существенно упрощается, а вероятность возникновения ошибок становится меньше.
18. Механизм передачи сообщений.
Эквивалентность семафоров, мониторов и сообщений;
Для прямой и непрямой адресации достаточно двух примитивов, чтобы описать передачу сообщений по линии связи – send и receive. Примитивы send и receive уже имеют скрытый от наших глаз механизм взаимоисключения. Более того, в большинстве систем они уже имеют и скрытый механизм блокировки при чтении из пустого буфера и при записи в полностью заполненный буфер. Реализация решения задачи producer-consumer для таких примитивов становится неприлично тривиальной. Надо отметить, что, несмотря на простоту использования, передача сообщений в пределах одного компьютера происходит существенно медленнее, чем работа с семафорами и мониторами. В рамках одной вычислительной системы, когда процессы имеют возможность использовать разделяемую память, все они эквивалентны. Это означает, что любые два из предложенных механизмов могут быть реализованы на базе третьего, оставшегося механизма.