zu hoher Ram verbruach mit NForce 2 Chipsatz

Wozu lädt der über 100MB innen Cache? Der andere kommt doch auch mit 39MB aus.
Kanns vielleicht an der High Memory Support Option im Kernel liegen?

Und was soll das überhaupt bringen nicht verwendeten Speicher zu reservieren?
Wenn ich en prog. zu mach und neustarte wird der eh, egal was drin ist neu initialisiert.
Das einzige was eventuell noch halbwegs sinn ergeben würde wäre etwas alla:
Code:
void * cache = (void*)calloc(100, sizeof(char));
char * var = (char*)&cache+60;

d.h. den speicher von dynamischen arrays schon vor programmstart zu allocaten (eventuell gar zu initialisieren) und dann nachher nur noch mit nem pointer oder ner referenz draufzuzeigen anstatt en extra calloc/malloc aufzurufen.
 
Zuletzt bearbeitet:
Weil RAM nun mal schneller ist, als ne Festplatte. Und der Speicher wird auch nicht "reserviert", sondern einfach genutzt. Warum sollte er auch leer vor sich hindümpeln? Da kannste den ja auch ausbauen.
Und sobald mehr Speicher benötigt wird, als wirklich frei ist, fliegt der Krempel aus dem Cache eh weg ...
Also nochmal ... wo ist das Problem?
 
Was hab ich von dem cache??
Es wäre sinnvoller anstatt datenmüll im Ram zu behalten das ganze zu löschen oder mit 0 zu überschreiben. Und belegt von Programmen können nach nem Boot mit ner Rescue Disk keine 100MB sein.
EDIT:
http://forums.gentoo.org/viewtopic.php?t=175419
hat für Klarheit gesorgt, auch wenn ichs immernoch hirnrissig finde.
 
Zuletzt bearbeitet:
MrFenix schrieb:
Was hab ich von dem cache??
Es wäre sinnvoller anstatt datenmüll im Ram zu behalten das ganze zu löschen oder mit 0 zu überschreiben. Und belegt von Programmen können nach nem Boot mit ner Rescue Disk keine 100MB sein.

Wiso hat die CPU 'nen Cache? Manche sogar drei davon. Wiso haben HDDs 'nen Cache?
Weil es mehr Speed bringt. Außerdem wird der Plattenchache im RAM von Linux auch als
Buffer genutzt. Dadurch werden (wenn der Buffer voll ist) größere Datenblöcke auf einmal auf die Platte geschrieben, anstatt synchron wie es ohne Buffer der Fall wäre. Dadurch wird das ganze im Endeffekt in kürzerer Zeit abgearbeitet. Und du hast dadurch keinen Verlust. Die Größe des Caches wird dynamisch angepasst. Braucht eine Anwendung den Speicher, bekommt si ihn auch. Also mach dir nicht ins Hemd ;)
 
Stimmts denn wenigstens, dass der enorme Verteilungsunterschied zwischen meinen Beiden rechnern dadruch kommt, dass auf dem einen Highmem Kernel support an ist und auf dem anderen nicht?
 
Nein.
Es wird eher daran liegen, dass unterschiedliche Mengen an RAM vorhanden sind, es verschiedene Hardware ist und womöglich anders konfigurierte Linux-Systeme ...
 
Zurück
Oben