[quote=Neal_the_real,22.02.2006, 13:35][quote=nepos,22.02.2006, 10:04]Nein Neal, es gibt auch einen Lese-Cache. Linux verwendet zum Beispiel einen Grossteil des freien Hauptspeichers fuer Caches. Wenn du die gleiche Datei x-mal hintereinander liest, wird sie nur beim ersten mal wirklich von der Platte gelesen, danach kommt sie aus dem Cache im Speicher, der natuerlich wesentlich flotter ist.
Da macht auch der System-Call open und Co keinen Unterschied, denn das Caching im OS liegt dahinter.[/quote]
Ja ok, du hast recht. Aber ich denke das das Betriebssystem in der Zwischenzeit viele andere Sachen in den Speicherladen muss. Kommt halt ganz auf die groesse des Ram's an.
Aber das kann man ja nicht beeinflussen ob die Daten noch im Lesepuffer sind oder nicht. Wenn man die Daten in eine Programmeigenen Datenstruktur ablegt, dann ist man auf jeden Fall auf der sicheren Seite. Das wollte ich damit ausdruecken.
[/quote]Die Frage ist, ob das Betriebssystem das vielleicht besser kann als du. Letztendlich muss man einfach dafür sorgen, dass ein System genug RAM hat. Wenn Speicher knapp wird und die Maschine gar zu swappen anfängt, dann hat man schon verloren. Hingegen kann das Betriebssystem sehr gut entscheiden, was gecachet werden soll und was nicht, z.B. durch die Verwendung eines Least Recently Used Cache.
QuoteIch habe z.B. einen V Server der mir meine Partition per NFS bereitstellt. Wenn ich da auf Daten zugreifen will dauert das ewig.
NFS ist eine andere Geschichte. Das sollte man wirklich nicht benutzen, wenn man Performance braucht.