Although SUSE Linux Enterprise Real Time Extension may be run on single processor systems, it delivers maximum benefits on multiprocessor systems. The minimum, and recommended system requirements are as follows:Minimum System Requirements
- 512 MB physical RAM
- 5 GB available disk space
- Multicore / Multiprocessor system
- 1 GB physical RAM
- 10 GB available disk space
SUSE Linux Enterprise Real Time Extension is an add-on product, and requires that SUSE Linux Enterprise Server be installed prior to adding it:Minimum Software Requirements
- SUSE Linux Enterprise Server 12 Service Pack 1
SUSE Linux Enterprise Real Time Extension is based on the 3.0 real time Linux kernel, and includes the open source community's latest real time patch set—preempt_RT—a set of patches that support preemption with adaptive locks, per device interrupt threads, and priority inheritance. It also includes support for CPU shielding, resource assignment, and high resolution timers, as well as kernel drivers for the latest open source RDMA software stack available from the OpenFabrics Alliance, OpenFabrics Enterprise Distribution (OFED).
Adaptive locks: SUSE Linux Enterprise Real Time Extension contains modifications that make previously uninterruptible sections of the general purpose Linux operating system kernel interruptible, or pre-emptible. Latency is minimized, and response times are more predictable, if you can eliminate the likelihood of an uninterruptible operating system process interrupting your high priority process, or prevent it from starting. One specific modification is the adaptive lock, which can be put to sleep, or suspended, and release resources that they are holding in order for higher priority processes to be executed. Adaptive locks reduce operating system context switching times, dramatically improving the performance of throughput sensitive workloads.
Thread run interrupts: Another specific modification that was made to make the Real Time Extension's kernel more pre-emptible, are kernel run interrupt threads. Interrupts are processes that are either initiated by hardware (hard interrupt) or software (soft interrupt), that once initiated, cause the Linux kernel to switch from process mode into interrupt mode. Processes running in interrupt mode in a general purpose operating system are not pre-emptible. With SUSE Linux Enterprise Real Time Extension, these interrupts have been bounded or encapsulated by kernel threads, and these kernel threads, which are interruptible, in turn allow the hard and soft interrupts to be preempted by user defined higher priority processes.
Priority inheritance: Priority inheritance refers to the ability of a lower priority process to assume a higher priority, if there is a higher priority process that requires the lower priority process to finish before it can accomplish its task. With SUSE Linux Enterprise Real Time Extension, kernel services invoked by a high priority process will not wait indefinitely while other kernel services invoked by a low priority process holding a required semaphore trudge along at that lower priority. The priority of the lower priority process will be increased, or will inherit that of the higher priority, until its semaphore is released. Also, the Real Time Extension offers an alternate glibc which extends priority inheritance to user space. Applications using this alternative glibc can request that priority inheritance be applied to their POSIX mutexes.
CPU shielding and assignment: With SUSE Linux Enterprise Real Time Extension, users have full control over the assignment of processes and threads to CPUs. Processes with real time requirements can be assigned to run exclusively on dedicated CPUs or cores. CPUs executing real time tasks can be completely shielded from any other processes that have not been explicitly assigned to them, ensuring that resources are always available for high priority processes, and minimally affected by increased system loads, ensuring greater reliability and predictability.
High resolution timers: Low resolution (40 millisecond) posix timer kernel services have been replaced by a new implementation with resolution of about 2 microseconds. The amount of time the system spends processing interrupts, system calls, kernel daemons, and user applications is now accounted for at nanosecond resolution.
OFED: SUSE Linux Enterprise Real Time Extension also includes kernel modules that support the latest version of OpenFabrics Enterprise Distribution (OFED), the open source RDMA software stack available from the OpenFabrics Alliance, enabling the implementation of unified high speed interconnects based on InfiniBand and 10-Gigabit Ethernet.