Определение протокола защиты от инверсии приоритетов
Определение протокола защиты от инверсии приоритетов
int pthread_mutexattr_setprotocol(
pthread_mutexattr_t* attr, int protocol);
int pthread_mutexattr_getprotocol(
pthread_mutexattr_t* attr, int* protocol);
Эти функции устанавливают/считывают протокол, который реализуется мьютексом для защиты от инверсии приоритетов. Переменная protocol может принимать следующие значения:
PTHREAD_PRIO_INHERIT (значение по умолчанию) — определяет, что для воспрепятствования возникновению инверсии приоритетов будет использоваться протокол наследования приоритетов.
PTHREAD_PRIO_PROTECT — любой поток, захвативший мьютекс и созданный с таким параметром, будет устанавливать фиксированный уровень приоритета в соответствии со значением поля prioceiling, возвращаемого функцией pthread_mutexattr_getprioceiling(). Таким образом, установка этого значения в качестве протокола мьютекса приводит к реализации протокола граничного приоритета для защиты от инверсии приоритетов.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКДанный текст является ознакомительным фрагментом.
Читайте также
Предостережение относительно использования приоритетов потоков и процессов
Предостережение относительно использования приоритетов потоков и процессов Высокими приоритетами потоков и высокими классами приоритета процессов необходимо пользоваться с осторожностью. Следует решительно избегать использования приоритетов реального времени для
Массивы приоритетов
Массивы приоритетов Каждая очередь выполнения содержит два массива приоритетов (priority arrays): активный и истекший. Массивы приоритетов определены в файле kernel/sched.c в виде описания struct prio_array. Массивы приоритетов — это структуры данных, которые обеспечивают O(1)-планирование.
Вычисление приоритетов и квантов времени
Вычисление приоритетов и квантов времени В начале этой главы было рассмотрено, как приоритет и квант времени используются для того, чтобы влиять на те решения, которые принимает планировщик. Кроме того, были рассмотрены процессы, ограниченные скоростью ввода-вывода и
Наследование приоритетов
Наследование приоритетов Одним из интересных моментов в операционных системах реального времени является феномен инверсии приоритетов.Инверсия приоритетов наблюдается, например, в случае, когда поток с низким приоритетом потребляет все процессорное время, в то время
Инверсия приоритетов
Инверсия приоритетов Независимо от причины мы всегда находим способы избежать выполнения работы. Мы убеждаем себя, что у вас есть более срочная задача, и занимаемся ей. Это называется инверсией приоритетов: вы искусственно повышаете приоритет задачи, чтобы отложить
Динамическое планирование приоритетов
Динамическое планирование приоритетов В предыдущих разделах мы рассмотрели более понятную, но упрощенную модель диспетчеризации задач в AS/400. Со времен первой System/38 в структуру задач было внесено множество изменений для удовлетворения требований различных приложений и
1.3. Независимость от протокола
1.3. Независимость от протокола Наша программа, представленная в листинге 1.1, является зависимой от протокола (protocol dependent) IPv4. Мы выделяем и инициализируем структуру sockaddr_in, определяем адрес как относящийся к семейству AF_INET и устанавливаем первый аргумент функции socket равным
Выбор протокола
Выбор протокола Выбор протокола получения почты зависит от имеющихся в наличии ресурсов и от того, какие клиентские программы применяют пользователи. Не секрет, что на решение вопроса большое влияние оказывают вкусы и привычки самого системного администратора. При
Пример 6-2. Использование символа ! для логической инверсии кода возврата
Пример 6-2. Использование символа ! для логической инверсии кода возврата true # встроенная команда "true".echo "код возврата команды "true" = $?" # 0! trueecho "код возврата команды "! true" = $?" # 1# Обратите внимание: символ "!" от команды необходимо отделять пробелом.# !true вызовет сообщение
NetFront Browser 4.0: смена приоритетов Андрей Крупин
NetFront Browser 4.0: смена приоритетов Андрей Крупин Прошедший 2009 год, богатый событиями на рынке программного обеспечения, многим запомнился гонкой производительности браузеров для настольных платформ. В наступившем году состязание за звание лидера, несомненно, продолжится,
Дмитрий Плесконос: Развитие Интернета — один из приоритетов
Дмитрий Плесконос: Развитие Интернета — один из приоритетов Исполнительный вице-президент ОАО «Вымпелком» по развитию бизнеса на массовом рынке Дмитрий Плесконос ответил на вопросы читателей «Компьютерры» о доступе в Интернет, предоставляемом под брендом
8 Расстановка приоритетов
8 Расстановка приоритетов В этой главе описывается процесс расстановки приоритетов «снизу вверх». Вначале я уточню то, чего поверхностно коснулся в главе 5, - расстановка приоритетов в сегодняшнем списке дел. Затем я собираюсь обсудить приоритеты более крупных проектов.
Расстановка приоритетов в списке дел
Расстановка приоритетов в списке дел Итак, вы сидите за рабочим столом, и перед вами список сегодняшних дел. Десятки пунктов. Как вы определите, с чего начать?Этот раздел посвящен расстановке приоритетов в этом списке. В разных ситуациях приходится использовать разные
Дмитрий Плесконос: Развитие Интернета - один из приоритетов
Дмитрий Плесконос: Развитие Интернета - один из приоритетов Автор: Опубликовано 22 марта 2010 годаИсполнительный вице-президент ОАО «Вымпелком» по развитию бизнеса на массовом рынке Дмитрий Плесконос ответил на вопросы читателей "Компьютерры" о доступе в Интернет,