Overview of Linux real-time challenges
Upcoming SlideShare
Loading in...5
×
 

Overview of Linux real-time challenges

on

  • 4,205 views

My talk at foss-sthlm embedded Linux hacking day, June 1st 2013.

My talk at foss-sthlm embedded Linux hacking day, June 1st 2013.

Statistics

Views

Total Views
4,205
Views on SlideShare
1,368
Embed Views
2,837

Actions

Likes
1
Downloads
9
Comments
0

13 Embeds 2,837

http://daniel.haxx.se 2796
http://newsblur.com 19
http://inoreader.com 5
http://cloud.feedly.com 4
http://www.newsblur.com 4
http://www.feedly.com 2
http://reader.ahlamon.org 1
http://gvbreader.appspot.com 1
http://digg.com 1
http://translate.googleusercontent.com 1
https://www.google.ro 1
http://www.campus-booster.net 1
http://www.advogato.org 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Overview of Linux real-time challenges Overview of Linux real-time challenges Presentation Transcript

  • Overview of Linux real­time challengesJune 1, 2013
  • Daniel StenbergEmail: daniel@haxx.seTwitter: @bagderWeb: daniel.haxx.seBlog: daniel.haxx.se/blog●Free Software●Network hacker●Embedded developer●Consultant
  • AgendaWhats real-time in this context?Why is real-time still a concern?Ways to deal with the problem• Off to secondary hardware• Hypervisor or AMP• PREEMPT_RT• CPU isolation and dynamic tickFuture?
  • Real­timeReal-time can mean a lot of differentthings to different audiences• Low maximum latency: below 100 us,sometimes down to 20us• Very low risk of every breaking that
  • Why is this a concern 2013?• Plain Linux wasnt designed to deal with low latency• A move towards "commodity" hardware - lessspecial stuff means solving the problems in generalCPUs• Linux everywhere: RTOS-solutions get moved overfrom legacy systems to Linux-based• Still a lot of stacks and applications that act in CPUbut needs to respond fast and accurately• Sometimes a bit more requested than perhaps canbe technically motivated
  • What are the options?Linux is a given.What magic can you apply to a systemto address the problem of a lowmaximum latency?
  • Separate dedicated HW• A tested and proven way• A separate small chip (with anRTOS?) for just the time critical stuff• ... or an FPGA• But it adds system complexity andprice
  • Hypervisor with RTOS• Isnt pure Linux• Adds complexity• Usually proprietary• May reach really low latenciesOne or more cores
  • AMP with RTOS• Isnt pure Linux• Adds complexity• Often proprietary• May reach really low latenciesCore 0 Core 1 Core 2 Core 3
  • The more pure Linux solutions1 ­ Address and lower the worst case2 ­ Avoid hitting the worst case
  • PREEMPT_RT●An off­mainline patch since 10+ years!●Add preemption to lower max latency●replace kernel spinlocks with mutexes●move interrupts and software interrupts to kernel threads●works on single core systems●Changes behavior and requires drivers to be tested●User­space is the same
  • CPU isolation 1/2●NOHZ, dynamic tick●Isolated cores == without ticks do nothing!●Only one thread allowed!●Avoiding the kernel is hard●Approaching mainline (3.10)●Requires rethinking user­space
  • Linux kernelCore 0 Core 1 Core 2 Core 3CPU isolation 2/2
  • Future●Real­time and latency remain interesting●PREEMPT_RT is not in mainline●NOHZ is just getting in●We create the future!
  • (from UBM Tech Electronics Embedded Market Survery)
  • Work with this at Enea
  • Thank youDaniel Stenberg <daniel@haxx.se>