Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Лабораторная 1

Вариант № 4. Ресурс — преподаватель на экзамене. Атрибуты — ФИО, дисциплина, а также количество студентов N (N ≥ 1), у которых он может принимать экзамен одновременно. Количество преподавателей — P (P ≥ 1). Атрибуты студента — ФИО, номер группы и список дисциплин, по которым ему нужно сдать экзамен. Алгоритмы планирования:

1. FCFS, nonpreemptive.

2. Round Robin с очередью типа FCFS, относительный приоритет.

Для блокировки доступа к преподавателю использовать семафор.

Лабораторная 2

Вариант № 3. Структура содержит запись телефонного справочника (ФИО абонента, номер телефона, адрес). Требуется по фамилии найти номер телефона и адрес абонента и вывести их в выходной файл.

В работе необходимо реализовать многопоточную обработку массива структур данных (из N элементов) четырьмя способами:

1. При помощи массива из M потоков (M ≤ N), используя для синхронизации объект ядра — семафор.

2. При помощи массива из M потоков (M ≤ N), используя для синхронизации сеть Петри, моделирующую семафор.

3. При помощи пула из M потоков (M ≤ N), используя системный пул потоков или асинхронные потоки ввода/вывода.

4. При помощи пула из M потоков (M ≤ N), моделируя его при помощи сети Петри.

При обработке массива данных массивом потоков каждый поток либо заранее выбирает диапазон элементов массива данных, которые он будет обрабатывать, либо просто берет первый необработанный элемент. Завершив обработку одного элемента, поток переходит к обработке следующего.

При обработке массива данных пулом потоков, завершив обработку одного элемента массива данных, освободившийся в пуле поток переходит к обработке следующего необработанного

элемента.

Чтобы не требовалось создавать слишком большие массивы (для которых эффект от параллельной обработки будет наиболее очевидным), можно имитировать ситуацию, когда обработка одного элемента массива требует больше процессорного времени, чем в действительности. Для этого после обработки очередного элемента массива поток может делать паузу на указанное количество миллисекунд.

Входной файл должен иметь имя «input.txt» или «input.xml». Формат входного файла представлен в табл. 2.1. (более точное описание в методичке)

Программы написать на Паскале.

Срок 1 неделя.

9 лет назад
Serega-san
Сергей 
46 летРоссия
16 лет в сервисе
Был
8 лет назад