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
haegar the horrible dl7awl „Datenrettung aus RAM?“
Optionen

Nuja, fieserhaftigerweise dürfte es auch in genau dem Sinne abllaufen.

Nuuuur.... steckt der teufel mal wieder im Detail. Im Prinzip ist das Problem sehr ähnlich dem einer aus Versehen gelöschten Datei: der Speicherplatz, den der Text bzw. die Datei eben noch belegt hat, ist nun vogelfrei, d.h. jedes Programm, das den Bereich haben will. kann ihn bekommen. Führt der Absturz aber hingegen bis zum BSOD, ist da auch nichts mehr zu retten. Man kann also - wie beim Schnupfen - nur vorbeugen. Isses passiert, dann muß man durch, vorher schon wettergerecht anziehen, ist das Gebot der Stunde.

Es müßte also das Rettungstool schon im Speicher sein, bevor überhaupt irgendetwas abstürzen kann.Also so ein Rettungsproggi schon beim Booten als Dienst starten. Aber da ja nun mal nicht bekannt ist, welches Programm wann, wie und wo abkackt, müßte schon in jurzen Zeitabständen das GESAMTE RAM selbsttätig gesichert werden. Nächstes Problem: auch, wer "nur" 512MB drin hat, müßte da schon ein paar Minuten warten müswomöglich auch die vorige RAM-Datei weg - was ja nicht passieren soll.

Ich sehr nur 2 Möglichlkeiten (außer, sich endlich mal zusammenzureißen und verdammt nochmal besser aufzupassen...):
1. im Auslagerungsspeicher nachsehen,
2. einen Editor bzw. Programm benutzen, der in ganz kurzen Abständen die gerade bearbeiteten Dateien selber sichert.

OpenOffice z.B. kann das ja, wenn es mal wieder abgestürzt ist und wieder aufgerufen wird, fragt es ja häufig, ob die gesicherte(n) Arbeitsdatei(en) wieder rekonstruiert werden sollen. Diese Funktion arbeitet seht gur, nach meiner unmaßgeblichen Beobachtung sind dann erfreulich häufig nur die allerallerallerletzten 10, 20 oder so Buchstaben wirklich verloren gegangen.

bei Antwort benachrichtigen