Завершите код пяти процессов, используя четыре двоичных семафора - PullRequest
0 голосов
/ 30 апреля 2020

Рассмотрим пять одновременных процессов: P1, P2, P3, P4 и P5. Каждый процесс Pi просто печатает свой индекс i, то есть P1 печатает «1», P2 печатает «2» и так далее.

Следующий порядок печати должен быть сохранен при одновременном запуске четырех процессов: P1 и P2 должны быть первыми двумя для печати, в зависимости от того, что идет первым; P 3 должен ждать, пока P1 и P2 не завершат печать; P4 и P5 должны ждать, пока P3 завершит печать, в зависимости от того, что произойдет раньше.

(Подсказка: для обеспечения порядка печати мы будем использовать четыре двоичных семафора, S1, S2, S3, S4, инициализированные в 0).

Завершите код пяти процессов, чтобы применить указанный порядок печати, используя четыре двоичных семафора.

Pi: printf (i); fflu sh (стандартный вывод); , , , .

Как мне решить эту проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...