Skip to content

miselico/discrete-time-simulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

discrete-time-simulator

This is a work in progress discrete time simulator written in Go.

⚠️ The code is not usable in its current state ⚠️

The following are general ideas for the design:

  • There is a global clock, which increments with the time needed till the next event
  • The active components in the system are processes
  • Processes can communicate with each other trough named queues
    • a send and receive on a queue can have a time-out
    • a queueu has a maximum size
  • Processes only perceive relative time (no knowledge about absolute time)
  • Processes are run in separate go routines
  • All actions preformed are logged

Processes can

  • Post new events to the system
  • Perform actions which take a reported amount of time
    • The time for the action is what is reported, not how long the simulation took.
  • Sleep

About

This is a work in progress discrete time simulator written in Go

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages