Cheddar: an open-source real-time schedulability tool/scheduling simulator






What is Cheddar ?



In few words

Cheddar is a GPL real-time scheduling tool/simulator. Cheddar allows you to model software architectures of real-time systems and to check their schedulability or other performance criteria.

As many schedulability analysis tools, schedulability can be assessed by scheduling simulations or feasibility tests.

With Cheddar, the modeling of the system to verify can be made with either AADL or with its own internal architecture design language, aka CheddarADL. Some experiments also exist with MARTE UML and other ADL languages such as PPOOA or MOSART. Finally, Cheddar hosts a domain specific language inside its scheduling simulator that allows users to design new task models or scheduling policies.

To summarize, Cheddar can help you : to perform schedulability analysis during early verifications at design time, to teach scheduling analysis or to quickly prototype new real-time scheduling policies or task models.

History

Cheddar is developed and maintained by a team composed of the Lab-STICC laboratory UMR CNRS 6285, from the University of Brest and Ellidiss Technologies.

The Cheddar project was started in 2002 by Frank Singhoff, University of Brest. The full list of the contributors can be reach there. Since 2008, Ellidiss Technologies also contributes to the development of Cheddar and provides industrial support of it by their commertial tool called AADLInspector .

Main features

Cheddar is composed of two independent parts: an editor to model the real-time system to be analyzed, and a framework to perform analysis.

The editor allows you to describe systems composed of cores, processors, cache units, network-on-chips which own software components (e.g. tasks, shared resources, buffers). Cheddar includes its own ADL, namely Cheddar ADL for such modeling work. However, Cheddar is also able to handle fully compliant AADL V2 models with Ellidiss AADL V2 parser to their commercial product AADLInspector.



The framework, called "Cheddar Kernel", can be called alone (e.g. by a shell script) or embedded in a toolset. Cheddar is currently used/embedded in:


The main provided analysis tools are:

The picture below is a screenshot of Cheddar: on the top of the picture, scheduling is drawn according to the scheduling policy of each core and processor. On the bottom, some task information is computed and displayed (response times, missed deadlines, processor utilization factor, ...).





Available Postdoc or Phd positions




None currently.




News








Download Cheddar



- Download Cheddar binaries (current version is Cheddar-3.2, release date : the 13th of July 2020) :

Cheddar is a free software under the GNU General Public License.
You can get the Cheddar source code and the previous releases here .

See the ChangesLog.pdf file to have history of modifications. The file REQUESTED_FEATURES.pdf contains the new features required by users and that we plan to implement in the next releases.

You can also get access to the SVN repository of Cheddar.

For compilation procedures, please read HOWTO_COMPILE.pdf

