• ← Quick Start
  • 1. What’s Simulus? →

Basic Tutorial¶

This tutorial describes the basic functions of simulus. You should be able to find all examples shown in this tutorial under the examples directory in the simulus source-code distribution.

  • 1. What’s Simulus?
  • 2. How Does It Work?
    • 2.1. Direct Event Scheduling
      • 2.1.1. The Hello-World Example
      • 2.1.2. Passing Arguments to Event Handlers
      • 2.1.3. The Life of a Professor
      • 2.1.4. Canceling and Rescheduling Events
      • 2.1.5. More on Simulators
    • 2.2. Process Scheduling
      • 2.2.1. Hello-World Using Process
      • 2.2.2. The Professor’s Life as a Process
      • 2.2.3. Processes Everywhere
  • 3. Inter-Process Communication
    • 3.1. Traps
      • 3.1.1. One-Time Signaling
      • 3.1.2. Barriers
    • 3.2. Semaphores
      • 3.2.1. Circular Wait
      • 3.2.2. Producer-Consumer Problem
      • 3.2.3. Queuing Disciplines
    • 3.3. Trappables and Conditional Waits
      • 3.3.1. Waiting on Multiple Trappables
      • 3.3.2. A Race between Tom and Jerry
  • 4. Resources and Facilities
    • 4.1. Resources
      • 4.1.1. A Single-Server Queue
      • 4.1.2. Conditional Wait on Resources
    • 4.2. Stores and Buckets
      • 4.2.1. Producer-Consumer Problem Revisited
      • 4.2.2. Uncountable Quantities
      • 4.2.3. Conditional Wait on Stores
    • 4.3. Mailboxes
      • 4.3.1. The PHOLD Example
      • 4.3.2. Peek versus Retrieve
      • 4.3.3. Conditional Wait on Mailboxes
  • 5. Useful Tips
    • 5.1. Pseudo-Random Numbers
    • 5.2. Statistical Data Collection
 
  • ← Quick Start
  • 1. What’s Simulus? →

Simulus

Navigation

Table of Contents

  • Quick Start
  • Basic Tutorial
    • 1. What’s Simulus?
    • 2. How Does It Work?
    • 3. Inter-Process Communication
    • 4. Resources and Facilities
    • 5. Useful Tips
  • Parallel and Distributed Simulaion
  • Simulus API Reference

Related Topics

  • Documentation overview
    • Previous: Quick Start
    • Next: 1. What’s Simulus?

Quick search

©2019, Jason Liu. | Powered by Sphinx 2.1.2 & Alabaster 0.7.12 | Page source