scrittura su hard disk

Mar 31, 2008 14 Replies

Vorrei monitorare dei segnali con opportuna scheda di interfaccia contenente ADC e programmino in esecuzione su pc per salvare i valori su hard disk. Immaginando di avere un valore al secondo mi consigliate di scrivere ogni volta su file (quindi una scrittura al secondo su disco) o con tempi più lunghi (creando sul programma un buffer, quindi temporaneamente su ram, ma scaricandolo solo ogni 2/3/10 minuti su disco)? Il mio dubbio è relativo all'utilizzo troppo "stressante" del disco. Ogni consiglio è ben accetto, vista la competenza dei partecipanti a questo NG. Robin


Robin2 ha scritto:

Dipende dal disco. Per esempio il mio HD ha una velocità di 60MiB/s qualunque velocità al di sotto di questa all'HD non importa molto. Poi non ho capito una cosa. Che devi farci con questi dati? Devi solo salvarli tipo storico? Allora non te ne importa molto, l'unica accortezza che ti consiglio e di creare dei pacchetti da 512byte ( 1 settore ) che vengono scritti/letti tutti insieme sul disco, quindi se salvi i dati in questo modo faciliti il lavoro del HD.

Il Razziatore, "Lo sviluppo di una nazione si misura anche dallo stato della sua rete ferroviaria". Camillo Benso Conte di Cavour "Per tutto quanto non previsto nel presente regolamento il capostazione deve usare senno e ponderatezza." Regolamento d'esercizio FS ----------------------------------------------- MSN : IlRazziatore@netscape.net ICQ : 67552596 Yhaoo : Razziatore82 ----------------------------------------------- Founder of MediaPlayer Project http://mpp.iwebland.com

ci sarebbe da capire prima che sistema operativo/linguaggio di programmazione intendi usare

tieni conto che la scrittura fisica sul disco e' problema-preoccupazione prima della libreria del compilatore e poi del sistema operativo ( anche se fosse semplice DOS ) a meno che tu non forzi il flush dello strema ( sai di cosa sto parlando ? ) dopo ogni write ( in C : fwrite,fflush per intenderci )

in genere dovrebbe partire una scrittura fisica ogni volta che il programma arriva a riempire il buffer delle stream con un numero di byte pari al settore sul disco, ma le cache di sistema operativo potrebbero essere molto piu' grandi

comunque se ti preoccupa lo stress del disco pensa a quando il sistema operativo attacca a swappare la memoria :-)

per cui vai tranquillo

piuttosto se impieghi un certo tempo per ottenere i fatidici 512 byte di dati ti potresti/dovresti preoccupare di cosa succede se va via la corrente nel frattempo

Un valore al secondo è una quantità di informazione veramente bassa. Penso sia assolutamente indifferente, dal punto di vista prestazionale, quale soluzione adotti. Ti consiglio di implementare quella più semplice per te.

Il Mon, 31 Mar 2008 09:30:09 +0200, mmm ha scritto:

S.O.: Windows XP linguaggio: VB2008

purtroppo il mio livello di conoscenza in merito è molto basso; mi documenterò sul "flush dello stream" e poi il C mi è molto ostico, riesco a fare qualcosina solo con (il vecchissimo QBASIC e) VB2005/2008

temo proprio, col mio programmino, di dare una spinta decisiva al disco che si trova già affaticatissimo sul bordo del precipizio intento a swappare! (Senza i miei programmini un disco è già passato a miglior vita...e non vorrei essere giudicato da nessuna corte per strage di dischi!)

grazie, mi rassicuri (ti posso assumere anche come eventuale avvocato difensore? ehehhe).

in effetti la contropartita del fatto di non scrivere subito il valore è proprio questa. Sostanzialmente, però, non si tratta di nulla di estremamente vitale ma puro hobby elettronico (come da NG): l'utilizzo dell'interfaccia è generico, ad esempio, se testo una batteria e va via la corrente, va via anche per la ricarica (se non dovessi prevedere una seconda batteria che ricarica la prima nel caso di black-out.....) e dal lato del pc che acquisisce potrei utilizzare un UPS o direttamente il pc portatile... ma in fondo non è nulla di trascendentale se si dovesse interrompere una ricarica, no? L'hobby è hobby, se muore una batteria se ne rifà un'altra! (anche in questo caso spero di non essere accusato...ma in effetti...sembro reticente!) Un sincero grazie a tutti i tuoi consigli. Robin

Il Mon, 31 Mar 2008 09:06:53 +0200, Il Razziatore ha scritto:

