ЛР1 12 подзаданий ЛР2 2 подзадания ЛР3 2 подзадания
Лабораторная работа. Системное программирование, потоки
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.
Общая постановка задачи. Требуется разработать программу в виде Linux-приложения, для различных
частей которой создаются и запускается потоки выполнения, а для
синхронизации доступа к требуемым ресурсам используются соответствующие
объекты ОС. Результат выполнения выводится на терминал/консоль.
Программа должна быть устойчивой к некорректному пользовательскому
вводу. Функционирование программы, если это не оговаривается особо, может
быть завершено только путем принудительного снятия процесса с выполнения.
В большинстве вариантов заданий решаются классические задачи
синхронизации. Приостановка выполнения потока на заданный промежуток
времени может выполняться вызовом функции nanosleep().
«Обедающие философы 11 ». В пансионе отдыхают и предаются
размышлениям 5 философов (потоки), пронумерованные от 1 до 5. В столовой
расположен круглый стол, вокруг которого расставлены 5 стульев, также
пронумерованные от 1 до 5. На столе находится одна большая тарелка со
спагетти, которая пополняется бесконечно. Также там расставлены 5 тарелок,
куда накладываются спагетти, и 5 вилок (разделяемые ресурсы), назначение
которых очевидно.
Для того чтобы пообедать, философ входит в столовую и садится на
стул со своим номером. При этом есть философ сможет только в том случае,
если свободны две вилки – справа и слева от его тарелки. При выполнении
этого условия философ поднимает одновременно обе вилки и может поглощать
пищу в течение какого-то заданного времени. В противном случае философу
приходится ждать освобождения обеих вилок.
Пообедав, философ кладет обе вилки на стол одновременно и уходит.
Величина временного промежутка для поглощения пищи устанавливается
пользователем при старте приложения, а появление философа в столовой
является случайной величиной с равномерным законом распределения.
- Похожие заказы
- Лабораторные работы12 заявокЗакрытгод назад
Выполнение лабораторной работы в среде программирования octave (gui)
Лабораторные работы1 исполнительЗакрытгод назадЛабораторные работы по MS SQL Server studio. Создать либо скачать готовую бд и по ней выполнить задания
Лабораторные работы4 заявкиЗакрытгод назад[b]Термінова робота! [/b] Зробити потрібно перші 3 лабораторні роботи. На ОС мак чи вінді. До 27-28 січня. Ціна договірна
Лабораторные работы1 заявкаЗакрытгод назадПринцип работы протокола STP
Лабораторные работы1 заявкаЗакрытгод назадЛабораторная работа по программированию на C++. Необходимо за несколько дней реализовать код и сделать к нему отчет. Ниже прикреплены файлы: пример отчета и задание с требованиями к отчету. Вариант задания №6. Нужно как можно быстрее ...
Лабораторные работы2 заявкиЗакрытгод назадНужно решить лабораторную работу по электротехнике. Схему использовать номер 6. Параметры использовать под номером 1.
Лабораторные работы1 заявкаЗакрытгод назадПотрібно виконати лабораторну роботу з предмету Бази Данних за інструкцією прикріпленною до замовлення та зробити опис проекту Думаю вам це буде легко) p.s інструкція на польскій мові
Лабораторные работы2 заявкиЗакрытгод назадВзять в лабораторной работе вариант №3. Описание лабораторных в соответствующих отдельных файлах. Требования к оформлению представлены как в описании лабораторных, так и в еще одном отдельном файле. Отдельным текстом четко описать, физические процессы происходящие ...
Лабораторные работы2 заявкиЗакрытгод назадНужно сделать 5 лаб и 1 курсач по Веб-программированию. Прикрепил методички по лаб. работам и по курсовой, примеры работ дам.
Лабораторные работы3 заявкиЗакрытгод назад