Forum: Win32/Win64 API (native code)
C++
by marabu,
16. Nov 2006
Ja sicher doch. Die einzelnen Pufferbereiche sind ja unterschiedlich groß. Die Festplatte selbst hat einen Track Buffer und einen Cache, der von Modell zu Modell variieren kann. Das Dateisystem hat einen Cache, der von der Größe des Hauptspeichers und dem momentanen Verhandlungsstand der Betriebssystem-Komponenten abhängt, ...
Warum hängst du die Dateien nicht einfach per shell command...
Forum: Win32/Win64 API (native code)
C++
by marabu,
15. Nov 2006
Hi,
die 64KB kommen aus dem Bauch. Den worst case hast du ja schon mit deinem single byte i/o erlebt. Beim file i/o überlagern sich ja mehrere Puffer auf verschiedenen Ebenen. Die performance deines Programms steigt mit wachsender Puffergröße an, fällt allerdings irgendwann auch wieder ab, wenn der Puffer zu groß gewählt wird. Mit einem kleinen Testprogramm (100 Zeilen schätze ich) könntest du...
Forum: Win32/Win64 API (native code)
C++
by marabu,
12. Nov 2006
Hallo Andreas,
kennt dein C++-Compiler keinen stream i/o? Wenn nicht, dann halte ich 4GB für einen verdammt großen Puffer - 64KB wären wohl eher angebracht. Auch würde ich prüfen ob mindestens 2 Pfade vorhanden sind, bevor ich die Arbeit aufnehme. Die Laufvariable i scheint mir auch hoffnungslos überdimensioniert zu sein. Warum öffnest du die Quelldateien für Lesen und Schreiben? Musst du die...