11
Real Time Linux Steve Matovski CSE 666

Real Time Linux

  • Upload
    frey

  • View
    38

  • Download
    0

Embed Size (px)

DESCRIPTION

Real Time Linux. Steve Matovski CSE 666. Overview. Real Time Linux comes in two 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 - PowerPoint PPT Presentation

Citation preview

Page 1: Real Time Linux

Real Time Linux

Steve Matovski

CSE 666

Page 2: Real Time Linux

Overview

Real Time Linux comes in two 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.

Page 3: Real Time Linux

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

Page 4: Real Time Linux

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

Page 5: Real Time Linux

Real-Time Linux Architecture

Page 6: Real Time Linux

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 real-time 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

Page 7: Real Time Linux

Pros and Cons of RT Linux

RT Linux system still need time to boot. 30 second to 1 minute on average

The system’s 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

Page 8: Real Time Linux

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

Page 9: Real Time Linux

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

Page 10: Real Time Linux

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

Page 11: Real Time Linux

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