Echtzeitfähigkeit von Linux-Systemen empirisch bestimmen

30. September 2009, 10:59 Uhr |
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 2

Echtzeitfähigkeit von Linux-Systemen empirisch bestimmen

Lastszenario erzeugen

Wie bereits erwähnt, ist eine Latenzmessung weitgehend sinnlos, wenn während der Messung keine geeigneten Stressbedingungen für das System bestehen. Dabei gilt es, die verschiedenen Subsysteme eines Betriebssystems zu berücksichtigen, die bekanntermaßen zu Latenzen führen, da diese Subsysteme besonders häufig auf gemeinsam genutzte Ressourcen zugreifen und ununterbrechbare Funktionen aufrufen. Als Folge davon müssen hier nämlich Ausführungspfade serialisiert werden, sodass nicht zu jedem beliebigen Zeitpunkt die sofortige Bearbeitung eines asynchron einfallenden externen Ereignisses möglich ist. Um eine geeignete Stressbedingung zu schaffen, müssen also eben diese Pfade während einer Latenzmessung besonders häufig, am besten kontinuierlich, ausgeführt werden.

passend zum Thema

Bei den besonders in Frage kommenden Subsystemen handelt es sich um:

Scheduler:

Es ist naheliegend, dass die hohe Ausführungsfrequenz des Schedulers zu einer häufigen Konkurrenzsituation zwischen dem aktuell ausgeführten und dem mit Priorität gewünschten Scheduling-Vorgang führt. Daher sollte eine Stressbedingung des Schedulers diesen in hoher Frequenz aufrufen. Das von Ingo Molnar im Rahmen der Entwicklungsarbeit des »O(1)-Schedulers« des Linux-Kernels 2.6 erstellte Programm »hackbench« erfüllt diese Aufgabe besonders gut. Die parallele Ausführung des Shell-Kommandos in Codebeispiel 1 (siehe Kasten) hat bereits sehr häufig zur Aufdeckung versteckter Latenzen geführt. Das Kommandozeilen-Argument des Programms »hackbench« ist allerdings kritisch, da höhere Werte schnell zu einem hohen Speicherverbrauch führen. Hier hat sich die Formel »Hackbench-Argument = 2 + Speicherplatz in MByte / 32« bewährt. Bei einem 64-MByte-System wäre also ein Argument von 4, bei einem 1-GByte-System ein Argument von 34 angemessen.


  1. Echtzeitfähigkeit von Linux-Systemen empirisch bestimmen
  2. Echtzeitfähigkeit von Linux-Systemen empirisch bestimmen
  3. Echtzeitfähigkeit von Linux-Systemen empirisch bestimmen
  4. Echtzeitfähigkeit von Linux-Systemen empirisch bestimmen
  5. Echtzeitfähigkeit von Linux-Systemen empirisch bestimmen
  6. Echtzeitfähigkeit von Linux-Systemen empirisch bestimmen
  7. Echtzeitfähigkeit von Linux-Systemen empirisch bestimmen

Jetzt kostenfreie Newsletter bestellen!