- •Предисловие
- •Введение
- •Глава 1. Модели массового обслуживания
- •1.1. Системы массового обслуживания и их характеристики
- •1.2. Системы c одним устройством обслуживания
- •1.3. Основы дискретно-событийного моделирования cmo
- •1.4. Многоканальные системы массового обслуживания
- •Переменная vаr1, экспоненциальное распределение
- •Глава 2. Вероятностные сети систем массового обслуживания
- •2.1. Общие сведения о сетях
- •2.2. Операционный анализ вероятностных сетей
- •2.3. Операционные зависимости
- •2.4. Анализ узких мест в сети
- •Глава 3. Вероятностное моделирование
- •3.1. Метод статистических испытаний
- •3.2. Моделирование дискретных случайных величин
- •3.3. Моделирование непрерывных случайных величин
- •3.4. Сбор статистических данных для получения оценок характеристик случайных величин
- •3.5. Определение количества реализаций при моделировании случайных величин
- •Глава 4. Система моделирования gpss
- •4.1. Объекты
- •4.2. Часы модельного времени
- •4.3. Типы операторов
- •4.4. Внесение транзактов в модель. Блок generate
- •4.5. Удаление транзактов из модели. Блок terminate
- •4.6. Элементы, отображающие одноканальные обслуживающие устройства
- •4.7. Реализация задержки во времени. Блок advance
- •4.8. Сбор статистики об ожидании. Блоки queue, depart
- •4.9. Переход транзакта в блок, отличный от последующего. Блок transfer
- •4.10. Моделирование многоканальных устройств
- •4.11. Примеры построения gpss-моделей
- •4.12. Переменные
- •4.13. Определение функции в gpss
- •4.14. Стандартные числовые атрибуты, параметры транзактов. Блоки assign, mark, loop
- •Примеры фрагментов gpss-моделей c использованием сча и параметров гранзактов
- •4.15. Изменение приоритета транзактов. Блок priority
- •4.16. Организация обслуживания c прерыванием. Блоки preempt и return
- •4.17. Сохраняемые величины
- •4.18. Проверка числовых выражений. Блок test
- •4.19. Определение и использование таблиц
- •4.20. Косвенная адресация
- •4.21. Обработка транзактов, принадлежащих одному семейству
- •4.22. Управление процессом моделирования в системе gpss
- •4.23. Списки пользователей
- •4.24. Блоки управления потоками транзактов logic, gate lr, gate ls и gate
- •4.25. Организация вывода временных рядов из gpss-модели
- •4.26. Краткая характеристика языка plus
- •4.27. Команды gpss WorId
- •4.28. Диалоговые возможности gpss World
- •4.29. Отличия между gpss World и gpss/pc
- •Глава 5. Моделирование вычислительных и операционных систем
- •5.1. Операционные системы компьютеров
- •5.2. Сети и системы передачи данных
- •5.3. Проблемы моделирования компьютеров и сетей
- •Глава 6. Основы моделирования процессов
- •6.1. Производственные процессы
- •6.2. Распределительные процессы
- •6.3. Процессы обслуживания клиентов
- •6.4. Процессы управления разработками проектов
- •Глава 7. Задания для самостоятельной работы Задание 1. Моделирование разливной линии
- •Задание 2 [10]. Моделирование контроля и настройки телевизоров
- •Задание 3. Моделирование работы кафе
- •Задание 4. Моделирование работы обрабатывающего цеха
- •Задание 5. Моделирование работы обрабатывающего цеха
- •Задание 6. Моделирование работы обрабатывающего цеха
- •Задание 7. Моделирование работы cmo
- •Задание 8. Моделирование функций
- •Задание 9 [10]. Моделирование системы обслуживания
- •Задание 10 [16]. Моделирование системы автоматизации проектирования
- •Задание 11 [16]. Моделирование работы транспортного цеха
- •Задание 12 [16]. Моделирование системы передачи разговора
- •Задание 13 [16]. Моделирование системы передачи данных
- •Задание 14 [16]. Моделирование узла коммутации сообщений
- •Задание 15 [16]. Моделирование процесса сборки
- •Задание 16 [16]. Моделирование работы цеха
- •Задание 17 [16]. Моделирование системы управления производством
- •Задание 18. Моделирование производственного процесса
- •Задание 19. Моделирование работы заправочной станции
- •Задание 20. Моделированиеработы станции технического обслуживания
- •Задание 21. Моделирование работы станции скорой помощи
- •Задание 22. Моделирование работы госпиталя
- •Задание 23. Моделирование работы маршрутных такси
- •Задание 24. Моделирование работы печатной системы
- •Задание 25. Моделирование процесса сборки пк
- •Глава8. Проектирование имитационных моделей c помощью интерактивной системы имитационного моделирования
- •8.1. Структура интерактивной системы имитационного моделирования
- •8.2. Построение концептуальной схемы модели
- •8.3. Параметрическая настройка модели
- •8.4. Генератор формул
- •8.5. Управление экспериментом
- •8.6. Запуск эксперимента и обработка результатов моделирования
- •8.7. Управление проектами и общей настройкой системы
- •8.8. Пример построения модели средствами iss 2000
- •Глава 9. Технология имитационного моделирования
- •9.1. Имитационные проекты
- •9.2. Организация экспериментов
- •9.3. Проблемы организации имитационных экспериментов
- •9.4. Оценка точности результатов моделирования
- •9.5. Факторный план
- •9.6. Дисперсионный анализ anova в планировании экспериментов
- •9.7. Библиотечная процедура anova
- •9.8. Технология проведение дисперсионного анализа в системе gpss World
- •9.9. Особенности планирования экспериментов
- •9.10. Нахождение экстремальных значений на поверхности отклика
- •9.11. Организация экспериментов в gpss WorId
- •9.L2. Выбор наилучшего варианта структуры системы
- •Глава 10. Примеры принятия решений c помощью имитационного моделирования
- •10.1. Моделирование производственного участка
- •10.2. Моделирование технологического процесса ремонта и замены оборудования
- •Приложение Системные сча
- •Сча транзактов
- •Сча блоков:
- •Сча одноканальных устройств:
- •Список литературы
- •Глава 9. Технология имитационного моделирования 167
- •Глава 10. Примеры принятия решений c помощью имитационного моделирования 203
Глава 5. Моделирование вычислительных и операционных систем
Информационные технологии связаны c процессами передачи, обработки и хранения информации, которые выполняются компьютерными системами и системами передачи информации. Задания для самостоятельной работы в главе 7 включают задачи анализа простых компьютерных систем, сетей и систем передачи данных. Предполагается, что будет использоваться язык моделирования GPSS, хотя для этого имеются разные специализированные пакеты моделирования, например, предназначенные для моделирования передачи пакетов c разной организацией сетевых протоколов и технологий. Задача этой главы – дать краткие теоретические сведения о работе компьютеров, ОС и сетей для их успешного моделирования.
5.1. Операционные системы компьютеров
Любой компьютер имеет один или несколько микропроцессоров, память, устройства ввода-вывода или периферийные устройства типа дисплеев, клавиатуры, дисков, принтеров и сетевых устройств. Компьютерное моделирование применяется для оценки производительности компьютерных систем. В большинстве случаев для этого используют имитационное моделирование, но для решения некоторых задач анализа на предыдущем этапе применяют операционный анализ сетей CMO. Память моделируют для оценки операций c общей памятью или ее уровней (кэш-память, оперативная память, память второго или третьего уровней, которая организовывается на диске).
За организацию обработки информации в компьютерной системе отвечает ОС, которая распределяет ресурсы и руководит процессами распределения этих ресурсов между программами, выполняемыми компьютером. К этим программам принадлежат не только программы пользователей, но и системные программы ОС. Ресурсы ОС – это различные устройства (процессор, дисплей, клавиатура, накопители на магнитных дисках, модемы, принтеры и т.д.), А также память, файлы, программные модули. В случае занятости нужного ресурса, который требует программа, к нему создается очередь. Таким образом, если программы пользователей, которые выполняются компьютером, используют одинаковые ресурсы в некоторые промежутки времени, то выполнение таких программ будет существенно задерживаться.
Типичные функции ОС: выбор программы, которая будет выполняться процессором, управление общей памятью, управление операциями ввода-вывода, обработка прерываний.
Компьютерная система обычно работает в мультипрограммном или в многозадачном режиме. Классическое мультипрограммный режим построен на принципе совместимости операций, которые выполняет процессор, и операций ввода-вывода, которые выполняет программируемый контроллер или процессор ввода-вывода. Например, если компьютер выполняет вывод на печать результатов некоторой программы, то пользователь одновременно может выполнять другую программу.
Многозадачный режим построен на принципе распределения времени работы процессора между несколькими выполняемыми программами. Для каждой программы выделяется свой промежуток времени (квант времени), в течение которого она выполняется процессором. Если за это время программа не закончилась, то она прерывается и процессор начинает выполнять другую программу. Обычно прерванная программа становится в очередь к процессору последней. Таким образом, каждая выполняемая программа, несколько раз получает процессорное время для расчетов, до того как покидает компьютер. Если программа во время выполнения процессором прерывается для операций ввода-вывода (например, для записывания информации на диск), то она выводится из очереди к процессору, пока не закончит операцию записывания. Остаток процессорного времени от кванта не сохраняется, и по окончании операции записывания эта программа, когда ей будет предоставлен процессор, получает новый квант времени.
При моделировании режима распределения времени процессора возникает задача о назначении промежутков времени для определенных групп программ пользователей. Использование режима распределения времени содействует тому, что более короткие задания пользователей выполняются раньше, поскольку они набирают необходимое количество квантов процессорного времени быстрее, чем длинные задания. Это вынуждает пользователей делать задания для выполнения компьютером более короткими по времени выполнения.
Если взять очень маленький квант времени, то программы пользователей будут очень часто прерываться, А каждое прерывание требует определенного времени на его обработку компьютером. Если квант времени будет стремиться к бесконечности, то программы будут обрабатываться процессором по принципу «первая поступила – первая выполняется».
В любом режиме работы (мультипрограммном или многозадачном) компьютер c одним процессором в каждый момент времени выполняет только одну программу (одну команду). Если используется мультипроцессорная система c несколькими одинаковыми процессорами, то становится возможным выполнения нескольких программ на разных процессорах. Большей частью такая система моделируется как многоканальная CMO в отличие от CMO c одним устройством обслуживания, которая моделирует работу однопроцессорной системы.
Современные ОС (Unix, Windows и др.) используют виртуальную организацию памяти для сохранности выполняемых программ. Принцип виртуальной памяти основан на том, что только некоторые части программ находятся в оперативной памяти, другие – на диске. Во время работы компьютера, если запрашивается область памяти, которая находится на диске, то эта часть программы загружается c диска в оперативную память. Если оперативной памяти недостаточно, из нее вытесняется некоторая часть другой программы, преимущественно той, к которой дольше всего не было обращений. Эти операции перемещения частей программ требуют некоторого времени, связанного c поиском нужной части программы на диске и ее считывания в память. Для ускорения операций поиска некоторые части программ могут находиться в кэш-памяти, которая обычно ускоряет операции поиска. Управление памятью требует разработки некоторой стратегии вытеснения и замещения частей программ, которая закладывается в ОС в виде алгоритма.
При выполнении операций ввода-вывода для записи или считывания данных c магнитных носителей информации, эти операции большей частью осуществляются через буфер ввода-вывода, где предварительно размещаются данные, что позволяет существенно ускорить эти операции. Выбор емкости буфера влияет на скорость выполнения операций ввода-вывода.
Обмен данными между памятью и внешними устройствами осуществляется через контроллеры ввода-вывода, но скорость их paботы на порядок больше скорости электромеханических устройств. При моделировании можно считать, что эти операции выполняют сами устройства. Поиск информации на магнитных дисках (гибких или жестких) связан c перемещением головок на нужный сектор и c непосредственным выполнением операций записи или считывания данных, которые зависят от скорости вращения диска. Поэтому для моделирования времени поиска информации (перемещения головок) используют равномерное распределение, для которого минимальное и максимальное времена берут из технических характеристик устройств.
Таким образом, работу компьютерной системы, управляемой ОС, можно представить в упрощенном виде как работу сети CMO.
При моделировании обычно интересуются временем пребывания программы пользователя в компьютерной системе (от ввода программы или запроса на ее выполнение до получения результатов ее работы или ответа) или числом программ, выполненных системой за единицу времени. Типичная программа или запрос пользователя может описываться: идентификатором программы, временем поступления в систему, емкостью нужной памяти, количеством запросов к устройствам ввода-вывода и распределением их по времени, количеству данных, которые вводятся и выводятся на тех или иных устройствах, А также более детальной информацией в зависимости от цели моделирования.