Multum In Parvo Operating System is a cooperative multitasking real-time operating system specifically designed for single-chip microcontrollers with extremely limited RAM (typically less than 256 bytes) and ROM. It offers the advantages of an RTOS in low-cost embedded designs, making it an ideal choice for System-On-Chip (SoC) programmers seeking a small, fast, and royalty-free solution.
mipOS excels at managing tasks and provides essential features such as mutual exclusion, signals, message queues, memory management, and timers. It allows developers to efficiently handle concurrent operations and optimize resource utilization in resource-constrained environments.
In addition to its core functionality, mipOS offers optional modules that enhance its capabilities. These include command line support, file system and stdio support, as well as CAN (Controller Area Network) support, enabling seamless integration with communication protocols commonly used in embedded systems.
One of mipOS's key strengths is its compactness. It is designed to have a minimal footprint on the target architecture, making it suitable for devices with limited memory capacity, including on-chip implementations within SoCs. This not only conserves resources but also contributes to reduced power consumption, thereby extending battery life—a critical factor in many embedded applications.
Furthermore, mipOS's small size contributes to its ease of understanding and use. The operating system is primarily written in the widely-used C programming language, ensuring that developers can readily comprehend and work with the source code.
mipOS is freely available and distributed in fully documented source code form, enabling developers to tailor it to their specific needs. It is designed to seamlessly integrate with a variety of development tools, allowing developers to leverage their preferred toolchain for building and customizing the operating system.
With its focus on compactness, efficiency, and ease of use, mipOS empowers developers to create robust embedded systems with limited resources. By providing a comprehensive set of features and a flexible architecture, mipOS facilitates the development of reliable and cost-effective solutions for a wide range of embedded applications.
The original design and source code of mipOS were featured in an article published in Computer Programming magazine. The article delved into the internals of a portable and scalable kernel specifically designed for microcontrollers with severely limited resources.
Since its inception, mipOS has undergone successful porting efforts to various platforms, expanding its versatility and applicability. It has been successfully ported to the Intel x86 chip architecture, STMicroelectronics® ST7 microcontrollers, STM8 microcontrollers, as well as the STM32 32-bit and ARM Cortex-M3 microcontroller families. These ports enable developers to leverage mipOS across a wide range of microcontroller platforms, accommodating different project requirements.
For non-commercial distribution, mipOS is available for use with the IAR® KickStart Kit for STM32. This distribution package includes demo projects with source code, specifically tailored for the IAR® Embedded Workbench™ V5.11 for ARM and the STM8S-DISCOVERY evaluation board. Developers using other development tools, such as ST® Visual Develop™ and Cosmic® C compilers, are also supported in these demo projects.
To facilitate simulation and development, mipOS can be executed as a user-space process on both Windows™ and Linux platforms. This allows developers to simulate and test their applications without requiring dedicated hardware. Supported compilers include Microsoft® Visual Studio™ and GCC, providing flexibility and options for developers when working with mipOS.
Overall, mipOS offers a comprehensive and adaptable solution for microcontroller-based systems, and its availability on multiple platforms, along with simulation support, empowers developers to create and test applications with ease and efficiency.
Main Product Features
● compact kernel
● real-time performance
● extremely small memory requirements
● fully event-driven
● free for educational and royalty-free
● delivered in source code form
mipOS has served as the underlying firmware for various industrial applications, showcasing its reliability and versatility. Some notable examples include:
Smart valves for ships: These systems utilize STM8 and STM32 microcontrollers and encompass features such as CAN bus drivers, serial console support, and dynamic upgrade capabilities. mipOS enables efficient and robust control of smart valves, contributing to the smooth operation of ship systems.
Industrial Temperature Controllers: mipOS forms the foundation for multi-channel temperature control systems based on ST7 and STM8 microcontrollers. These controllers provide precise and reliable temperature regulation in industrial environments, ensuring optimal performance and stability.
Industrial Flow meters: mipOS is employed in flow meter applications that rely on STM8 and STM32 microcontrollers. By leveraging mipOS, these flow meters can accurately measure and monitor the flow of various substances in industrial settings, enabling efficient process control and management.
Cableway remote controllers: These controllers, based on ST7 microcontrollers, utilize mipOS to enable remote operation and control of cableway systems. mipOS provides the necessary functionality to ensure secure and responsive control, enhancing the overall safety and efficiency of cableway operations.
In each of these industrial applications, mipOS plays a crucial role in providing reliable and efficient firmware support. Its compatibility with a range of microcontrollers and support for essential features make it a valuable choice for powering industrial systems across different sectors.
Source code at https://github.com/eantcal/mipos
mipos - embedded in a Visual Studio Windows Console Application