Реферат: Моделирование ЭВМ

emb

160

И1


170

И2


180

И3


ЭВМ


Рис 2. Временные диаграммы работы системы

В машинный зал с интервалом 100 emb приходит один из пользователей.

В начале приходит первый, и начинает подготовку своего задания на это ему потребуется 160 emb. Через 100 emb приходит второй пользователь и тоже начинает подготовку задания на это ему отведено 170 emb. Вскоре после прихода 2-го пользователя (через 60 emb) заканчивает подготовку задания первый пользователь и выполняет его на ЭВМ в течении 8 emb. Через 100 emb после прихода второго пользователя приходит третий пользователь, при этом второй продолжает подготовку. Спустя 70 emb после прихода третьего пользователя заканчивает подготовку второй и выполняет свое задание на ЭВМ за 8 emb. Третий пользователь заканчивает подготовку спустя 180 emb после своего прихода, в это время

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

Таким образом за каждый цикл с периодом Т=300 emb выполняется три задания от каждого пользователя. Все они выполняются сразу же после подготовки и не задерживают друг друга, т. к. ЭВМ к моменту поступления этих заявок свободна. Все время работы очередь остается пустой. За время цикла выполняется одно задание от 2-го пользователя, следовательно процент выполненных заданий, поступивших от второго пользователя равен 33,3 %.

Нам нужно смоделировать выполнение 500 заданий, следовательно общее время работы системы равно (500/3)*300=50.000 emb. За это время ЭВМ проработала 500*8=4000 emb , следовательно загрузка ЭВМ равна 8%.

3. Алгоритмизация модели и ее машинная реализация

3.1. Выбор программных средств моделирования

Для написания программы мы выбираем язык программирования Borland C++. Этот язык хорошо зарекомендовал себя эффективностью, лаконичностью, стройностью программ. Во многих случаях программы, написанные на языке С++ сравнимы по скорости с программами, написанными на языке Ассемблера, при этом они более наглядны и просты в сопровождении. В системное окружение языка С++ входит много библиотек, в том числе библиотеки нужных нам стандартных функций.

Программа для детерминированной модели приведена в Приложении № 1.

3.2. Описание моделирующей программы для

детерминированного варианта модели

Параметры и переменные данной программы описаны в пункте 2.2.

Так как в выбранном языке программирования нельзя создать параллельные процессы, то мы применим принцип псевдораспараллеливания.

В программе организуем очередь ocher[50] в ячейках которой мы запоминаем адрес заявки (номер сетевой машины). Также вводим ряд вспомогательных переменных ( ztgz1, ztgz2, ztgz3, ztm, zk ) необходимых для хранения значений исходных параметров системы.

Данная моделирующая программа работает следующим образом:

Вначале программа запрашивает значения параметров системы. Далее организуется основной цикл, который выполняется k раз. Первым действием в цикле является оператор прибавления единицы машинного времени t=t+emb. После проверяем не пришел ли пользователь, если пришел то определяем какой ( конструкция switch (cikl) ). Далее в программе идет конструкция switch (nz) устанавливающая соответствующие флажки подготовки задания. После идет группа условий выполняющая уменьшение времени подготовки задания. Если задание подготовлено то подается запрос на выполнение. В этом блоке программы определяется не пуста ли очередь, если не пуста то выполняем задание из очереди иначе выполняем заявку с сетевой машины. Перед выполнением заявки проверяем занята ли ЭВМ, если занята то ставим заявку в очередь. Далее если на ЭВМ выполняемся задача то уменьшаем время выполнения этой задачи. После чего цикл повторяется. После завершения цикла производим подсчет процента выполненных заданий, поступивших от второго пользователя.

3.3. Проверка достоверности программы

Смоделируем работу системы с параметрами указанными в задании.

К-во Просмотров: 1201
Бесплатно скачать Реферат: Моделирование ЭВМ