Fast & Deterministic
The PX5 RTOS is extremely fast and efficient. On typical 32-bit microcontrollers running at 80MHz, most API calls and context switches complete in less than one microsecond. The PX5 RTOS is also deterministic. The processing for each API and context switch is completely predictable and not a function of how many threads are active. For example, the processing required to obtain a semaphore is the same whether two or 100 threads are active.
The PX5 RTOS is one of the smallest RTOSes available, requiring less than 1KB of FLASH and 1KB of RAM on typical 32-bit microcontrollers. Equally important, since the PX5 RTOS is implemented with loosely coupled C functions, size automatically scales based on the application's use. If the API and associated functions are not used, they are simply not brought into the image by the linker.
The PX5 RTOS is composed of two main source files, namely px5.c and px5_binding.s. These files can be easily dropped into any C main project example and PX5 is ready to run. No complicated projects and/or linker control file changes are necessary. Using PX5 in your application is just as easy. Simply include pthread.h and add a call to px5_pthread_start to your C main function, as follows:
/* Start PX5. */
px5_pthread_start(1, NULL, 0);
/* Once px5_pthread_start returns, the C main function
has been elevated to a thread - the first thread in
your system! */
/* PX5 RTOS API calls are all available at
this point. For this example, simply sleep for
1 second. */
This small example shows that the PX5 RTOS is easy to install and use, taking only minutes of your time. The processor/tool binding layer examples can also serve as a starting point. The native POSIX pthreads API support also simplifies development. This well-known API reduces the learning curve for new developers. It also enables code sharing between any devices based on embedded Linux.
The PX5 RTOS is a 5G RTOS implementation. It has unique data encapsulation technology which helps compilers generate the most efficient code and at the same time reduces namespace collision with the application. The PX5 RTOS also offers Memory Guardian technology, a unique technology for unprecedented run-time function pointer, linked-list, and stack verification. Finally, central error handling - with optional user enhancement - helps facilitate building more robust applications.
Full Source Code
The PX5 RTOS is delivered with complete source code, including the PX5 RTOS binding layer source. The source code is designed to be easily understood. It is also rigorously tested - 100% C statement and branch decision coverage testing for every release. The PX5 RTOS offers the highest quality source on the market.
Most (99%) of the PX5 RTOS is written in ANSI C, which makes it highly portable to any processor architecture that has C compiler support. Because of this, the PX5 RTOS supports most of the popular embedded MCU and MPU architectures, including ARM's Cortex-M, Cortex-R, Cortex-A, and RISC-V architecture families.
As with its processor support, the PX5 RTOS supports most popular embedded development tools, including those from IAR, ARM, and GCC.
PX5 offers royalty-free licensing for the PX5 RTOS. Like the product itself, the PX5 RTOS licensing is simple and easy to work with.
Always ready to help, the embedded software experts on the PX5 support team promise quick action on every request. Unlike as with many open source and even some commercial options, you’re not on your own when using PX5 RTOS.