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.

Artikel veröffentlicht am ,
RR wird bisher nur für Firefox genutzt.
RR wird bisher nur für Firefox genutzt. (Bild: Mozilla)

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

Stellenmarkt
  1. Anwendungsberater / Experte (m/w/d) für M365
    Mainova AG, Frankfurt am Main
  2. IT-Monitoring Specialist/in im Rechenzentrum (m/w/d)
    Technische Universität Dresden, Dresden
Detailsuche

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.

Golem Akademie
  1. Kotlin für Java-Entwickler: virtueller Zwei-Tage-Workshop
    03.–04. Februar 2022, Virtuell
  2. Linux-Shellprogrammierung: virtueller Vier-Tage-Workshop
    8.–11. März 2022, Virtuell
Weitere IT-Trainings

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.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Rocket 1
3D-Druck vom Kopf auf die Füße gestellt

Eine der interessantesten Crowdfunding-Kampagnen für 3D-Drucker seit Jahren lässt einige wichtige Fragen offen.
Von Elias Dinter

Rocket 1: 3D-Druck vom Kopf auf die Füße gestellt
Artikel
  1. Tesla Gigafactory Berlin: Brandenburgs Regierung sieht Wasserversorgung gesichert
    Tesla Gigafactory Berlin
    Brandenburgs Regierung sieht Wasserversorgung gesichert

    Der Wasserverband sieht die Trinkwassermenge durch die geplante Tesla-Fabrik in Gefahr, die Landesregierung sieht das anders.

  2. Activision Blizzard: Was passiert mit Call of Duty, Diablo und Xbox Game Pass?
    Activision Blizzard
    Was passiert mit Call of Duty, Diablo und Xbox Game Pass?

    Playstation als Verlierer und Exklusivspiele für den Xbox Game Pass: Golem.de über die bislang größte Übernahme durch Microsoft.
    Eine Analyse von Peter Steinlechner

  3. Hohe Lichtstärke: Nikon stellt 400-mm-Objektiv mit f2,8 vor
    Hohe Lichtstärke
    Nikon stellt 400-mm-Objektiv mit f2,8 vor

    Nikon bringt mit dem Nikkor Z 400 mm 1:2,8 TC VR S ein besonders lichtstarkes Teleobjektiv mit integriertem Telekonverter auf den Markt.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • LG OLED (2021) 40% günstiger (u.a. 65" 1.599€) • Gigabyte Mainboard 299,82€ • RTX 3090 2.399€ • RTX 3060 Ti 799€ • MindStar (u.a. 32GB DDR5-6000 389€) • Alternate Deals (u.a. Samsung LED TV 50" 549€) • HP Omen Gaming-Stuhl 319€ [Werbung]
    •  /