Hallo Allerseits,
ich habe ein Problem mit der Implementierung des Preempt-Patch im Linux-Kernel bzw. dem Ergebnis, welches mir der anschließend durchgeführte "Cyclictest" (rt-tests-0.27) liefert. Dieser meldet mir nach dem Aufruf:
“WARNING : High resolution timers not available“
…
und führt anschließend den Test durch. Die dabei vom gepatchten Kernel erreichten Zeiten entsprechen denen eines ungepatchten Kernels (habe meine Ergebnisse mit denen auf http://rt.wiki.kernel.org/index.php/Cyclictest#Installation dargestellten verglichen). Sie liegen etwas besser als die dort für den normalen Kernel dargestellten Zeiten, was daran liegen kann, dass mein Rechner (P3-700MHz) schneller ist als der dort verwendete P3-400MHz.
Kurz zur Vorgeschichte:
Ich arbeite mit Suse 11 und habe die auf der OSADL-Seite (http://www.osadl.org/Latest-Stable.latest-stable-realtime-linux.0.html) dargestellte letzte stabile Kombination aus Kernel (2.6.24.7) & Preempt-Patch (patch-2.6.24.7-rt17) nach deren Anleitung (HOWTO) implementiert. Ein Problem dabei taucht bereits im Konfigurationsmenü des gepatchten Kernels auf, in dem ich unter anderen folgende Einstellungen getroffen habe:
# make menuconfig
Processor type and features
Timer frequency
[*] 1000 Hz
Preemption Mode
[*] Complete Preemption (Real-Time)
Kernel hacking
[*] Preemption-off Latency Tracer
[*] Scheduling Latency Tracer
[*] Interruptst off critical timings histogram
[*] Preempt off critical timings histogram
[*] Kernel Fubction Tracer (New)
[*] Interrupts-off Latency Tracer (New)
[*] wakeup latencies histogram
[ ] Check for stack overflows
Unter dem Punkt „Kernel hacking“ fehlten aber die beiden Optionen
[ ] Wakeup latency timing
[ ] Latency tracing,
welche ich dementsprechend auch nicht aktivieren konnte. Sind diese Optionen für die Echtzeitfähigkeit unbedingt notwendig, oder gibt es die Einstellungen u.U. auch unter einer anderen Bezeichnung? Könnte das Fehlen dieser Optionen die oben genannte Fehlermeldung bei der Durchführung des "Cyclictest" auslösen?
Welche anderen Möglichkeiten kommen in Frage, um das Problem der nicht ereichbaren „High resolution timers“ zu beheben?
Vielen Dank im Vorraus!
ich habe ein Problem mit der Implementierung des Preempt-Patch im Linux-Kernel bzw. dem Ergebnis, welches mir der anschließend durchgeführte "Cyclictest" (rt-tests-0.27) liefert. Dieser meldet mir nach dem Aufruf:
“WARNING : High resolution timers not available“
…
und führt anschließend den Test durch. Die dabei vom gepatchten Kernel erreichten Zeiten entsprechen denen eines ungepatchten Kernels (habe meine Ergebnisse mit denen auf http://rt.wiki.kernel.org/index.php/Cyclictest#Installation dargestellten verglichen). Sie liegen etwas besser als die dort für den normalen Kernel dargestellten Zeiten, was daran liegen kann, dass mein Rechner (P3-700MHz) schneller ist als der dort verwendete P3-400MHz.
Kurz zur Vorgeschichte:
Ich arbeite mit Suse 11 und habe die auf der OSADL-Seite (http://www.osadl.org/Latest-Stable.latest-stable-realtime-linux.0.html) dargestellte letzte stabile Kombination aus Kernel (2.6.24.7) & Preempt-Patch (patch-2.6.24.7-rt17) nach deren Anleitung (HOWTO) implementiert. Ein Problem dabei taucht bereits im Konfigurationsmenü des gepatchten Kernels auf, in dem ich unter anderen folgende Einstellungen getroffen habe:
# make menuconfig
Processor type and features
Timer frequency
[*] 1000 Hz
Preemption Mode
[*] Complete Preemption (Real-Time)
Kernel hacking
[*] Preemption-off Latency Tracer
[*] Scheduling Latency Tracer
[*] Interruptst off critical timings histogram
[*] Preempt off critical timings histogram
[*] Kernel Fubction Tracer (New)
[*] Interrupts-off Latency Tracer (New)
[*] wakeup latencies histogram
[ ] Check for stack overflows
Unter dem Punkt „Kernel hacking“ fehlten aber die beiden Optionen
[ ] Wakeup latency timing
[ ] Latency tracing,
welche ich dementsprechend auch nicht aktivieren konnte. Sind diese Optionen für die Echtzeitfähigkeit unbedingt notwendig, oder gibt es die Einstellungen u.U. auch unter einer anderen Bezeichnung? Könnte das Fehlen dieser Optionen die oben genannte Fehlermeldung bei der Durchführung des "Cyclictest" auslösen?
Welche anderen Möglichkeiten kommen in Frage, um das Problem der nicht ereichbaren „High resolution timers“ zu beheben?
Vielen Dank im Vorraus!