Military systems can benefit by using multicore
Today's military systems can benefit by running real-time and non Real-Time Operating Systems (RTOSs). Modern multicore processors enter the picture when marrying OS-9 with Windows or Linux on an asymmetric multiprocessing platform. Meanwhile, multiple environments can be managed by virtual machines running on the AMP.
| By |
|
Many modern defense systems can benefit from running both real-time and non Real-Time Operating Systems (RTOSs). Marrying OS-9 with Windows or Linux on an asymmetric multiprocessing platform requires modern multicore processors such as those from Intel. Virtual machines running on the AMP manage the multiple environments.
The military is requiring more computing functionality in compact battlefield systems to advance its tactical capability. New multicore processors used in embedded devices provide more functionality, increase system performance, and run at lower temperatures. The multicore operating environment introduces a new software paradigm where general purpose and real-time operating systems and applications need to run concurrently. This new platform is merging traditional workstations and embedded real-time systems onto one device. It reduces hardware costs, reduces power consumption, and increases system reliability. From a software perspective, the multicore environment provides an efficient platform to create hybrid applications reusing existing software.
In this platform paradigm, Windows and Linux general processing operating systems and a real-time operating system run on separate cores to create a new hybrid, multiprocessing environment. This environment has traditionally existed as separate systems connected through a network to manage front-end real-time control and back-end data management tasks. With multicore, the multiprocessing environment is done on-chip to support faster and more reliable data transfer between real-time and general purpose applications. Using the military-accepted POSIX software standard on each processing core creates a homogenous environment that furthers portability and reuse of developed software.
Miniaturization in a multiprocessing environment
Multicore adds functionality to battlefield systems. There is a need to collect larger amounts of tactical data to guide action of embedded systems, enable operator control of the device, and collect data for remote central office back-end processing. This is combined on a single multicore platform to support real-time and general process applications. Smaller form factor COTS boards such as COM Express, Mini-ITX, MicroTCA, and PC/104-Plus are utilizing multicore and supporting this functionality in a smaller hardware footprint.
Beyond miniaturization, a hybrid multicore environment (Figure 1) implements an Asymmetric MultiProcessing (AMP), which enables concurrent operation of multiple operating systems. This is facilitated through multicore hardware virtualization technology and a software machine monitor or hypervisor. Real-time and general process operating systems communicate to each other through a virtual backplane providing data and messaging between running processes. This is an efficient virtual environment that users can take advantage of to speed integration of real-time and non-real-time tasks.
|
|
|
Figure 1: Multicore real-time and general purpose embedded systems (click graphic to zoom by 2.2x) |
For instance, users can take advantage of available Linux and Windows device drivers to access non time-critical I/O through a general purpose operating system. Users can save weeks of code development time by using publicly available general purpose code and collecting needed data to feed into the RTOS. Critical real-time tasks can be dedicated to the RTOS, and background tasks can be dedicated to general purpose operating systems. The multicore system with AMP makes this practicable for embedded systems.
An example multicore military application could have an unmanned mobile device or robot providing live video of unexploded ordnance to an operator with an RTOS. The mobile device can also collect additional data for processing against databases stored on a general purpose database on general purpose operating systems like Windows or Linux. An operator would control an unmanned robot to disarm the suspected device. In this case, both real-time and general purpose OSs are required to complete the task.
POSIX requirements for interoperability
The POSIX standard (POSIX 1003.1-2003) was created in 1991 to enable applications written to the standard to be interoperable between operating systems. The Weapons Systems Common Operating Environment (Army), the Common Integrated Infrastructure (Air Force), and the Open Systems Architecture (Navy) have embraced POSIX to ensure backward and forward software compatibility.
POSIX support in a hybrid multicore environment provides a common discipline between general purpose and real-time applications that can be easier created and tested for either platform. What was originally created for Linux may be better served operating under an RTOS. Having both operating systems present in a true multiprocessing environment provides that flexibility.
Supporting an RTOS for multicore
The OS-9 real-time operating system has been configured to work with Windows or Linux on Intel Core Duo processors. The configuration utilizes the VirtualLogix VLX machine monitor providing virtualization between the operating systems. OS-9 and Windows/Linux execute independently, share memory, share I/O, and communicate through the virtual environment (refer back to Figure 1). Requests for system and network resources are centrally managed by the VLX virtual machine that runs directly on the multicore hardware.
Arrow Electronics has created a multicore hybrid system and development environment utilizing the OS-9 real-time operating system, VirtualLogix VLX machine monitor, and Fedora Linux. New hybrid real-time and general purpose applications can be created and debugged in an integrated C development environment.
Steve Johnson is a software product marketing manager for RadiSys, concentrating on the OS-9 real-time operating system for single and multicore processors. He has more than 20 years of experience working in embedded computing hardware and real-time software. Steve holds a Bachelors of Electrical Engineering degree from the University of Minnesota and contributes to various industry publications. He can be contact at steve.johnson@radisys.com.
RadiSys503-615-1100
www.radisys.com


