|smxMPU™ — smx® for ARM Cortex-M MPU |
smxMPU is a version of the smx RTOS kernel that supports the ARM Cortex‑M Memory Protection Unit. The Cortex-M MPU is difficult to use. The primary goal of smxMPU is to make using the MPU as easy as possible, while offering as much protection as possible. A key idea of our approach is to allow progressively increasing the security of a system. See the following links for details.
We continue to enhance the implementation and documentation of smxMPU.
Please check here periodically for updated information.
smxMPU Press Release
smxMPU Manual (PDF) [Rev 1/11/17] 251K
smxMPU Part 1: Security and the Cortex-M MPU
smxMPU Part 2: MPU Multitasking
smxMPU Part 3: Defining MPU Regions
A word from the developer:
Although other RTOSes offer MPU support, little is said about it, suggesting that little was done. I have put a lot of thought into how to make the MPU usable, and I have implemented what is likely the best solution.
Also, there is little documentation from ARM. I am writing a series of blogs to explain more about the MPU and how to use it. These will be linked above, as they are published.
While you are here, I encourage you to learn more about SMX RTOS using the links below.
SMX RTOS Products Page
SMX Learning Kits are free, fully functional releases of the smx kernel for non-commercial use in personal and class projects, proofs of concept, and prototypes. They are available for several low-cost boards that are popular in the DIY / Maker community.
SMX Evaluation Kits are available for a much larger number of evaluation boards and include SMX middleware. They require registration, and a sales person will be in contact. Evaluation Kits are intended to allow developers to work with SMX in order to decide whether to purchase a license for their projects.