[bglug] Copia di file, cosa succede quando?

Diego Zanga naarani@gmail.com
Sab 30 Giu 2007 12:12:02 CEST


Il 23/06/07, Diego Settimi<mlpita@bergamo3.it> ha scritto:
> In data 29 giugno 2007 alle ore 20:15:34, emuboy <emuboy85@tele2.it> ha
> scritto:
>
> >> Non ho capito
> >
> > si effettivamente suonava perverso...ci riprovo:
> >
> > sul disco fisso (un piattello del disco) puoi fare un operazione alla
> > volta, o scrivi o leggi, a noi sembra che siano fi piu perchè i due
> > processi si alternano ad alta velocità quando il disco lavora, ma è
> > una sola operazione per volta.
> [...]
> > ergo, secondo me 100ms sono un pò troppi per un disco fisso...sei al
> > filo del realtime...però se usi un ramdisk?
>
> Si, neanche io avevo capito, ma la mia domanda non è cosa succede a
> livello elettromeccanico sulla testina, bensì mi riferivo a cosa succede a
> livello filesystem e sistema operativo.
>
> Il software nello specifico è un campionatore AD.
> Ogni 100ms acquisisce una serie di dati, nello specifico 10 integer, che
> io vado a scrivere sul file con un operazione di tipo
>
> every100msec()
> {
>         fopen (esclusiva in write append)
>         fwrite dei 10 int + terminatore
>         fclose
> }
>
>
> se parte la copia del file, quest' ultima come interagisce con il mio
> programma? ne blocca la fopen oppure no? ed il contenuto del file copia
> risultante.... dove si fermerà?

se l'fopen chiede l'esclusiva, non puoi leggere il file, quindi una
copia fatta durante il lock del file, non dovrebbe funzionare,
come non sara' possibile scrivere il file, mentre questo e' in
copia. L'fopen fara' piu' di un tentativo di aprire il file(?) cope
forse il comando per la copia (?) nel qual caso brevi interruzioni
(il fatto che il file non e' agibile per un secondo o meno) non
dovrebbero bloccare i comandi(?!)


cya
-- 
Diego Zanga
------------------------------
http://www.eLawOffice.it
http://www.blogstudiolegale.eu
http://www.javablog.eu
Skype NAARANI


Maggiori informazioni sulla lista bglug