🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.comp.sys.amiga.tech
Article #1539

"Garantiertes" Schreiben auf Platte?

#1539
From: Alfred Fent
Date: Sun, 05 Nov 1995 12:58
48 lines
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!fent

Show 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