wie entstehen memory leaks ?

hallo leute

kann mir vielleicht jemand sagen wie Memory leaks entstehen können. ?

wir haben immer noch ein problem mit einem Server bei einem Kunden und vielleicht hilft es mir wenn ich weiss von welchen applikation / Treiber ein Memory leak ausgelöst werden kann.

gibt es evtl. auch tools die die herkunft eines memory leak fehlers aufspüren können ?

über eine Antwort würde ich mich freuen.

Gruss

Darkmind
 
afaik entstehen memory leaks durch unsaubere Programmierung
BoundsChecker ist ein Tool das Developer einsetztem um Ihre Applikationen tighter zu schnüren
 
hai jungle mein freund :)

hmm..

also es geht darum... das ich immer noch dieses Server problem habe.. da wohl niemand eine antwort kennt ( ms kb, google usw usw)
muss ich wohl selbst herausfinden wodurch der felher verursacht wird.

danke werd mir dein tool anschauen.


gruss

Darkmind
 
Moin,

Memory-Leaks entstehen, wenn jemand sich per malloc() Speicher zuordnet, aber es unterläßt, ihn nach Benutzung auch wieder mit free() freizugeben.

Passiert so etwas, kann einem schon mal eine Maschine vollaufen, weil sich dann ein Prozeß allen Speicher, den er bekommen kann, zuordnet. Und das ist ja irgendwie unsozial.

Finden tut man so etwas, indem man z.B. unter Linux mit top die Prozesse beobachtet und bei einem feststellt, daß er immer mehr Prozente vom verfügbaren Speicher benutzt.

Unter Linux kann man z.B. Valgrind dazu verwenden, so etwas und noch einiges mehr zu finden. Vorrausgesetzt, du hast den Source-Code und Programmierer griffbereit. Weil sonst nützt dir die Information, daß die Anwendung "xyz" Speicher nicht wieder freigibt, nicht allzu viel...
 
Darki, :)

falls du probleme mit einem windows server hast, dann schalte doch mal die Funktion "Speicherabbild erstellen" ein. (Systemeigenschaften, Starten und Wiederherstellen,Systemfehler). Meistens kann man aus dem "gewollten Bluescreen" noch einige Rückschlüsse ziehen. (zB. wenn ein Terminalserver aufgrund eines Druckertreiber abraucht steht da hp**irgendawas.dll verursachte einen Fehler)

Grüße

Dom
 
hallo

danke für deine Antwort

hmm.. naja..es handelt sich um einen windows server.
hmm.. doch.. ich jage die Anwendung zum teufel :evil:
Doch wenn man nicht weiss wo suchen.. dann wirds schwierig.

danke für deine beschreibung.. und ich hoffe ich finde bald raus.. wie warum weshalb.


gruss

Darkmind
 
Moin,

da ich gerade unter Linux arbeite, kann ich jetzt schlecht nachsehen, aber ich glaube, im Task-Manager von Windows die Anzeige, wie viel Speicher eine Anwendung belegt. Und sortieren danach kann man glaube ich auch noch.

Eine andere Möglichkeit, warum eine Anwendung zu viel Speicher verbraucht, kann auch sein, daß sie bzw. die Maschine schlicht und ergreifend überfordert ist. Wenn z.B. Word ein 16 Terrabyte große Datei öffnen soll, dürfte es auch knacken. Oder Word soll 40.000 Dokumente gleichzeitig öffnen... Das wären dann Anwender- und Konfigurationsfehler.
 
@junglehell

wie gesagt es handelt sich um einen server. es kann auch ein Dienst sein der den memory leak verursacht.
Via Terminal läuft dort aussert die Remote Administration eigentlich nichts.

Ich bin immernoch der meinung das SAV oder der treiber des Raid Controllers die Probleme verursacht, aber ich kann das nicht genau Diagnostizieren. deshalb hier meine Frage. :)

@as3jg

Das problem ist, das ich den server nicht ständig überwachen kann.
Darauf gearbeitet wird auch nicht.

Fehler oder hinweise welche Anwendung bestehen in direkterweise auch nicht.

Die cpu ist sozusagen nie richtig ausgelastet wenn ich den Server mal überwache.


Das einzige was auffällt das der leak immer 4-6 stunden nach der geplanten Anti virus prüfung von SAV ausbricht.
Doch da ist das problem. wir haben SAV bei einigen Server im Einsatz. doch nur bei 2 passiert dieser Fehler. diese beiden Server haben viele gemeinsamkeiten wie.zb 2ghz RAM, einen Fastrak RAID Controller und das gleiche Board.
Darum ist es so schwierig ausfindig zu machen, welche anwendung oder welcher Dienst den Memory leak auslöst.

Aber ich habe jetzt auf jeden fall verstanden um was für ein Problem es sich überhaupt handelt.. ich denke das könnte mich evtl. weiterbringen.


vielen danke für eure Antworten

Gruss

Darkmind
 
Zurück
Oben