Overview
Concurrent’s RedHawk Linux is an industry-standard, real-time version of the open
source Linux operating system for Intel and AMD-based systems. RedHawk Linux provides
the guaranteed performance needed in time-critical and hard real-time environments.
RedHawk is the ideal Linux solution for a broad range of deterministic applications
such as modeling, simulation, data acquisition, industrial control and medical imaging
systems. RedHawk guarantees that a user-level application can respond to an external
event in less than 15 on most platforms.
RedHawk Linux includes all the features of Red Hat Enterprise Linux. The user-level
commands, utilities and system administration are compatible with standard Red Hat.
RedHawk achieves its superior real-time performance by providing the latest official
release from kernel.org that includes key open source patches and kernel enhancements
developed by Concurrent. RedHawk user libraries provide access to value-add features
that are not part of other Linux offerings. RedHawk is fully compatible with standard
Linux userlevel APIs, thus Linux applications written for other Linux distributions
will run on RedHawk without modification.
Benefits
Complete Development Environment
RedHawk Linux offers a full set of tools for efficient development of time-critical
applications. Concurrent’s powerful NightStar application development tool set provides
a robust graphic interface for nonintrusive control, monitoring, analysis and debugging
of multi-threaded and multi-core applications. NightStar offers advanced debugging
features such as lockless kernel trace. In addition to the GNU C, C++, and Fortran
compilers, Concurrent’s MAXAda 95 language environment is optionally available.
RedHawk also supports the popular Intel C/C++ and Fortran compilers.
Scalable SMP and Processor Shielding
In tightly-coupled symmetric multiprocessing systems, RedHawk Linux allows individual
CPUs and cores to be shielded from local timers, interrupts, daemons, bottom halves
and other Linux tasks. RedHawk’s comprehensive processor shielding features provide
a highly deterministic execution environment where interrupt response is guaranteed.
Unlike other distributions, RedHawk offers a fieldproven, easy-to-use shielding
API with both command-line and graphical tool user interfaces.
Multithreading and Preemption
RedHawk Linux allows multiple processes to execute in the kernel simultaneously.
The kernel protects key data structures and critical sections of code with semaphores
and spinlocks to preserve system integrity.
Processes executing in the RedHawk kernel can be preempted, i.e. forced to relinquish
a CPU involuntarily. The RedHawk kernel can transfer control from a lower-priority
process to a higher-priority process except when the lower priority process is executing
in a critical kernel section. To provide deterministic response, many critical sections
of the kernel have been tuned and optimized to dramatically shorten non-preemptable
conditions. These changes are key to allowing a high-priority process to respond
immediately to an external event, even when the CPU is currently in use.
Semaphores internal to RedHawk Linux also support priority inheritance to prevent
priority inversion when multiple threads of an application are competing for operating
system resources.
Single Kernel Environment
RedHawk is a complete Linux distribution designed to fully support time-critical
applications. RedHawk provides a true single-kernel programming environment that
directly controls all system operation. Complex time-critical applications often
require that high-speed file I/O, networking and graphics be performed deterministically
together with real-time task scheduling. Only RedHawk’s single-kernel design ensures
determinism and high-speed performance of all these features.
Frequency-Based Scheduler
RedHawk’s Frequency-Based Scheduler (FBS) is a high-resolution task scheduler that
enables the user to run processes in cyclical execution patterns. FBS controls the
periodic execution of multiple, coordinated processes utilizing major and minor
cycles with overrun detection. A performance monitor is also provided to view CPU
utilization during each scheduled execution frame.
RCIM Support
On Concurrent iHawk real-time multiprocessors, RedHawk supports the Real-Time Clock
& Interrupt Module (RCIM), a multifunction card designed for time-critical applications
that require rapid response to external events. Eight programmable timers and twelve
input and output external interrupt lines are available. Any interrupt source can
be distributed to other iHawks for synchronizing multi-system applications. The
RCIM includes a high-resolution synchronized clock to provide a common time base
across multiple systems. On-thewire time stamps allow RedHawk to provide for high-resolution
NTP synchronization. RCIM options include a GPS module for synchronizing with GPS
standard time and high-stability crystal oscillators to provide for accurate time
keeping without an external time source.
I/O Enhancements
RedHawk supports Linux user-level (UIO) device drivers. RedHawk’s UIO facility provides
a kernel driver stub that can be used with user code to develop a user-space driver
for almost any type of hardware. RedHawk also includes the latest available NVIDIA
graphics drivers specially optimized for realtime performance by Concurrent. The
enhanced graphics driver allows applications to achieve maximum determinism during
image rendering.
Non-Uniform Memory Access (NUMA) Optimization
The standard Linux NUMA implementation does not offer a mechanism to ensure that
all pages of a real-time process are local to a given NUMA node and ensure that
no other process’ pages are using that same node. RedHawk’s NUMA optimization features
dramatically improve the determinism of real-time process memory access on NUMA
architectures. RedHawk can automatically duplicate libraries and other modules as
needed and hold them simultaneously in multiple nodes to maximize performance.
Red Hawk Cluster Management Software
RedHawk’s cluster manager software allows users to install and configure systems
as highly-integrated, highperformance computing clusters. Cluster manager includes
a mechanism for network booting multiple nodes with the same version of RedHawk.
Cluster management software products also include Global File System, High-Availability
NFS and OpenFabrics Enterprise Distribution packages.
NightStar Application Development Tools
Concurrent’s NightStar is a powerful, integrated tool set for developing time-critical
Linux applications. NightStar tools run with minimal intrusion, thus preserving
application execution behavior and determinism. Users can quickly and easily debug,
monitor, schedule, analyze and tune applications in real-time.