Что называется взаимоисключением?

Взаимоисключения (mutex, мьютекс) — одноместный семафор. Цель – защита от гонок. Объект синхронизации, который устанавливается в особое сигнальное состояние, когда не занят каким-либо потоком. Только один поток владеет этим объектом в любой момент времени, отсюда и название таких объектов (от английского mutually exclusive access — взаимно исключающий доступ) — одновременный доступ к общему ресурсу исключается. После всех необходимых действий мьютекс освобождается, предоставляя другим потокам доступ к общему ресурсу. Объект может поддерживать рекурсивный захват второй раз тем же потоком, увеличивая счетчик, не блокируя поток, и требуя потом многократного освобождения. Такова, например, критическая секция в Win32. Тем не менее есть и такие реализации, которые не поддерживают такое и приводят к взаимной блокировке потока при попытке рекурсивного захвата. Это FAST_MUTEX в ядре Windows.

Билет 6.

В1: Система прерываний в МК51. Регистры IE, IP. Источники и вектора прерываний.

Архитектура МК51 реализует двухуровневую приоритетную систему прерываний с 5-ю источниками запросов, имеющими фиксированные векторы прерываний

Управление режимами выполняет регистр TCON (88H)

TCON.0 – IT0 - IT0=1 – прерывание осуществляется по переходу из 1 в 0 на входе INT0

TCON.2 – IT1 - IT1=1 – прерывание осуществляется по переходу из 1 в 0 на входе INT1

TCON.1 – IE0 – флаг прерывания от внешнего источника INT0

TCON.3 – IE1 – флаг прерывания от внешнего источника INT1

В случае работы по переходу сбрасываются при входе вобработчик прерывания

В случае работы по уровню отслеживают состояние сигналов на линиях INT0 и INT1

Управление режимами выполняют также регистры

IE – регистр разрешения прерываний (установка в «1»)

IE.0 – EX0 – Маска INT0

IE.1 – ET0 – Маска TF0 (таймер 0)

IE.2 – EX1 – Маска INT1

IE.3 – ET1 – Маска TF1 (таймер 1)

IE.4 – ES – Маска TI+RI


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: