Newsgroup: it.comp.programmare.win32
Titolo: [OT] Cache di Windows attiva solo su dischi/pendrive con file-system conosciuti?

Ciao,
 
Questo mio messaggio non riguarda proprio la programmazione, ma forse voi 
programmatori siete meglio a conoscenza di certi funzionamenti "nascosti" 
dei sistemi operativi. Mi riferisco a Windows XP Professional, ma sono 
interessato in generale per Windows anche più recenti.
 
Ho letto che la cache di sistema di Windows funziona a livello di file, o 
meglio a segmenti di file. Giusto?
Se ho quindi un disco che non è formattato con un file-system riconosciuto 
da Windows (NTFS, FAT, ecc.), e quindi Windows non vi legge di per sè alcun 
file, si può dire che per quel disco la cache di sistema non è attivata? 
Oppure Windows ha qualche stratagemma per usare una cache lo stesso, nel 
caso ci sia un programma installato e attivo che è in grado di leggere da 
quel disco (o pendrive, nel mio caso particolare)? E nel caso che il disco 
non contenga un vero e proprio file-system, ma venga usato in modo "raw" 
(credo sia questo il termine)?
 
Passo a spiegare la mia situazione in particolare...
 
Ho un programma con una funzione ("Error Scan") per testare l'integrità 
(l'assenza di difetti/guasti) di chiavette USB e memorie flash in generale, 
si chiama Flash Memory Toolkit ed è fatto dalla stessa software house del 
più famoso (credo) HDTune. Questo F.M.T. può eseguire sia un "read test", 
sia un "write test" (scrivendo sul supporto), e può anche combinare questi 
test facendo anche una verifica dei dati scritti dal "write test" (ma la 
verifica di cui parlo non avviene immediatamente, il percorso è: write test 
completo - read test completo con verifica).
 
Ora io sono a conoscenza di problemi che riguardano alcuni software che 
eseguono una verifica dei dati da poco scritti; in pratica se questi dati 
scritti si trovano ancora in una cache (di sistema Windows, o integrata nel 
disco rigido o altro), al momento della lettura (per la verifica) c'è la 
possibilità che essi non vegano letti come sono stati scritti sul supporto, 
ma che vengano invece letti dalla cache; in questo modo c'è la possibilità 
che eventuali errori di scrittura non vengano rilevati.
 
Ecco quindi che vorrei accertarmi che questo Flash Memory Toolkit acceda in 
modo diretto alle mie chiavette USB, senza far giacere i dati in una cache. 
Queste chiavette non hanno di per sè (di solito) una cache integrata, quindi 
rimane solo la cache di Windows da valutare.
 
C'è un elemento da considerare: quando il programma F.M.T. esegue un "write 
test", non scrive sulla chiavetta usando un normale file-system noto a 
Windows -- infatti dopo aver completato il test la chiavetta risulta a 
Windows (XP Pro nel mio caso) come "non formattata", e viene richiesto di 
formattarla nel caso si tenti di accedervi. Vista la natura della funzione 
"Error Scan" di F.M.T., penso si possa anche ipotizzare che non viene 
neanche usato un vero e proprio file-system, ma che vengano semplicemente 
scritti dei dati fino a riempire il supporto, senza una struttura (cartelle, 
file, ecc.), per poi essere letti e verificati (e sicuramente F.M.T. oltre a 
questo ha anche altri sistemi per valutare la salute di una memoria flash).
 
Da quanto ho letto in giro sembrerebbe che le cose siano effettivamente (e 
fortunatamente) così: essendo la cache di Windows basata su file, se non 
vengono rilevati file da Windows (su un file-system non noto), non puo' 
funzionare la cache.
Mi rimane però ancora qualche dubbio, che spero possiate dissipare; leggevo 
che oltre alla cache "file-based", esiste anche una cache "block-based". Non 
so esattamente come funzioni, ma dovrebbe differire dalla "file-based" per 
il fatto di non tenere in considerazione i singoli file per gestirsi, e 
invece tiene in considerazione "blocchi" di dati sul supporto. Potrei però 
sbagliarmi. Comunque dove l'ho letto non si parlava nello specifico di 
Windows.
Il dubbio: è possibile che Windows entri in una specie di modalità 
"block-based", quando risulta un accesso ad un disco/pendrive da parte di un 
programma in grado di gestirlo, ma che invece non viene riconosciuto come 
formattato dal sistema Windows?
Credo di no, ma mi piacerebbe avere delle conferme da qualche esperto. Ho 
scritto al supporto tecnico del programma, ma sembrerebbe inattivo.
 
Ciao e grazie.
 
 

 invece tiene in considerazione "blocchi" di dati sul supporto.
 
Resta il fatto che (come detto sopra) la cache si puo' invalidare, anzi 
direi che la prima preoccupazione di chi fa programmi diagnostici e' 
proprio questa.

 ha scritto nel messaggio 
news:4fa966ec$0$1387$4faf...@reader2.news.tin.it...
 
[...]
 
Grazie per la risposta!
 
Thomas