Article View: de.comp.sys.amiga.tech
Article #1539"Garantiertes" Schreiben auf Platte?
From: Alfred Fent
Date: Sun, 05 Nov 1995 12:58
Date: Sun, 05 Nov 1995 12:58
48 lines
2364 bytes
2364 bytes
Hallo,
wie kann ich sicherstellen, dass Daten, die ich in ein File schreibe,
auch wirklich geschrieben werden und auch einen Reset oder Crash ueber-
stehen? Mein Problem ist, dass die geschriebenen Daten futsch sind,
wenn der Crash/Reset vor den Aufruf von Close(file) erfolgt. Ich haette
aber gerne eine Funktion, die mir "garantiert", dass, wenn sie beendet
ist, die Daten "sicher" sind und auch einen Crash ueberleben.
Die einzige Moeglichkeit, das zu erreichen, die ich bisher gefunden habe,
ist folgendes (in Pseudo-Code)
function save_write(file, data)
open(file)
seek(file,end)
write(file,data)
close(file)
end-function
Das Problem dabei ist, dass, wenn die Funktion oft mit kleinen Daten-
mengen aufgerufen wird, die Schreibzeit gegenueber der Zeit fuer's
Close, Open (Suche im Directory, etc.) und Seek untergeht, d.h. das ge-
samte System wird durch die dauernden Open/Seek/Close stark gebremst. Was
ich also suche ist eine Dos-Funktion, die das gleiche tut wie Close,
die das File aber offen laesst, so dass ich mir die Open/Seek Aufrufe
sparen kann. Flush() habe ich bereits probiert, aber auch geflushte Daten
werden nach einem Crash vom Validator geloescht; ebenso bringt ein SetVBuf
mit Puffergroesse 0 Byte nichts :-(
Wer weiss Rat?
Danke
Alfred
PS: Ich weiss, dass das garantierte Schreiben eigentlich nicht moeglich
ist, weil z.B. ein Schreibcache eingerichtet sein koennte, weil
die Platte selbst die Daten puffern koennte, usw. Darum habe ich
"garantiert" auch in Anfuehrungszeichen geschrieben: mir reicht ein
"nach bestem Wissen und Gewissen"...
--
-------------------------------------------------------------------------------
-- multae causae sunt bibendi (Lat. Sprichwort) -- Alfred Fent ---
-- ergo bibamus! (Papst Martin IV) -- fent@fmi.uni-passau.de ---
-------------------------------------------------------------------------------
Technical Details
Message-ID:
<47ice3$9sf@news.rz.uni-passau.de>Path:
arc1-ca.pugleaf.net!rz.uni-passau.de!vogelweide!fentShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!rz.uni-passau.de!vogelweide!fent From: fent@vogelweide.uni-passau.de (Alfred Fent) Newsgroups: de.comp.sys.amiga.tech Subject: "Garantiertes" Schreiben auf Platte? Date: 5 Nov 1995 12:58:43 GMT Organization: University of Passau, Germany Sender: fent@vogelweide (Alfred Fent) Distribution: world Message-ID: <47ice3$9sf@news.rz.uni-passau.de> NNTP-Posting-Host: 132.231.1.50