Non temo sulla velocità di scrittura su disco, ovvero che il disco non riesca a fare in tempo a scrivere i miei ridottissimi dati (di ciascuna scrittura), ma sul numero di scritture (che si ripetono con periodicità di

1 secondo e durata anche di ore) che possano rendere la vita difficile all'hardware del disco (che già per conto suo è "hard")!

Oltre allo storico, vorrei utilizzare il file creato (quindi dopo il termine dell'analisi) per elaborare i valori ottenuti, magari graficandoli su foglio elettronico OpenOffice/Excel.

Per quanto riguarda il SW volevo programmare in VB2008 e, se non erro, si può creare in modo molto semplice un file di testo e buttarci dentro di tutto senza stare a sindacare troppo dimensioni e formati dei dati da scrivere. Grazie anche per la celerità della risposta. Robin

ma allora il problema non si pone affatto !!

TU non hai il controllo sulle scritture fisiche :-)

prima che finiscano sul disco i tuoi dati passano una mezza dozzina di strati SW

per la serie: tutte le mie considerazioni sono praticamente inutili

se ci si dovesse preoccupare si scrivere un paio di file su di un disco staremmo freschi

sono ing. no avv.

Il Mon, 31 Mar 2008 14:15:21 +0200, mmm ha scritto:

ah, perfetto!

così immaginavo, ma la tua indicazione molto specifica mi faceva temere il peggio.

bhè, meglio così; per un hobbista come me non sarebbe stato possibile diversamente.

ti ringrazio comunque.

vabbè, allora ti farò fare la perizia tecnica di parte! ;)

Il 31 Mar 2008, 08:46, Robin2 ha scritto:

questo

Come ti hanno gia' detto, non hai motivo di preoccuparti. Le operazioni di lettura e scrittura non causano alcuno stress all'hd, o almeno lo stressano enormente di meno di altri eventi. Per esempio, l'evento piu' stressante e' il ciclo di power on-off, che ogni volta costringe le testine ad arare il disco (si fa per dire, comunque ogni volta lo strisciano leggermente, sia pure nella zona di parcheggio priva di dati). Ovviamente non parliamo di eventi anomali come shock, stress termici, tensioni di alimentazioni fuori specifiche. In pratica, un HD che lavora 24/7 leggendo e scrivendo, ha maggiori speranze di vita di uno che viene acceso e spento 4 volte al giorno.

-------------------------------- Inviato via

formatting link

Il Mon, 31 Mar 2008 16:17:07 GMT, brown fox ha scritto:

interessantissimo! Non immaginavo proprio quanto mi dici (addirittura pensavo che la scrittura potesse essere in assoluto l'evento più "stressante" per il disco). Grazie infinite.

Robin2 ha scritto:

Allora non hai proprio problemi. Tu pensa solo a salvare i dati, poi ci pensano i 3000 strati software a fare il loro lavoro, non lo stessi affatto.

Pensavo che lavoravi più a basso livello sinceramente.

Il Razziatore, "Lo sviluppo di una nazione si misura anche dallo stato della sua rete ferroviaria". Camillo Benso Conte di Cavour "Per tutto quanto non previsto nel presente regolamento il capostazione deve usare senno e ponderatezza." Regolamento d'esercizio FS ----------------------------------------------- MSN : IlRazziatore@netscape.net ICQ : 67552596 Yhaoo : Razziatore82 ----------------------------------------------- Founder of MediaPlayer Project http://mpp.iwebland.com

Il Tue, 01 Apr 2008 00:52:50 +0200, Il Razziatore ha scritto:

bhè, di "basso livello" ci sono solo le mie conoscenze, non mi potrei permettere di immaginare una gestione della scrittura su disco. Grazie mille.

Un bel giorno, Robin2 ebbe l'ardire di profferire:

Nessun utilizzo stressante visto che cmq ci penserebbe la cache del disco a scrivere quando è ora...

Satisfaction Guaranteed: We'll send you another copy if it fails. News 2000 [v 2.06] - http://www.akapulce.net/socket2000

Il Tue, 1 Apr 2008 13:39:24 +0200, Due di Picche ha scritto:

un grazie alla cache e soprattutto a te, Due di Picche, per i consigli.

Non so se OT o meno c'=E8 un simpatico programmino chiamato Active SMART che monitora degli specifici parametri del disco prevedendo le rotture prima che si verifichino, permettendo di salvare i dati. Cos=EC lo publicizzano.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required