[30.11.11] Семинар №7 (1051964)
Текст из файла
Семинар №7 [30.11.11]
Продолжаются попытки написать рубежный контроль
Задача 81. Система состоит из одного процессора и одного диска. На систему поступает поток задач с интервалом (a1,a2). Цикл решения задачи – последовательная обработка процессором и диском. Для каждой задачи число циклов решения в системе индивидуально и распределено равномерно от 3 до 8. К каждому устройству своя очередь. Время решения в процессоре в интервале – (b1,b2), время занятия диска – (c1,c2). В системе может одновременно находиться не более 4 задач. Остальные ожидают во внешней очереди к системе. Когда задача освобождает устройство в пределах своего цикла, его занимает другая задача. Когда очередная задача выполнит все свои циклы, она покидает систему, и её может занять другая задача из внешней очереди. На диске происходят сбои в интервале (d1,d2). Сбой – это отказ с мгновенным восстановлением, но с разрушением текущих данных, то есть, если сбой пришёлся на задачу, занимавшую диск, то необходима повторная обработка задачи диском. Процессор иногда переходит в режим тестирования с интервалом F на время B.
БЛОК ЗАДАЧИ
описание
N – скаляр; // число циклов решения
Тновздч – скаляр; // время появления новой задачи
всё описание
алгоритм
НАЧ: N := ЦЕЛОЕ(RAND * 5 + 3);
создать W типа вектор(1 - скаляр);
W(1) := N;
создать S типа ссылка;
S := ссылка на W;
Тновздч := ВРЕМЯ + (RAND * (a2-a1) + a1);
ждать ВРЕМЯ = Тновздч;
активизировать инициатор из S в блок СИСТЕМА на метку СТАРТ;
направить ИНИЦИАТОР на метку НАЧ;
всё алгоритм
всё БЛОК.
БЛОК СИСТЕМА
описание
ПРОЦ, ДИСК – скаляры; // начальные значения “свободен”
МАКС – скаляр; // считает, сколько пакетов уже в системе, начальное = 1
Тпроц, Тдиск, Ттест, Тсбой – скаляры;
ЦКЛ – вектор(1,2,3,4 - скаляры); // число выполненных циклов для каждой задачи
всё описание
алгоритм
СТАРТ: Тстоп := ВРЕМЯ + F; // время остановки на тестирование
Тсбой := ВРЕМЯ + (RAND * (d2-d1) + d1); // время возникновения сбоя диска
ждать МАКС < 5; // для соответствия индексам вектора ЦКЛ
ждать ПРОЦ = “свободен”;
МАКС := МАКС + 1;
ЕЩЁ: ЦКЛ(МАКС) := ЦКЛ(МАКС) + 1;
если ВРЕМЯ = Тстоп то ждать B; // идёт тестирование
ПРОЦ := “занят”;
Тпроц := ВРЕМЯ + (RAND * (b2-b1) + b1);
ждать ВРЕМЯ = Тпроц;
ПРОЦ := “свободен”;
ждать ДИСК = “свободен”;
ДИСК := “занят”;
ПОВТ: Тдиск := ВРЕМЯ + (RAND * (c2-c1) + c1);
ждать ВРЕМЯ = Тдиск;
если ВРЕМЯ = Тсбой то направить ИНИЦИАТОР на метку ПОВТ;
ДИСК := “свободен”;
если ЦКЛ(МАКС) < (ИНИЦИАТОР->вектор(1)) то направить ИНИЦИАТОР на метку ЕЩЁ;
ЦКЛ(МАКС) := 0;
МАКС := МАКС - 1;
уничтожить ИНИЦИАТОР;
всё алгоритм
всё БЛОК.
-------------------
а желательно было сделать ещё один блок – который генерил бы ошибки и влиял на СИСТЕМУ через параметр. Как сейчас тоже можно, но тут ошибки, время сбрасывается каждым инициатором, надо ввести нулевой запуск и больше на него не попадать
Характеристики
Тип файла документ
Документы такого типа открываются такими программами, как Microsoft Office Word на компьютерах Windows, Apple Pages на компьютерах Mac, Open Office - бесплатная альтернатива на различных платформах, в том числе Linux. Наиболее простым и современным решением будут Google документы, так как открываются онлайн без скачивания прямо в браузере на любой платформе. Существуют российские качественные аналоги, например от Яндекса.
Будьте внимательны на мобильных устройствах, так как там используются упрощённый функционал даже в официальном приложении от Microsoft, поэтому для просмотра скачивайте PDF-версию. А если нужно редактировать файл, то используйте оригинальный файл.
Файлы такого типа обычно разбиты на страницы, а текст может быть форматированным (жирный, курсив, выбор шрифта, таблицы и т.п.), а также в него можно добавлять изображения. Формат идеально подходит для рефератов, докладов и РПЗ курсовых проектов, которые необходимо распечатать. Кстати перед печатью также сохраняйте файл в PDF, так как принтер может начудить со шрифтами.