Понятие монитора - раздел Образование, Понятие многослойности ядра В Сложных Программах Произвести Анализ Правильности Использования Семафоров С...
В сложных программах произвести анализ правильности использования семафоров с карандашом в руках становится очень непростым занятием. В то же время обычные способы отладки программ зачастую не дают результата, поскольку возникновение ошибок зависит от interleaving'а атомарных операций, и ошибки могут быть трудно воспроизводимы. Для того чтобы облегчить труд программистов, в 1974 году Хоаром (Hoare) был предложен механизм еще более высокого уровня, чем семафоры, получивший название мониторов.
Монитор — в языках программирования, высокоуровневый механизм взаимодействия и синхронизации процессов, обеспечивающий доступ к неразделяемым ресурсам. Подход к синхронизации двух или более компьютерных задач, использующих общий ресурс, обычно аппаратуру или набор переменных.
Пер Бринч Хансен был первым, кто описал и реализовал мониторы, основывая их на идеях Хоара. Впоследствии Хоар разработал теоретическую основу и показал её эквивалентность семафорам (используя исходную семантику).
При многозадачности, основанной на мониторах, компилятор или интерпретатор прозрачно для программиста вставляет код блокировки-разблокировки в соответствующим образом оформленные процедуры, избавляя программиста от явного обращения к примитивам синхронизации
Монитор состоит из:
· набора процедур, взаимодействующих с общим ресурсом
· мьютекса
· переменных, связанных с этим ресурсом
· инварианта, который определяет условия, позволяющие избежать состояния гонки
Процедура монитора захватывает мьютекс перед началом работы и держит его или до выхода из процедуры, или до момента ожидания условия. Если каждая процедура гарантирует, что перед освобождением мьютекса инвариант истиннен, то никакая задача не может получить ресурс в состоянии, ведущем к гонке.
Повышение удобства и эффективности работы пользователя является целью другого способа мультипрограммирования разделения времени В системах... В системах разделения времени эта проблема решается за счет того что ОС... Системы разделения времени призваны исправить основной недостаток систем пакетной обработки изоляцию...
Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ:
Понятие монитора
Что будем делать с полученным материалом:
Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:
Понятие многослойности ядра
Поскольку ядро представляет собой сложный многофункциональный комплекс, то многослойный подход обычно распространяется и на структуру ядра.
Ядро может состоять из следующих слоев:
Понятие микроядерной структуры
Концепция
Микроядерная архитектура является альтернативой классическому способу построения операционной системы. Под классической архитектурой в данном случае понимается рассмотренн
Состояния процессов. Состояние потоков
ОС выполняет планирование потоков, принимая во внимание их состояние. В мультипрограммной системе поток может находиться в одном из трех основных состояний:
§ выполнение — активное состоян
Проблема взаимного исключения процессов
Проблема взаимного исключения является крайне важной при разработке операционных систем. Взаимное исключение гарантирует то, что в каждый момент времени лишь один процесс имеет доступ к какому-то к
Понятие критической секции
Важным понятием синхронизации потоков является понятие «критической секции» программы. Критическая секция — это часть программы, результат выполнения которой может непредсказуемо меняться, если пер
Алгоритм Петерсона
Алгоритм Петерсона — программный алгоритм взаимного исключения потоков исполнения кода, разработанный Г. Петерсоном в 1981 г. Хотя изначально был сформулирован для 2-х поточного случая, алгоритм мо
Понятие тупика
Говорят, что в мультипрограммной системе процесс находится в состоянии тупика, дедлока, или клинча, если он ожидает некоторого события, которое никогда не произойдет. Системная тупик
Четыре необходимых условия возникновения тупика
Коффман, Элфик и Шошани сформулировали следующие четыре необходимых условия наличия тупика.
• Процессы требуют предоставления им права монопольного управления ресурсами, которые им выделяю
Понятие семафора
В теории операционных систем семафор представляет собой неотрицательную целую переменную, над которой возможны два вида операций: P и V. P-операция над семафором представляет собой попытку уменьшен
Сегментно-страничное распределение памяти
Как видно из названия, данный метод представляет собой комбинацию страничного и сегментного распределения памяти и, вследствие этого, сочетает в себе достоинства обоих подходов. Виртуальное простра
Цели и задачи файловой системы
Фа́йловая систе́ма — порядок, определяющий способ организации, хранения и именования данных на носителях информации в компьютерах, а также в другом электронном оборудовании: цифровых фото
Физическая организация файловой системы FAT.
Логический раздел, отформатированный под файловую систему FAT, состоит из следующих областей.
· Загрузочный сектор содержит программу начальной загрузки операционной системы. Вид эт
Физическая организация файловых систем s5 и ufs.
Файловые системы s5 (получившие название от System V, родового имени нескольких версий ОС UNIX, разработанных в Bell Labs компании AT&T) и ufs (UNIX File System) используют очень близкую физиче
Физическая организация файловой системы NTFS
Файловая система NTFS была разработана в качестве основной файловой системы для ОС Windows NT в начале 90-х годов с учетом опыта разработки файловых систем FAT и HPFS (основная файловая система для
Структура тома NTFS
В отличие от разделов FAT и s5/ufs все пространство тома NTFS представляет собой либо файл, либо часть файла. Основой структуры тома NTFS является главная таблица файлов (Master File Table, MFT)
Обработчики прерываний, драйверы устройств
Обработчик прерываний (или процедура обслуживания прерываний) — специальная процедура, вызываемая по прерыванию для выполнения его обработки. Обработчики прерываний могут выполнять множество функци
Хотите получать на электронную почту самые свежие новости?
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Новости и инфо для студентов