Tested on Ubuntu 16.04 and 16.10. Other OS are supported but the creation of the virtual environment is not automated.
Run scripts/createVirtualEnv.sh
to create a PyPy 3 virtual environment with
all required dependencies.
The virtual environment is created in the directory containing this readme.
Useful entry point scripts are in the src
folder.
To execute your own scripts, run them with the python
interpreter found in
virtualenv/bin
after installation and make sure the modules in the src
directory are visible by python (the easiest way is to execute your command in
the src
directory).
The crpd
and dualpriority
packages contain a number of modules that allow
to build task sets and run simulations on them with a couple of lines of python
code.
Read the tests in the tests
directory to have examples of how to use these
modules.
For example, if you want to run the bulk simulation tool on the test file,
run the following command from the src
directory:
../virtualenv/bin/python simulate.py ../taskset/text.txt
To run tests, invoke the pytest
executable found in virtualenv/bin
with
the src
folder as current directory (or pass it as argument to pytest).
Pytest supports various options for test collection (such as running a test file
or function in particular).
You can copy, extend or modify existing test files to run your own simulations,
pytest doesn't need to be configured to find your tests.
This script searches for systems that are not schedulable with the RML (RM Laxity) dual-priority assignment policy.
This script reads systems and dual-priority promotions from a file then simulates everything according to the specified promotion and priority assignment.