Ho trovato questo pezzo di discussione
[quote]
...
Visto che ti interessa leggere byte per byte, la cosa migliore con le API è quella di aprire il file, determinarne la lunghezza in byte, predimensionare un buffer abbastanza capiente per contenere il file, leggere il contenuto del file (mettendolo direttamente nel buffer), chiudere l'accesso al file.
In questo modo leggi da disco 1 volta sola, e poi lavori con il buffer (cioè il file) in memoria.
Se il file è di grosse dimensioni (diciamo superiori ai 4 MB) metterlo tutto in un buffer diventa controproducente, e allora ti conviene 'mappare' il file su disco, in modo da poterlo leggere come se fosse un gigantesco buffer allocato dal tuo programma (è una cortesia che ti fa Windows quella di permetterti di leggere da un file come se fosse allocato nel segmento di memoria del tuo processo)...[/qupte]
Come si "mappa" il file su disco?