Skip to content

NameInit/gpss-on-cpp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 

Repository files navigation

GPSS Simulation на C++

Имитационная система GPSS (General Purpose Simulation System), реализованная на современном C++.

📋 Особенности

  • Язык: C++17
  • Сборка: CMake
  • ОС: Linux Ubuntu 20.04+
  • Архитектура: На основе цепей событий (CEC - Current Events Chain, FEC - Future Events Chain)
  • Форматирование: Clang-format

🏗️ Структура проекта

src/
├── source/          # Основные модули симуляции
├── headers/         # Объявления для модулей
├── data_io/         # Модули ввода-вывода данных
├── main.cpp         # Главная программа
├── CMakeLists.txt   # Конфигурация CMake
└── Makefile         # Альтернативная сборка

📦 Зависимости

  • Компилятор C++ с поддержкой C++17 (g++ 8+)
  • CMake 3.10+
  • Стандартная библиотека C++

🛠️ Сборка

# Клонирование репозитория
git clone <repository-url>
cd gpss-on-cpp

# Сборка с CMake
cmake ./
make

# Или альтернативная сборка
make -f Makefile

🚀 Запуск

# После сборки
./gpss

# Или через Makefile
make run

📊 Выходные данные

Программа создает директорию report/ с результатами симуляции:

  • report.txt - детальный отчет
  • Статистика по транзактам
  • Временные характеристики

🧩 Основные компоненты

  • CEC (Current Events Chain) - цепь текущих событий
  • FEC (Future Events Chain) - цепь будущих событий
  • Генераторы - создание транзактов
  • Накопители - управление ресурсами
  • Устройства - обработка транзактов

📝 Пример использования

// Создание симуляции
Simulation sim;
sim.run(...);

🧹 Очистка

# Очистка билд-файлов
make clean

# Полная очистка (включая отчеты)
make clean_all

About

gpss on c++

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published