Смекни!
smekni.com

Моделирование ЭВМ (стр. 2 из 4)

В машинный зал с интервалом 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. Проверка достоверности программы

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

Протокол работы программы:

Введите интервал между приходами пользователей 100

Введите время подготовки задания 1-ым пользователем 160

Введите время подготовки задания 2-ым пользователем 170

Введите время подготовки задания 3-ым пользователем 180

Введите время выполнения задания на ЭВМ 8

Введите количество промоделированных на ЭВМ заданий 500

Процент вып. заданий, поступ. от 2-го польз.= 33%

Вывод:

Результаты работы моделирующей программы совпадают с рассчитанными теоретически, следовательно программа написана и работает правильно.

Определим оптимальную структуру вычислительной системы: оптимальная структура вычислительной системы обеспечивающая минимальное время простоя оборудования достигается при следующих параметрах:интервал между приходами пользователей 2

время подготовки задания 1-ым пользователем 1

время подготовки задания 2-ым пользователем 1

время подготовки задания 3-ым пользователем 1

время выполнения задания на ЭВМ 1

3.4. Моделирование случайных воздействий

3.4.1. Моделирование случайных воздействий имеющих

равномерное распределение

3.4.1.1. Аппаратный способ

При аппаратном способе случайные или псевдослучайные числа вырабатываются специальной электронной приставкой - генератором, который является внешним устройством ЭВМ либо входит в состав процессора. Наибольшее распространение на практике нашли генераторы псевдослучайных чисел (ГПСЧ), построенные на основе регистра сдвига с реализацией некоторой логической функции в цепи обратной связи (ОС) (в нашем случае это сумматор по модулю два).

Поскольку проведение натуральных опытов с разными схемами ГПСЧ трудоемко, то мы будем использовать программное средство позволяющее строить и исследовать различные ГПСЧ на программных моделях. Для этих целей подходят автоматизированная система подготовки и обработки статистической информации (АСПОСИ), которая представляет собой комплекс программных средств, позволяющих строить математические модели различных ГПСЧ и исследовать их характеристики.

Для получения ПСЧ будем пользоваться программой gener.

Работая в диалоговом режиме с ПВМ мы определяем структуру генератора, т. е. некоторую исходную информацию: разрядность регистра сдвига ГПСЧ, вид ОС, количество и номера подключенных в цепь ОС разрядов регистра, количество генерируемых чисел и др.

Полученные числа записываются в файл и анализируются (строится гистограмма) с помощью программы analize.

Для генерации чисел мы выбрали 3 различные структуры ГПСЧ:

1) Файл vihod1.dat

Разрядность: 50

Обратная связь: 30

Количество чисел: 1000

Разрядность числа: 25

Число сдвигов: 2

2) Файл vihod2.dat

Разрядность: 50

Обратная связь: 30

Количество чисел: 1000

Разрядность числа: 25

Число сдвигов: 3

3) Файл vihod3.dat

Разрядность: 70

Обратная связь: 35

Количество чисел: 1000

Разрядность числа: 25

Число сдвигов: 6

Проверим качество чисел в файлах программой analize.

Построим гистограммы:

vihod1.dat


vihod2.dat

vihod3.dat


Проверка соответствия чисел в последовательностях требуемому распределению дает следующие результаты: теоретические и статистические данные во всех 3-х файлах по критериям Колмогорова и Х2 не согласуются.

Определение числовых характеристик

Характеристика vihod1.dat vihod2.dat vihod3.dat
1 наименьшее значение 0.02 0.005 0.00059
2 наибольшее значение 0.96 0.996 0.999
3 Мат. ожидание 0.39 0.51 0.49
4 Дисперсия 0.078 0.086 0.085
5 Среднеквадратич.отклон. 0.279 0.294 0.292
6 Эксцесс -1.92 -1.024 -1.12

Определение характеристик корреляции