рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Проблема взаимного исключения процессов

Проблема взаимного исключения процессов - раздел Образование, Понятие многослойности ядра Проблема Взаимного Исключения Является Крайне Важной При Разработке Операцион...

Проблема взаимного исключения является крайне важной при разработке операционных систем. Взаимное исключение гарантирует то, что в каждый момент времени лишь один процесс имеет доступ к какому-то конкретному ресурсу. Проблема относится к тем ресурсам, доступ к которым нельзя разделять или если это может привести к непредвиденным последствиям. Например, если один процесс читает ячейку памяти в то время, как другой пишет в эту ячейку, то первый процесс может получитьневерные данные. В общем случае нельзя без ограничений разделять ресурсы, в которые можно записывать.


Процессы можно разделить на:

· Независимые процессы: борются за использование ресурсов, поскольку процессы не знают друг о друге и между ними нет обмена информацией. ОС должна регулировать доступ к ресурсам

· Связанные процессы: работают совместно и общаются между собой посредством идентификатора процесса (ID). Процессы общаются для обмена информацией (внутрипроцессная коммуникация) и для упорядочивания действий (синхронизация).

Ресурс, который хотят использовать несколько процессов является критическим ресурсом, а программный код, из которого поступает запрос на использование, является критической секцией кода. Взаимное исключение обеспечивает, чтобы критические секции разных процессов не запускались одновременно.

Рисунок 2‑7. Взаимное исключение процессов (Источник: Learning Materials for Information Technology Professionals (EUCIP-Mat))

В общем виде постановка задачи взаимного исключения формулируется следующим образом: необходимо согласовать работу n >= 2 параллельных процессов при использовании некоторого критического ресурса таким образом, чтобы удовлетворить следующим требованиям:

- одновременно внутри критической области должно находиться не более одного процесса;

- критические области не должны иметь приоритета в отношении друг друга;

- остановка какого-либо процесса вне его критической области не должна влиять на дальнейшую работу процессов по использованию критического ресурса;

- решение о вхождении процессов в их критические области при одинаковом времени поступления запросов на такое вхождение и равноприоритетности процессов не откладывается на неопределенное время, а является конечным по времени;

- относительные скорости развития процессов неизвестны и произвольны;

- любой процесс может переходить в любое состояние, отличное от активного, вне пределов своей критической области;

- освобождение критического ресурса и выход из критической области должны быть произведены процессом, использующим критический ресурс, за конечное время.

 

– Конец работы –

Эта тема принадлежит разделу:

Понятие многослойности ядра

Повышение удобства и эффективности работы пользователя является целью другого способа мультипрограммирования разделения времени В системах... В системах разделения времени эта проблема решается за счет того что ОС... Системы разделения времени призваны исправить основной недостаток систем пакетной обработки изоляцию...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Проблема взаимного исключения процессов

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Понятие многослойности ядра
Поскольку ядро представляет собой сложный многофункциональный комплекс, то многослойный подход обычно распространяется и на структуру ядра. Ядро может состоять из следующих слоев:

Аппаратная зависимость и переносимость ОС. Типовые средства аппаратной поддержки ОС.
Многие операционные системы успешно работают на различных аппаратных платформах без существенных изменений в своем составе. Во многом это объясняется тем, что, несмотря на различия в деталях, средс

Понятие микроядерной структуры
Концепция Микроядерная архитектура является альтернативой классическому способу построения операционной системы. Под классической архитектурой в данном случае понимается рассмотренн

Понятие мультипрограммирования. Мультипрограммирование в системах пакетной обработки.
Мультипрограммирование, или многозадачность (multitasking), — это способ организации вычислительного процесса, при котором на одном процессоре попеременно выполняются сразу несколько программ. Эти

Понятие мультипрограммирования. Мультипрограммирование в системах реального времени
Еще одна разновидность мультипрограммирования используется в системах реального времени, предназначенных для управления от компьютера различными техническими объектами (например, станком, спутником

Планирование процессов и потоков. Вытесняющие и невытесняющие алгоритмы планирования
На протяжении существования процесса выполнение его потоков может быть многократно прервано и продолжено. (В системе, не поддерживающей потоки, все сказанное ниже о планировании и диспетчеризации о

Состояния процессов. Состояние потоков
ОС выполняет планирование потоков, принимая во внимание их состояние. В мультипрограммной системе поток может находиться в одном из трех основных состояний: § выполнение — активное состоян

Понятие критической секции
Важным понятием синхронизации потоков является понятие «критической секции» программы. Критическая секция — это часть программы, результат выполнения которой может непредсказуемо меняться, если пер

Алгоритм Петерсона
Алгоритм Петерсона — программный алгоритм взаимного исключения потоков исполнения кода, разработанный Г. Петерсоном в 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)

Обработчики прерываний, драйверы устройств
Обработчик прерываний (или процедура обслуживания прерываний) — специальная процедура, вызываемая по прерыванию для выполнения его обработки. Обработчики прерываний могут выполнять множество функци

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги