forked from Imagelibrary/rtems
Add basic support for the Multiprocessor Resource Sharing Protocol (MrsP). The Multiprocessor Resource Sharing Protocol (MrsP) is defined in A. Burns and A.J. Wellings, A Schedulability Compatible Multiprocessor Resource Sharing Protocol - MrsP, Proceedings of the 25th Euromicro Conference on Real-Time Systems (ECRTS 2013), July 2013. It is a generalization of the Priority Ceiling Protocol to SMP systems. Each MrsP semaphore uses a ceiling priority per scheduler instance. These ceiling priorities can be specified with rtems_semaphore_set_priority(). A task obtaining or owning a MrsP semaphore will execute with the ceiling priority for its scheduler instance as specified by the MrsP semaphore object. Tasks waiting to get ownership of a MrsP semaphore will not relinquish the processor voluntarily. In case the owner of a MrsP semaphore gets preempted it can ask all tasks waiting for this semaphore to help out and temporarily borrow the right to execute on one of their assigned processors. The help out feature is not implemented with this patch.
Tools Required ============== The following tools are used in the production of this documentation: TeX texi2html 1.82 texinfo-tex 4.13a texi2html will be deprecated in the upcomine texinfo release. At that point, we will need to provide support for texi2any.pl as an alternative means to produce html output. This was used by the authors to generate the directory tree figure in the texinfo printed version: tree (from the CTAN Archives -- see http://jasper.ora.com/ctan.html) Changing the Version Number and Timestamp ========================================= RTEMS Version number is in configure.in. Edit that file and run bootstrap. Documentation date is in common/setup.texi.in and also must be modified by hand. bootstrap does not have to be run after modifying this file. Making the Documentation ======================== cd rtems-XXX/doc ../bootstrap ./configure --enable-maintainer-mode make all make install Cleaning ======== make clean make distclean make maintainer-clean Making a Source Distribution ============================ This generates a rtems-<version>.tar.gz in the toplevel directory. Making a Preformatted Distribution ================================== Install and tar it up. :)