Jump to content
NicholasLindan

Announcing the PRTOS preemptive real time operating system

Recommended Posts

Announcing the release PRTOS, an open-source preemptive real time operating system kernel for bare-metal applications.

You may find PRTOS a good choice if you want to learn about preemptive multitasking.  The API, though having all the features of FreeRTOS or uC/OS, is much simpler and easier to learn.  Additionally the system will fit into much smaller processors.

PRTOS is released by Cleveland Engineering Design - the developer of the CoRTOS cooperative real time OS, also available on Sourceforge.

PRTOS presently supports the MSP430 and AVR architectures.

PRTOS is available on Sourceforge at https://sourceforge.net/projects/prtos-preemptive-rtos/

The advantages of PRTOS are:

  •   It has the smallest footprint of any true preemptive system: 1.3kB for basic scheduling and task control, 4.8kB with all the features below (MSP430 / size optimization);
  •   Only 950 lines of code implement all of the RTOS features (SLOC-L);
  •   The system is configurable, you include only the features you need;
  •   There is minimal to zero interrupt burden;
  •   The system is well documented with a short but comprehensive manual, well-commented source code, and a test suite demonstrating the features;
  •   The system is proven - it has been in use since 1982 with applications in in-vitro medical equipment, process control instrumentation and industrial machinery;
  •   It is released under a GPL V3 license and commercial licensing is available.

PRTOS provides the following features:

Scheduling

  •   Preemptive
  •   Prioritized
  •   Round-robin equal priority tasks

Task Control

  •   Initialize/Ready
  •   Suspend/Resume
  •   Lock/Unlock
  •   Change priority
  •   Relinquish a round-robin turn

Communication

  •   Messages, priority messages
  •   Signals

Delay & Time

  •   Task delays
  •   Time-outs
  •   Periodic signals
  •   Run timers

Resources  (mutexes)

  •   Multiple resource ownership
  •   Priority inversion mitigation
  •   Priority or FIFO queuing

Semaphores

  •   Binary
  •   Counting
  •   Signaling

ISR -> task functions

  •   Send signal
  •   Send message, send priority message
  •   Resume task

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...