This document discusses Real Time Linux. It describes two approaches to implementing real-time capabilities in Linux - using a module layer between the Linux kernel and a real-time kernel, or modifying the Linux kernel itself. It covers the installation process, dual kernel architecture, pros and cons compared to other real-time operating systems like QNX and VxWorks, and scheduling approaches in a Real Time Linux system.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
95 views
Real Time Linux Steve Matovski
This document discusses Real Time Linux. It describes two approaches to implementing real-time capabilities in Linux - using a module layer between the Linux kernel and a real-time kernel, or modifying the Linux kernel itself. It covers the installation process, dual kernel architecture, pros and cons compared to other real-time operating systems like QNX and VxWorks, and scheduling approaches in a Real Time Linux system.
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 11
Real Time Linux
Steve Matovski CSE 666
Overview
2 different kernels styles
A Module layer can be installed between the Linux soft-time OS and the Linux real-time OS The other way is to change the kernel so operates in real-time The latest release of the Linux mainstream kernel will now include real-time support.
Real-Time Linux Installation
A currently installed Linux distribution is required to
be modified by RT Linux module The module requires the Linux kernel to be recompiled so that module layer can be installed Once the kernel is recompile it is added to boot loader as a separate OS to boot A fully configured OSs are available from commercial vendors
Real-Time Linux Architecture
The
Linux soft-time OS runs as a process in
real-time OS task scheduler list The priority of Linux soft-time OS is the lowest of all processes in RT All interrupts are rerouted to the real-time layer I/O drivers and device drivers are routed to both the real-time and soft-time OS
Real-Time Linux Architecture
Pros and Cons of RT Linux
Soft-time Linux kernel runs along side a real-time
Linux so non-real-time software can run on a realtime system like Firefox A low level task scheduler, control of hardware devices and static memory create a predicable environment Dual kernel system keep soft-time processes separated from real-time processes allowing for faults in soft-time not to affect the real-time system Real-time tasks have full access to hardware
Pros and Cons of RT Linux
RT Linux system still need time to boot. 30 second to
1 minute on average The systems RTOS size is still very large for an embedded system (minimum system size in MB) Systems require large amounts of RAM and ROM to run processes Part of OS is run as a task of real-time kernel so it is not a true real-time system. Soft-time processes have no guarantees Communication between the real and soft OS is done through a FIFO queue
RT Linux VS QNX
RT Linux use only one scheduling algorithm at a time
while QNX uses four different ones. EDF RT Linux, FIFO and Round Robin QNX Processes in QNX run in a protected memory space QNX handles Normal UNIX processes (weighted processes) and threads. RT Linux only handle threads RT Linux has large set of user period levels POSIX timers support in QNX
RT Linux VS LynxOS Multiprocessor
system support in RT Linux
RT Linux uses one short and periodic timers LynxOS support a wide range of processors and microcontrollers User task, system tasks and kernel tasks all run in protected memory spaces Dynamic memory management at low level
RT Linux VS VxWorks
VxWorks thread communication is handle by
messaging queues, binary/counting/multi-exclusion semaphores, and sockets VxWorks supports a wide array of microcontroller VxWorks has dynamic memory management VxWorks supports FAT, NFS, raw, TrueFFS (Flash file system), ISO9660 filesystems VxWorks has a graphical timer debugger called WindView
Scheduling on a RT Linux System
RT Linux handles basic Rate-Monotonic scheduling by default
Earliest First Deadline is possible by adding a module to the RT kernel Scheduling of programs is done by the programmer using a set of API for setting process parameters Scheduling and communication between real-time and soft-time is handle by FIFO schedule queue also soft-time task are not given any deadline guarantees Making inter-processes task very difficult Semaphore module can be added to help scheduling Since RT Linux is an open source project there are many different scheduling module being built but RM and EDF are standard
Linux System Administration Crash Course: Learn the Essential Skills for Linux Administration in Record Time – Users, Networking, Permissions, Services, Security, and Automation