Portos: Smallest, Fastest, Easiest RTOS

Portos is a very small, fast and easy RTOS

It does not use tasks: the priority levels are directly assigned to functions

The scheduler is very small and fast; and you save context switches and stack space

A lot of tedious work is automatically handled by the Portos preprocessor

Memory footprint is 1 to 2 KB


Examples of how easy it is to use Portos. The function below executes at high priority and preempts low priority functions:

void rotate_eye(po_priority(HIGH), double angle)  // Define function with high priority

{...}


rotate_eye(po_time(123), 0.5);        // Schedule function to be called at time 123

rotate_eye(po_queue(&myqueue), 0.7);  // Or insert function in queue

More Examples

You can see the simplicity and power of Portos by looking at these short examples

Printing in background task

Queue of DMA requests

Supported Platforms

First version is now available as add-on for DSP/BIOS of Texas Instruments. It runs on all DSPs supported by DSP/BIOS.

Standalone version for ARM processor is under development.

C language and MS Windows are currently supported.

Syndicate content