
- •1.Средства межпроцессного взаимодействия. Сигнальные средства связи.
- •2.Средства межпроцессного взаимодействия. Канальные средства связи.
- •3. Синхронизация параллельных процессов. Критические ресурсы. Критический участок.
- •5. Синхронизация параллельных процессов. Условия Бернстайна.
- •6. Требования, предъявляемые к алгоритмам организации взаимодействия процессов.
- •7. Способы реализации взаимного исключения: запрещение прерываний
- •8. Способы реализации взаимного исключения: переменная-замок
- •9. Способы реализации взаимного исключения: строгое чередование
- •10. Способы реализации взаимного исключения: флаги готовности
- •11. Способы реализации взаимного исключения: алгоритм Петерсона и алгоритм булочной. Алгоритм Петерсона
- •Алгоритм булочной
- •12. Аппаратная реализация взаимоисключений.
- •13. Семафорные примитивы Дейкстры. Решение задачи производителя и потребителя с помощью семафоров.
- •14. Монитор Хоара как примитив синхронизации высокого уровня. Решение задачи производителя и потребителя с помощью мониторов.
- •15. Тупиковые ситуации.
- •16. Иерархия памяти. Локальность.
- •17. Понятие физического и виртуального адреса. Связывание адресов.
- •18. Статическое распределение памяти: разделы с фиксированными границами
- •19. Статическое распределение памяти: один процесс в памяти.
- •20. Динамическое распределение памяти: разделы с подвижными границами. Уплотнение памяти. Свопинг.
- •22. Страничная организация памяти.
- •23. Таблицы страниц: одноуровневые, многоуровневые, инвертированные.
- •24. Сегментно-страничная организация памяти.
- •25. Понятие виртуальной памяти. Страничный механизм трансляции.
- •26. Стратегии управления виртуальной памятью.
- •30. Дисциплины замещения страниц: выталкивание редко используемой страницы.
- •31. Модель рабочего множества. Трешинг.
Средства межпроцессного взаимодействия. Сигнальные средства связи.
Средства межпроцессного взаимодействия. Канальные средства связи.
Синхронизация параллельных процессов. Критические ресурсы. Критический участок.
Синхронизация параллельных процессов. Понятие взаимного исключения.
Синхронизация параллельных процессов. Условия Бернстайна.
Требования, предъявляемые к алгоритмам организации взаимодействия процессов.
Способы реализации взаимного исключения: запрещение прерываний
Способы реализации взаимного исключения: переменная-замок
Способы реализации взаимного исключения: строгое чередование
Способы реализации взаимного исключения: флаги готовности
Способы реализации взаимного исключения: алгоритм Петерсона и алгоритм булочной.
Аппаратная реализация взаимоисключений.
Семафорные примитивы Дейкстры. Решение задачи производителя и потребителя с помощью семафоров.
Монитор Хоара как примитив синхронизации высокого уровня. Решение задачи производителя и потребителя с помощью мониторов.
Тупиковые ситуации.
Иерархия памяти. Локальность.
Понятие физического и виртуального адреса. Связывание адресов.
Статическое распределение памяти: разделы с фиксированными границами
Статическое распределение памяти: один процесс в памяти.
Динамическое распределение памяти: разделы с подвижными границами. Уплотнение памяти. Свопинг.
Сегментная организация памяти.
Страничная организация памяти.
Таблицы страниц: одноуровневые, многоуровневые, инвертированные.
Сегментно-страничная организация памяти.
Понятие виртуальной памяти. Страничный механизм трансляции.
Стратегии управления виртуальной памятью.
Дисциплины замещения страниц: FIFO
Дисциплины замещения страниц: оптимальный алгоритм
Дисциплины замещения страниц: выталкивание дольше всего не использовавшейся страницы
Дисциплины замещения страниц: выталкивание редко используемой страницы.
Модель рабочего множества. Трешинг.
1.Средства межпроцессного взаимодействия. Сигнальные средства связи.
Сигнал – средство связи, передающее минимум информации (вплоть до 1 бита). Адресат должен знать что означает данный сигнал, иначе сигнал будет пропущен. Адресат может проигнорировать сигнал. В ОС есть набор сигналов с известным значением и конкретной ожидаемой реакцией, а также несколько пользовательских сигналов, которые программист может использовать для своего усмотрения.
2.Средства межпроцессного взаимодействия. Канальные средства связи.
PIPE (англ.) – труба. Предназначен для передачи большого объема данных между двумя процессами. На поток передаваемых данных не накладывается никакая структура.
Программные каналы (PIPE) – создаются в памяти и адресуются адресам ячейки памяти. Они не имеют никакого наименования, месторасположения и т.д., поэтому, могут использоваться только генеалогически связанными процессами, которым известны адрес PIPE в памяти. Используются при организации конвейеров. Содержат встроенные средства синхронизации. При попытке чтения из пустого канала процесс блокируется. Поэтому все процессы конвейера работают параллельно, производя последовательную обработку данных.
Именованные каналы (FIFO) – это каналы, которые располагаются в памяти и отражены в ФС файлами специального типа (FIFO). Файл имеет стандартное для ФС имя и путь, по которому к данному именованному каналу может обратиться любой процесс. На диске данный файл отсутствует, являясь отражением области памяти.
Сообщение – это средство связи определенной структуры, включающее заголовок и тело данных. В заголовке могут содержаться адрес, тип сообщения и другие, обязательные и необязательные поля.
3. Синхронизация параллельных процессов. Критические ресурсы. Критический участок.
Критический ресурс – это ресурс или данные разделяемые между несколькими процессами, за обладание которыми состязаются несколько процессов. Такие процессы находятся в состоянии гонки .
Критический участок – это участок кода программы, в котором производится работа с критическим ресурсом.
while (true) {
prolog
critical section
epilog
remainder section } 4. Cинхронизация параллельных процессов. Понятие взаимного исключения.
Взаимоисключение – это прием, обеспечивающий монопольное взаимодействие одного процесса с критическим ресурсом. Если с критическим ресурсом работает один процесс, то доступ других процессов к этому ресурсу блокируется.
5. Синхронизация параллельных процессов. Условия Бернстайна.
Активность – набор атомарных (неделимых) операций.
Набор активностей называется детерминированным, если из определенных входных данных при псевдопараллельном выполнении этих активностей всегда получаются определенные выходные. Недетерминированный набор активностей не может использоваться в вычислительных системах.
Условия детерминированности Бернстайна:
Набор активностей детерминирован, если входные данные одной активности не пересекаются с выходными данными другой, а также выходные данные активностей не пересекаются.
Условия Бернстайна слишком жесткие, поскольку описываются невзаимодействующие процессы или активности. Поэтому, для обеспечения детерминированности набора активностей или процессов используются методы синхронизации.