ОСлаб3_Мячина_БФИ2203
.docxМИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ, СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ
Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования
Московский технический университет связи и информатики
(МТУСИ)
Кафедра «Системное программирование»
Лабораторная работа №3
«Средства синхронизации в ОС GNU/LINUX»
по дисциплине «Операционные системы»
Выполнила:
студент группы БФИ2203
Мячина Лада Андреевна
Проверила:
Старший преподаватель
Алексанян Диана Ашотовна
Москва, 2024 г.
Цель работы: Изучение механизмов синхронизации процессов с использованием
сигналов;
семафоров;
мьютексов;
барьеров.
Задания:
Изучить теоретическую часть лабораторной работы.
Исследовать на конкретном примере особенности 3 по выбору из указанных методов синхронизации потоков:
сигналы
семафоры
мьютексы
барьеры
Задачи для синхронизации выбрать, исходя из особенностей методов, на свое усмотрение.
Ход работы:
На рисунках 1-2 представлен код программы для реализации семафоров.
Рисунок 1 - Код программы semaphor.c (1)
Рисунок 2 - Код программы semaphor.c (2)
Ниже представлен результат выполнения данной программы (рисунок 3):
Рисунок 3 - Результат выполнения semafor.c
На рисунках 4-5 представлен код программы для реализации мьютексов.
Рисунок 4 - Код программы mutex.c (1)
Рисунок 5 - Код программы mutex.c (2)
Ниже представлен результаты выполнения программы (рисунок 6):
Р
исунок
6 – Результат выполнения mutex.c
На рисунках 7-8 представлен код программы для реализации сигналов.
Рисунок 7 – Код программы signal.c (1)
Рисунок 8 – Код программы signal.c (2)
Ниже представлен результаты выполнения программы (рисунки 9-10):
Рисунок 9 – Успешное выполнение signal
Рисунок 10 – Ошибочное выполнение программы
Вывод
В результате выполнения данной работы было получено представление о средствах синхронизации в ОС GNU.
