The EA 2215 team is pleased to announce a new release of Cheddar, a free real time scheduling simulator.
Cheddar is a free real time scheduling tool. Cheddar is designed for checking task temporal constraints and buffer sizes of a real time application/system. It can also help you for quick prototyping of real time schedulers. Finally, it can be used for educational purposes.
Cheddar is composed of two independent parts : an editor used to describe a real time application/system, and a framework. The editor allows you to describe systems composed of several processors which own tasks, shared resources and buffers. The framework includes feasibility tests and simulation tools. Feasibility tests can be applied to check that task response times are met and that buffer size are bounded. When feasibility tests can not be applied, the studied application can be analysed with scheduling and buffer simulations.
The current release is now 1.3p1.
Cheddar is distributed under the GNU GPL license. It's a free software, and you are welcome to redistribute it under certain conditions; See the GNU General Public License for details. Source code, binaries and documentations can be freely downloaded from
Cheddar is written in Ada with GtkAda. It runs on Solaris, Linux and win32 boxes and should run on every GNAT/GtkAda supported platforms (see ACT web site for details).1) With Cheddar, you can :
- Do scheduling simulations with classical real time schedulers (Rate Monotonic, Deadline Monotonic, Least Laxity First, Earliest Deadline First, POSIX.4 queueing policies : SCHED_OTHERS, SCHED_FIFO and SCHED_RR) with different type of tasks (aperiodic, periodic, task activated with a poisson process law, ...) - Extract information from scheduling simulation : (buffer utilization factor, task response times, task missed deadlines, number of preemption, ...) - Apply feasibility tests on tasks or buffers (without scheduling simulation) : - Compute task response times. - Apply processor utilization test. - Schedule for a given base period. - Compute bound on buffer size (when buffer are shared by periodic tasks) - Shared resources support (scheduling and blocking time analysis). Supported protocols : PIP, PCP. - Tools to express and do simulations/feasibility tests with task precedencies : - Schedule tasks according to task precedencies - Compute Tindell end to end response time. - Apply Chetto and Blazewicz algorithms. - Do simulation when tasks are randomly activated.2) The most important new features are :
- Cheddar project files are now saved in a XML format. Project can then be shared between several plate-formes and tools - Add response time feasibility tests for RM/DM/POSIX.4 in the non preemptive case. Add EDF/LLF response time feasibility tests in the preemptive and the non preemptive case - Add response time from scheduling simulation - When Cheddar crashes, the ongoing project is saved in a XML file called "cheddar_bug.xml" and then, project editing is not loosed any more - Add parametric schedulers - Produce simulation results in string or XML format - Add some classic Queueing results in the framework to help buffer analysis - Add a C inferface to the Ada framework - Add some tools to do random scheduling simulation - Fix some bugs (see BUGS file)3) Work in progress :
During the next year, we plan to improve the tool with the following features :
- Update the user's guide. - Improvement of the buffer analysis features. - Add feasibility tests and simulation features for multi-processors systems - Rebuild of shared resources support : adding new protocols and add parametric shared resource protocols.
Feel free to contact us for help or bugs report.
Best Regards, The EA 2215 team