Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungNächste ÜberarbeitungBeide Seiten der Revision | ||
software:linux:preempt_rt:start [2016-05-26 12:57] – mgehrig2 | software:linux:preempt_rt:start [2016-12-14 12:52] – kalberer | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | <box red 100% | Hinweis> Diese Seite ist in Bearbeitung. Marcel Gehrig 26.05.2016 </ | ||
- | |||
====== Preempt_RT ====== | ====== Preempt_RT ====== | ||
===== Vorwort ===== | ===== Vorwort ===== | ||
Zeile 10: | Zeile 8: | ||
Preempt_RT ist ein von Ingo Molnar betreuter Patch für den Linux Kernel. Dieser modifiziert den Kernel so, dass dieser (beinahe) vollständig präemptiv wird. Dazu werden die klassischen Kernel Spinlocks durch Mutexe ersetzt, welche Prioritätsvererbung unterstützen. Ausserdem wird die Behandlung aller Interrupts in eigene Kernel-Threads ausgelagert. | Preempt_RT ist ein von Ingo Molnar betreuter Patch für den Linux Kernel. Dieser modifiziert den Kernel so, dass dieser (beinahe) vollständig präemptiv wird. Dazu werden die klassischen Kernel Spinlocks durch Mutexe ersetzt, welche Prioritätsvererbung unterstützen. Ausserdem wird die Behandlung aller Interrupts in eigene Kernel-Threads ausgelagert. | ||
+ | Die Präsentation {{: | ||
===== Realtime Allgemeine Hinweise ===== | ===== Realtime Allgemeine Hinweise ===== | ||
- | Auf der Seite [[.:realtime_allgemeine_hinweise | + | Die [[https://rt.wiki.kernel.org/ |
===== Bau von RT Kernel ===== | ===== Bau von RT Kernel ===== | ||
Zeile 20: | Zeile 18: | ||
<box 22% right green | **Beispiele für den Bau von RT-Kernel**> | <box 22% right green | **Beispiele für den Bau von RT-Kernel**> | ||
- | * [[software: | + | * [[software: |
- | * [[.: | + | * [[.: |
- | * [[.: | + | * [[.: |
+ | * [[.: | ||
+ | * [[.:bbbrt | v4.4.25-rt35 (Kurztanleitung) für Beaglebone Black]] | ||
</ | </ | ||
Zeile 31: | Zeile 31: | ||
==== Schwierigkeiten bei der Messung der RT-Performance ==== | ==== Schwierigkeiten bei der Messung der RT-Performance ==== | ||
- | Die gemessene Latenz ist abhängig von Tasks und Interrupts | + | Diverse Hinweise, |
- | Ein weiterer Faktor ist der Zufall. Einige Interrupts treten nur sehr unregelmässig auf. Andere treten möglicherweise immer genau zwischen periodischen Messungen auf. Um solche Interrupts doch messen zu können, sollte möglichst lange gemessen werden. Mehrere Stunden sind empfehlenswert. Mehrere Tage lange Messungen erhöhen die Chance, Ausreisser zu erwischen. | ||
==== Cyclictest ==== | ==== Cyclictest ==== | ||
Zeile 39: | Zeile 38: | ||
==== EEROS ==== | ==== EEROS ==== | ||
- | EEROS bietet eine Möglichkeit, | + | EEROS bietet eine Möglichkeit, |
+ | |||
+ | ==== Zu erwartende Ergebnisse ==== | ||
+ | Auf der Wiki Seite [[software: | ||
===== Künstliche Belastung für RT-Systeme ===== | ===== Künstliche Belastung für RT-Systeme ===== | ||
- | Wenn das System nicht unter Realbedinungen | + | Wenn das System nicht unter Realbedingungen |
===== Einflüsse auf die Latenz ===== | ===== Einflüsse auf die Latenz ===== | ||
- | Diverse Faktoren können die Latenz des Systems negativ beeinflussen. Eine genauere Auflistung inklusive möglicher Massnahmen findet sich auf der Seite [[.:einflüsse_latenz | + | Im [[https:// |