Embedded systems span a myriad of applications, ranging from simple micro-controllers to sophisticated medical imaging systems to complex industrial applications. At the heart of these diverse applications is an operating system — a software foundation that delivers a common set of services helping software developers deliver their product to market more quickly.
Enter Microware OS-9, the high-performance, high-availability real-time operating system platform. The Microware OS-9 real-time operating system (RTOS) has been deployed and proven in thousands of products worldwide and represented hundreds of embedded applications including industrial automation, control, automotive, and medical instrumentation.
- Reliability and Security
- Development Environment
- Processor Support
- Standards Compliance
- Fully Scalable
- Technical Support
Radisys sells Microware OS-9 through three Value-Added Resellers:
Why Microware OS-9?
Microware OS-9′s compact, high-performance multi-user, multi-tasking real-time kernel is a proven foundation for time-to-revenue success. OS-9 is a full-featured operating system framework, including the OS kernel, kernel services, and industry-standard APIs, middleware, and a complete IDE-based development framework.
Hard Real-Time Performance
Unlike Windows and Linux-based systems, Microware OS-9 was conceived from the ground up to meet the high performance and reliability requirements of time-critical embedded applications.
Resource-Efficient by Design
OS-9 delivers excellent performance in even the most constrained environments. OS-9 and user applications can run completely out of ROM/Flash, leaving RAM dedicated for operating systems or other program use. OS-9 modules are re-entrant. Ten copies of the same 500K program can share the same 500K of program space and only require ten copies of data space (stack, process descriptors, and other system structures associated with the process).
Scalable Modular Architecture
The OS-9′s modular architecture enables dynamic configuration changes and enhancements in order to meet changing system requirements without rebooting. OS-9 applications are written as self-contained modules and are not linked in as a single monolithic code base with the kernel. Virtually any OS-9 component may be added, removed, or updated either at system startup or while the system is running. This means features and new functionality can be added easily, in real-time, and even after deployment to the field.
Reliability, Safety and Security
OS-9 was designed with reliability, safety and security in mind. Unlike monolithic architectures, the OS-9′s advanced modular architecture offers an enhanced level of security, making it a preferred foundation for today’s networked environment.
Multi-Core and Virtualization
Coupled with Microware Hypervisor virtualization technology, the OS-9 foundation offers an unparalleled architectural flexibility. The virtualization platform supports an unlimited number of processors/hyper-threads, making it a future-proof choice for multi-processor architectures. For customers who seek to consolidate their disparate real-time and general-purpose OSs and applications on a single virtualized platform, OS-9 is deployment-ready on the Microware Hypervisor virtualization platform. This results in reduced cost of ownership, the re-use of development tools/applications, optimized system performance and improved system reliability.
Extensive Services and Middleware
The OS-9′s extensive I/O architecture supports a wide range of devices and networking options. The broad range of services, file managers and device drivers available from a single supplier speeds integration and application development, leaving customers with more time to innovate and differentiate their products.
Multimedia Application User Interface
Creating more compelling multimedia user interfaces plays a crucial role in the success of a wide range of products and applications. The OS-9 MAUI, a multimedia suite with MFM file manager, makes it easy to integrate multimedia control of video, audio, keyboard and pointing devices into any application. The result is a better multimedia product, delivered on time and within budget.
Native Development Framework
Designing embedded systems requires more than just an OS. The Microware Hawk development suite comprises of a comprehensive set of software development tools that span the embedded software workflow. The Hawk framework includes a highly optimizing C/C++ compiler, a fully customizable development environment, the award-winning CodeWright programmer’s editor, graphical debugging tools, and middleware libraries and solutions.
Under the Hood: The Microware OS-9 Architecture
OS-9 utilizes an advanced modular software structure that creates an optimum balance of speed and protection for the embedded systems and applications. OS-9 runs faster compared to microkernel operating systems, and offers an increased level of security compared to monolithic architectures. All modules and components that make up an OS-9 system–including the kernel, file managers, drivers and applications–are stored as logical OS-9 memory modules. Each memory module is a self-contained program consisting of module header, module body, and a Cyclic Redundancy Check (CRC) value. These logical software components are easy to create and manage, while ensuring high availability of the OS-9 platform.
Real-Time, Multi-Tasking Kernel
OS-9 features a process-based, real-time kernel with POSIX thread support, complete with an extensive scheduler and inter-process communication facilities. Kernel features include:
- Pre-emptive, priority-based, aging scheduler–assuring real-time responsiveness to interrupts and events
- Fault tolerance with exception handling and MMU support
- Process-based architecture with unlimited number of threads
- Inter-process communication services: Signals, Events, Semaphores, Pipes, and Data modules
- Tasks divided into priority-based classes
- Tasks can dynamically change priority
- Modular architecture based on dynamic linking
- Able to run out of Flash or ROM with no file system requirement
- Support for lightweight processes via the POSIX threads API allows easy portability to the OS-9 environment
Microware OS-9 supports three types of protective boundaries:
- The user/system state boundary: User state code uses the processor’s non-privileged instruction set, and the operating system’s user-state system calls. These restrictions let the operating system contain the application within processor boundaries.
- Process boundaries: Each process is granted access to resources by the operating system. OS-9 prevents processes from erroneously or maliciously disturbing other processes’ resources without proper authorization. If the system is using a memory management unit, OS-9 uses it to enforce memory access protection rules. If there is no MMU, OS-9 still makes an effort to enforce protection rules.
- User/group protection: Each process, each module, and (for most file systems) each file has an associated owner. OS-9 uses ownership and permissions to administer access to resources.
The OS-9′s real-time kernel allows multiple independent applications to execute simultaneously through task switching and inter-process communication facilities. All OS-9 programs run as processes containing at least one lightweight process (thread), but may also contain an effectively unlimited number of threads. Within a process, these lightweight processes share memory, I/O paths, and other resources in accordance with the POSIX threads specification and API.
OS-9 schedules threads using a fixed-priority preemptive scheduling algorithm with round-robin scheduling within each priority. The priority levels can be divided into a range that supports aging and a higher-priority range that uses strict priority scheduling. Each process can access any system resource by issuing the appropriate OS-9 service request. At every scheduling point, OS-9 compares the priority of the thread at the head of the active queue to the priority of the current thread. It contextually switches to the thread on the active queue if its priority is higher than the current processes’ priority. Aging artificially increases the effective priority of the threads in the active queue as time passes. At defined intervals, time slicing returns the current thread to the active queue behind other threads at the same priority.
Services and Extensions
At the heart of Microware OS-9 lies a collection of kernel services, extensions, and industry standard APIs, which support virtually any class of peripheral for embedded systems:
- Serial/Parallel I/O
- USB 1.1/2.0
- microSD Flash
- Disk Storage I/O (SATA, SCSI, IDE)
- PCMCIA I/O, PCI I/O, PCI Express, PCIX, compact PCI
- SLIP and PPP client support
- NFS Server and Client
- Sample drivers and framework
- Finished ported boot images for reference platform(s)
Customizable Exception Handling Framework
- Isolates, contains, and cleans up after offending software
- Customizable exception handling to extensively log, report and/or perform automated recovery exception conditions
Menu system that automates operating system boot build for supported reference platforms:
- GUI based configuration and build of system images
- Point-and-click control for networking, TCP/IP configuration, graphics and debugging
- Automatic creation of software images for target system
TECH-CHECK Diagnostic Platform
- Unique tool for online customer support in real-time
- Capture/send target and host system information report to customer support
Microware OS-9 Options
OS-9 add-on modules extend functionality for embedded development and run-time environments.
- HawkEye - A GUI based software analyzer to visualize the operation of an OS-9 system and application modules.
- XiBaseGUI - Graphics tool to enable the creation of displays, user interfaces and touch screens.
- IPsec - Soft-crypto authentication and encryption protocol package for securing IP communications.
- EtherCAT - Real-time, high peformance Ethernet-based fieldbus system.
- CANbus - Control-area network for industrial and automotive systems.
- Modbus - Serial communications bus for industrial control and automation.
- Reliance File System - Data file protection for mission-critical embedded systems.
- TrueFFS - Wear-leveling Flash file system for embedded systems.
- Microware Hypervisor - Real-time hypervisor enabling simultaneous instances of real-time and general purpose operating systems on multi-core platforms.
Microware OS-9 offers out-of-the-box support for a broad array of processors and architectures:
- SuperH (SH-3, SH-4, SH-4A)
|EMBEDDED SOLUTIONS||OS-9 CONFIG||DEVELOPMENT
|CUSTOM HARDWARE||OS-9 for Embedded Systems (OEM)||X||X||X|
|COTS BOARD & OS-9||OS-9 Board Level Solution (BLS)||X||X|
|PLATFORM SOLUTION FOR DEVELOPERS||OS-9 Software Development Kit (SDK)||X|