Abo
  • Services:
Anzeige
RR wird bisher nur für Firefox genutzt.
RR wird bisher nur für Firefox genutzt. (Bild: Mozilla)

Record and Replay: Aufnahmen debuggen statt Echtzeit-Programme

Eine fehlerhafte Ausführung aufnehmen, dann sooft wie nötig das Gleiche abspielen und debuggen: Das soll RR unter Linux leisten. Bisher funktioniert das Mozilla-Projekt aber nur bei Fehlern im Firefox richtig.

Anzeige

Record and Replay (RR) - aufnehmen und wieder abspielen - lautet das Konzept und der Name eines Debugging-Tools, das Mozilla-Entwickler für die Fehlerbehebung bei Firefox erstellt haben. Damit soll das nichtdeterministische Ausführen eines Programms aufgezeichnet werden, beim anschließenden Abspielen werden die immer wieder gleichen Prozesse, Register- und Speicherinhalte zum Beheben der Fehler benutzt - sooft der Entwickler dies möchte.

 
Video: Demo von RR - Mozilla

Erweiterung zu GDB

Wird eine Anwendung mit RR ausgeführt, zeichnet das Werkzeug den gesamten Prozessbaum unter Linux auf und speichert ihn auf der Festplatte. Neben den Prozessen, Subprozessen und Threads zeichnet RR auch Adressräume, deren Inhalte, verwendete Register oder auch die für Systemaufrufe genutzten Daten auf.

Über eine Schnittstelle an den Gnu-Debugger-Server lässt sich das Programm wie gewohnt untersuchen. Allerdings wird immer die erstellte Aufnahme gestartet, statt wie sonst üblich eine neue Instanz des Programms. Dadurch sind etwa Speicherzuweisungen in jedem Durchlauf gleich, wodurch die Speicheradressen vergleichsweise einfach überprüft werden können.

Hilfreich mit Einschränkungen

Bei der Entwicklung von RR legten die Programmierer vor allem Wert darauf, dass das Werkzeug die Kopie nicht viel langsamer ausführt als die tatsächliche Anwendung. Allerdings gibt Robert O'Callahan zu, dass Mozilla aufgegeben habe, die Leistung in diesem Bereich zu verbessern, da die Beteiligten mit der bisherigen Geschwindigkeit zufrieden seien.

Das Team hält es auch für sehr wahrscheinlich, dass sich RR für eine Vielzahl unterschiedlicher C- und C++-Projekte eigne, auch wenn es bisher nur für das Debuggen von Firefox verwendet worden sei. Mozilla sei aber offen für Rückmeldungen oder auch Beiträge zum Code, insbesondere für Hinweise auf oder auch die Bereinigung von Fehlern in RR.

Bis jetzt emuliert RR nur einen Einkernrechner, so dass auf Parallelisierung ausgelegte Programme erheblich verlangsamt werden. Ebenso werden derzeit nur 32-Bit-Anwendungen der x86-Architektur unterstützt und auch Prozesse, die mit Shared-Memory arbeiten, lassen sich nicht zufriedenstellend verwenden.

Das Entwickler-Team hofft aber, dass künftig viele Projekte RR benutzten und zum Ausbau des Programms beitragen. Der Quellcode von RR steht zum Download über Github bereit, Pakete für Fedora oder Ubuntu stehen ebenfalls bereit. Bis jetzt funktioniert RR wegen spezieller Anpassungen nur unter Intels Sandy-Bridge- und Ivy-Bridge-Architekturen, die Unterstützung für Haswell soll aber noch folgen.


eye home zur Startseite
Marenz 02. Apr 2014

Und was wenn der Bug aufgrund eines bestimmten IO (Netzwerk, Disk, User Eingabe...

Jaleks 27. Mär 2014

Setzte sich dieses possierliche Progrämmchen durch, würde uns dies ja nun endlich die...



Anzeige

Stellenmarkt
  1. Computacenter AG & Co. oHG, verschiedene Einsatzorte
  2. Lechwerke AG, Augsburg
  3. über Ratbacher GmbH, Raum Minden (Home-Office möglich)
  4. Fraunhofer-Institut für Materialfluss und Logistik, Dortmund


Anzeige
Blu-ray-Angebote
  1. 18,00€ (ohne Prime bzw. unter 29€-Einkaufswert zzgl. 3€ Versand)
  2. (u. a. Django, Elysium, The Equalizer, White House Down, Ghostbusters 2)
  3. (u. a. Der Hobbit 3 für 9,99€ u. Predator für 12,49€)

Folgen Sie uns
       


  1. Gulp-Umfrage

    Welche Kenntnisse IT-Freiberufler brauchen

  2. HPE

    650 Millionen Dollar für den Einstieg in die Hyperkonvergenz

  3. Begnadigung

    Danke, Chelsea Manning!

  4. Android 7

    Nougat für Smartphones von Sony, Oneplus, LG und Huawei

  5. Simplygon

    Microsoft reduziert 3D-Details

  6. Nach Begnadigung Mannings

    Assange weiter zu Auslieferung in die USA bereit

  7. Startups

    Rocket will 2017 drei Firmen in Gewinnzone bringen

  8. XMPP

    Chatsecure bringt OMEMO-Verschlüsselung fürs iPhone

  9. Special N.N.V.

    Nanoxias Lüfter sollen keinerlei Vibrationen übertragen

  10. Intel

    Internet-of-Things-Plattform auf x86-Basis angekündigt



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Nintendo Switch im Hands on: Die Rückkehr der Fuchtel-Ritter
Nintendo Switch im Hands on
Die Rückkehr der Fuchtel-Ritter
  1. Nintendo Switch Eltern bekommen totale Kontrolle per App
  2. Nintendo Switch erscheint am 3. März
  3. Nintendo Switch Drei Stunden Mobilnutzung und 32 GByte interner Speicher

Autonomes Fahren: Laserscanner für den Massenmarkt kommen
Autonomes Fahren
Laserscanner für den Massenmarkt kommen
  1. BMW Autonome Autos sollen mehr miteinander quatschen
  2. Nissan Leaf Autonome Elektroautos rollen ab Februar auf Londons Straßen
  3. Autonomes Fahren Neodriven fährt autonom wie Geohot

Reverse Engineering: Mehr Spaß mit Amazons Dash-Button
Reverse Engineering
Mehr Spaß mit Amazons Dash-Button

  1. Re: Schöner Zug, aber...

    Moe479 | 04:53

  2. Re: heh?

    Moe479 | 04:41

  3. Re: Bringt mich auf eine Idee

    mdxdave | 04:36

  4. Re: Auskühlen ist keine gute Idee. Cloud...

    Vögelchen | 04:32

  5. Re: Darf man eigentlich urheberrechliches...

    mdxdave | 04:30


  1. 19:06

  2. 17:37

  3. 17:23

  4. 17:07

  5. 16:53

  6. 16:39

  7. 16:27

  8. 16:13


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel