Задания на многопроцессорные вычисления
В файле содержится информация о совокупности вычислительных процессов, которые могут выполняться параллельно или последовательно. Приостановка выполнения процесса не допускается. Будем говорить, что процесс зависит от процесса , если для выполнения процесса необходимы результаты выполнения процесса . В этом случае процессы и могут выполняться только последовательно.
Информация о процессах представлена в файле в виде таблицы. В первом столбце таблицы указан идентификатор процесса (ID), во втором столбце таблицы – время его выполнения в миллисекундах, в третьем столбце перечислены с разделителем «;» ID процессов, от которых зависит данный процесс. Если процесс независимый, то в таблице указано значение 0.
Определите количество процессов, которые начинаются и заканчиваются во временном промежутке [4; 18] мс, при условии, что все независимые друг от друга процессы могут выполняться параллельно и никакие задержки не допускаются.
Типовой пример организации данных в файле
ID процесса В | Время выполнения процесса В (мс) | ID процесса(-ов) А |
|---|---|---|
1 | 3 | 0 |
2 | 4 | 1 |
3 | 2 | 2; 4 |
4 | 5 | 0 |
5 | 8 | 1; 4 |
6 | 3 | 1 |
Для приведённой таблицы процесс 3 начинается на 8-й мс, заканчивается на 9-й мс.
Типовой пример имеет иллюстративный характер. Для выполнения задания используйте данные из прилагаемого файла.
Файл к заданию: https://drive.google.com/file/d/1qPaOc9rMSoNy10JZcDghbBJLI6dfla6m/view?usp=drive_link