Cheddar is written in Ada, with GNAT and GtkAda Adacore products. Cheddar is known to run on Linux and windows boxes, but should run on any Adacore supported platforms ( see AdaCore web site for details).



  • To compile Cheddar on any computer, you can also use VirtualBox. You must download the cheddar_developers.vdi file in this case. For compilation procedures with VirtualBox, please read SIMPLE_WAY_TO_COMPILE_CHEDDAR_USING_VIRTUAL_BOX.pdf



    How to install and run Cheddar



    For installation procedures, please read HOWTO_INSTALL.txt



    Work in progress



    Current developments on Cheddar are about the following topics:
    1. Spacewire analysis.
    2. Joined scheduling and security analysis.
    3. NoC support.
    4. Design space exploration with PAES implementation.






    Related documents and publications







    Examples of use : system analysis, educational material and contributions from Cheddar's users



    We distribute Cheddar with a set of AADL and XML examples, but this section also contains a set of contributions from Cheddar's users :





    Contact point and mailing List



    Main contact point and coordinator : Hai Nam Tran, hai-nam.tran@univ-brest.fr


    Cheddar users and developers share information with a mailing list hosted by the University of Brest.
    To post to the list, send e-mail to cheddar@listes.univ-brest.fr. Warning : this is a private mailing-list (i.e. to post on this mailing-list, you have to subscribe to it).


    To subscribe to the list : send a request to sympa@listes.univ-brest.fr with the following text in the body of your e-mail:

    SUBSCRIBE cheddar foo@bar.com

    where foo@bar.com is your email address.


    To unsubscribe to the list : send a request to sympa@listes.univ-brest.fr with the following text in the body :

    SIGNOFF cheddar



    Authors, contributors, and Sponsors



    Cheddar is developed and maintened by a team composed of members from the Lab-STICC laboratory UMR CNRS 6285/Université de Bretagne Occidentale and Ellidiss Technologies.

    Involved people: Pierre Dissaux (Ellidiss Technologies), Jérôme Legrand (Ellidiss Technologies), Alain Plantec (Lab-STICC/Université de Bretagne Occidentale), Stéphane Rubini (Lab-STICC/Université de Bretagne Occidentale), Laurent Lemarchand (Lab-STICC/Université de Bretagne Occidentale), Hai Nam Tran (Lab-STICC/Université de Bretagne Occidentale), Mounir Lallali (Lab-STICC/Université de Bretagne Occidentale), Jalil Boukhobza (Lab-STICC/ENSTA-B), Valérie-Anne Nicolas (Lab-STICC/Université de Bretagne Occidentale) and Frank Singhoff (Lab-STICC/Université de Bretagne Occidentale).

    Phd Students working on Cheddar: Illham Atchadam and Blandine Djika. Former Phd Students  : Mourad Dridi, Rahma Bouaziz, Hai Nam Tran, Shuai Li, Vincent Gaudel, Jérôme Legrand.

    The project has been funded by Ellidiss Technologies, Conseil régional de Bretagne, UBO, Brest Métrople, BPI France, Conseil département du Finistère, Thales TCS and EGIDE/Campus France PESSOA number 27380SA and 37932TF.

    Researches on Cheddar are also performed in collaboration with the following partners:

    The following people have also contributed to the project: see AUTHORS.txt

    Thanks to people who sent us bug reports and/or advices : B. Baron, P. Mueller, H. Bonnin, T. Ren, K. Bryan, N. Hoogland, V. Hugel, J. Stemerdink, T. Vergnaud, F. Rodrigues de la Rocha, G. Laurens, V. Hugel, C. Valle, Su Young Lee, P. Wong, and M. Zanconi, ...



    In memoriam



    In the framework of the Campus France/FCT projects NORTH and SAPIENT, José Rufino was involved in the Cheddar project.

    José Rufino passed away in summer 2018. This summer, we lose someone with which we could always count, we could talk to and be heard, we could receive back nice words and incentives. José had a strong voice, but we never heard him raising his voice to anyone. We also lose his deep technical knowledge in the area of real-time and embedded systems, his ideas and persistence in pursuing them, his scientific honesty and strict rigour and his great collaborative skills. We will miss him. José devoted perhaps most of his time to his students. He cared to pass them his knowledge always seeking to improve the reading materials, preparing exercises, looking for new ways to make them learn more and better. He was considered a very demanding teacher, a characteristic that many students are only able to appreciate years later. He was also extremely dedicated and competent teacher. We believe that there will hardly be a student who will not remember José in a positive way. So the students will miss him.

    José Rufino was one of the kindest and educated persons we ever met. José was a very reserved person, maybe his kindness was too great and he didn't like to bother us with his problems. Despite so many years knowing him, there are only very few things we know from his private life, what he liked and what he used to do when away from the university. He loved an old car that belonged to his father, which he kept in good shape as he knew a lot about automotive mechanics and he could do the repairs by himself. But he didn't drive this car (at least not always), as he preferred to use public transportation to avoid traffic jams when going to work. He was taking care of his relatives who lived in Alentejo (far from Lisbon), so he was going there very often and, from time to time, would do maintenance works on that house. That's how he was. He lived his life thinking about the others and not about himself. We will miss him. Who know well how much we lose by not having him with us any longer.

    Antonio Casimiro, who met José in 1989 and worked together for almost 30 years. Frank Singhoff, Laurent Lemarchand, Stéphane Rubini, Nam Tran Hai, Jalil Boukhobza, your friends from the Cheddar team.



    Cheddar software developer work space : to get compilation instructions, to report bugs, to get developer documentation ...



    To do a bug report, to find compilation instructions and developer documentations, a work space is available for Cheddar software developers on this wiki.

    You can also report bugs and new tested platforms to cheddar@listes.univ-brest.fr (Warning : this is a private mailing-list. To post, you have to subscribe to the mailing-list first).








    Contact : Hai Nam Tran mailto:hai-nam.tran@univ-brest.fr
    Last update : The 21th of December, 2020