Dateizugriff Puffern
-
Ich habe ein programm das über eine Längere zeit auf viele Dateien der Festplatte zugreift. On meinem Programm weiß ich recht gut, welche Dateien oft bzw sehr oft gelesen werden.
Aus einer Performanveanalyse weiß ich, dass Windows einige Dateien in einem Puffer vorhält. Leider scheint es nicht ganz zu passen was gepuffert wird, obwohl laut Systemanzeige noch mehrere GB Arbeitsspeicher frei sind. (Getestet unter Vista und Win7)
Wie kann ich nun Windows "zwingen" bestimmte Dateien zu puffern, bzw. den Puffer zu vergrößern?Ungern möchte ich diese Üufferung selbst vornehmen, da ich nicht weiß, wann Dateien ggf. verändert wurden. Und einege Operationen die mit den Dateien vorgenommen werden nur mit echten Dateien arbeiten.
-
Map Dir doch einen Teil der Datei einfachin den Speicher.
Siehe Memory Mapped Files.
http://msdn.microsoft.com/en-us/library/ms810613.aspx
http://msdn.microsoft.com/en-us/library/aa366556(VS.85).aspx