Демонстрация
Рис.
3. Работа программы с блокировкой на
время операции захвата
мьютекса
pthread_mutex_timedlock()
Ответы на вопросы
Какой
ресурс называется критическим
ресурсом?
Критический ресурс
- некоторый программный либо аппаратный
ресурс, который в каждый момент времени
может использоваться одним и только
одним процессом, потоком или прерыванием.
Какой
участок программы называется критическим
участком?
Критическая
участок(секция) — участок кода программы,
в котором присутствует критический
ресурс.
Какой
режим выполнения программ называется
режимом взаимного исключения?
Режим
взаимного исключения - режим выполнения
критического участка без передачи
управления от одного процесса к другому.
Какими операциями с мьютексом и с неименованным семафором
можно осуществить
проверку занятости ресурса без
блокирования
потока?
int
pthread_mutex_trylock(pthread_mutex_t *mutex);
int
sem_trywait(sem_t *sem);
int
pthread_mutex_timedlock(pthread_mutex_t *mutex,
const struct timespec
*abs_timeout);
int
sem_timedwait(sem_t *sem, const struct timespec *abs_timeout);