Allgemeines 21.970 Themen, 148.291 Beiträge

Datenrettung aus RAM?

dl7awl / 10 Antworten / Flachansicht Nickles

Eine Rubrik "Datenrettung" oder "Tools" gibt es wohl nicht; bitte ggf. in die nächst passende Rubrik verschieben!

Schon öfter stand ich vor dem Problem, dass durch eine unüberlegte Handlung, einen Absturz oder ähnliches plötzlich der soeben eingegebene Text weg war, bevor er abgespeichert bzw. abgeschickt werden konnte. Besonders ärgerlich: man weiß, irgendwo in einem RAM-Buffer steht er wahrscheinlich noch, mein Text, aber ich komm nicht ran. Dabei ist es ganz egal, mit welchem Programm man zugange war, Hauptsache man macht danach nichts anderes und der Computer bleibt eingeschaltet.

Ist jemandem ein (Windows-)Tool bekannt, mit dem man den RAM-Inhalt wieder zu fassen bekommt?

Zu DOS-Zeiten war's relativ einfach, da hatte ich sowas mal selbst geschrieben. Es muss ja auch möglichst klein sein, um möglichst wenig vom Arbeitsspeicher zu überschreiben. Meine damalige 29-Byte-Assembler-Lösung namens ramimage.com (hoffentlich wird das hier richtig dargestellt):


0100 1E PUSH DS
0101 33D2 XOR DX,DX
0103 BB0100 MOV BX,0001
0106 B90040 MOV CX,4000
0109 B440 MOV AH,40
010B CD21 INT 21
010D 58 POP AX
010E 050004 ADD AX,0400
0111 8ED8 MOV DS,AX
0113 3D00A0 CMP AX,A000
0116 72E8 JB 0100
0118 B8004C MOV AX,4C00
011B CD21 INT 21

Mit dem Aufruf ramimage >datei konnte ich dann den relevanten Teil des Arbeitsspeichers in eine Datei retten und darin anschließend in Ruhe nach dem verlorenen Text suchen. Hat meistens geklappt und mir oft geholfen.

Nur für Windows ist mir sowas noch nicht begegnet - dürfte dort wegen des virtuellen Speichermodells auch nicht ganz so trivial sein, allerdings auch nicht unmöglich. Weiß jemand was?

Gruß, Manfred
bei Antwort benachrichtigen
dl7awl Borlander „Naja, der Ruhezustand würde eigentlich schon das machen was Du möchtetest: Den...“
Optionen

"Naja, der Ruhezustand würde eigentlich schon das machen was Du möchtetest: Den kompletten Speicherinhalt in eine Datei schreiben."

Hey, na klar! Wieso bin ich da nicht selbst drauf gekommen? Aber manchmal sieht man ja bekanntlich den Wald vor lauter Bäumen nicht. ;-)

Und, ist das nun die Lösung? Hm...

Ich habe es probiert. Da Windows natürlich im Resume-Modus starten wollte und somit gar nicht erst nachsieht, ob eine Knoppix-Boot-CD im Laufwerk liegt, habe ich die Platte ausgebaut (unkompliziert, da Notebook) und via USB-Gehäuse an einen anderen Rechner angeschlossen und dort die hiberfil.sys gesichert. Ich habe darin dann auch tatsächlich einige (!) Teile meines Textes gefunden, allerdings immer nur sehr kleine verstreute Bruchstücke inmitten von "Zufallszahlenwüsten". Man kennt das von manchen Kompressionsformaten, da sieht es ähnlich aus. Nanu, Kompression? Obwohl die hiberfil.sys doch genau der RAM-Größe entspricht? Keine Ahnung, was das zu bedeuten hat; 1:1 das RAM-Abbild scheint es jedenfalls nicht zu sein.

Also Fehlanzeige - mit dem Datenschrott ist ohne nähere Kenntnis des Formats nichts anzufangen.

"Das kann man durch rechtzeitiges Speichern wirkungsvoll verhindern. Erste aktion bei einem frischen Dokument ist das Speichern unter einem passenden Dateinamen, beim Arbeiten Zwischendurch ist ein Strg+S auch kein zusätzlicher Aufwand. Generell scheint mir der Aufwand einer solchen Rettungs-Aktion in keinem Verhältnis zum Nutzen zu stehen, lieber meine eben Hinweise zu Herzen nehmen um das Problem in Zukunft zu vermeiden..."

Oh je, ich hätte es ahnen müssen. Ja doch, Du hast ja sooo recht! Und da ich mich schon mit Computern befasste, als man die noch selber bauen musste, weil es sowas noch lange nicht im Laden gab (seit 1978, um genau zu sein), ist mir das auch längst in Fleisch und Blut übergegangen! Den Strg-S-Reflex (damals: Ctrl-S) hatte ich schon mit schlafwandlerischer Routine drauf, als ich 1984/85 meine Diplomarbeit schrieb - übrigens ohne jegliche Probleme mit WordStar unter CP/M auf einem selbstgebauten Z80-Rechner mit 64 k RAM und zwei 8-Zoll-Diskettenlaufwerken, die ein Vermögen gekostet hatten.

Aber der akute Fall war andes gelagert: Browser, Eingabefeld einer HTML-Seite, größerer Forumsbeitrag. Du verstehst? Da ist nix mit Strg-S! Wenn ich schon von vornherein weiß, dass es ein größerer Beitrag wird (was diesmal leider nicht der Fall war), dann schreibe ich eben genau aus diesem Grund lieber erstmal in Notepad und mache zum Schluss C&P ins Eingabefeld. Nur, diesmal halt nicht, weil sich der Text erst während des Schreibens entwickelte. Es ist auch nicht so sehr die Länge des Textes, die den Verlust ausmacht, als vielmehr die sorgfältige und gelungene Formulierung, die so einfach nicht wieder hinzukriegen ist.

Na ja, shit happens.... Jedenfalls vielen Dank für Deine Anregung!

Gruß, Manfred

bei Antwort benachrichtigen