|
|
Rendszer memóriaszivárgásának megfigyelése kernel módban
|
|
|
Ha valamely eszközmeghajtó hibás, akkor előfordulhat, hogy memóriaszivárgást okoz, mivel memóriát foglal le, de azt nem szabadítja fel, tehát folyamatosan lefoglalt marad a terület. Az ilyen memóriaszivárgások megtalálásához mutatunk be egy hatásos eszközt cikkünkben.
Amikor egy folyamat memóriát foglal le, de dolga végeztével nem szabadítja fel, akkor a szabad memória végül is használatban marad.
Rosszul megírt eszköz-meghajtó programok gyakran okoznak memóriaszivárgást.
A cikkünkben alkalmazott Gfalgs.exe és Poolmon.exe a Support Tools részei, ezért telepítsük fel a támogatási csomagot az operációs rendszer telepítőlemezéről. A Poolmon.exe eszköz segítségével megfigyelhetők a memóriaszivárgások.
Ahhoz, hogy a Poolmon-t használni tudjuk, be kell kapcsolnunk a készletcímzést. Ez a Windows 2003 szerverben alapesetben be van kapcsolva. Egyéb rendszerekben az alábbi módon kapcsolható be:
- Kattintsunk a Start / Run-ra, írjuk be, hogy Gflags.exe, majd OK.
- Jelöljük be az Enable Pool Tagging-et.
- Kattintsunk az Apply-ra és az OK-ra.
- Kapcsoljuk ki és indítsuk újra a gépet.
Amikor befejeztük az ellenőrzést, akkor kapcsoljuk ki a Pool Tagging-et.
Mielőtt használnánk a Poolmon-t, beállíthatjuk a parancssor néhány tulajdonságát:
- Kattintsunk a Start / Run-ra, írjuk be, hogy CMD.exe, majd OK.
- Kattintsunk jobb egérgombbal a címsorra és válasszuk a Tulajdonságokat.
- Válasszuk a Beállítások lapot.
- Jelöljük be a Gyorsszerkesztés és Beszúrási módot.
- Válasszuk az elrendezés lapot.
- Állítsuk a Képernyő puffer oszlop méretét 99-re, és kattintsunk az OK-ra.
- A Beállítások alkalmazása ablakban válasszuk a Beállítások alkalmazása csak az aktuális ablakra jelölést, és kattintsunk az OK-ra.
Ahhoz, hogy információkat gyűjtsünk a Poolmon segítségével, ismételjük a következő eljárást 15 percenként legalább két órán át. Bővítsük az összegyűjtött információt egy Notepad fájl végére:
- Kattintsunk a Start / Run-ra, írjuk be, hogy CMD.exe, majd OK.
- Írjuk be, hogy Poolmon.exe.
- Üssük le a P-t, amíg a Poolmon megjelenti a második oszloptípust és megmutatja a lapozott értéket.
- Üssük le a B-t, hogy csökkenő sorrendbe rendezzük az oszlopokat
- Jelöljük ki az egész megjelenített tartalmat, és üssünk Enter-t, hogy kimásoljuk azt a vágólapra.
- Nyissuk meg a Notepad-et, és illesszük be az információt.
- Üssük le a P-t, amíg a Poolmon megjelenti a második oszloptípust és megmutatja a nem lapozott értéket.
- Jelöljük ki az egész megjelenített tartalmat, és üssünk Enter-t, hogy kimásoljuk azt a vágólapra.
- Illesszük be az előző tartalom után a Notepad-be.
Vizsgáljuk meg a különféle memóriafoglalásokat, hogy eldöntsük, melyik a szivárgó.
Hogyan lehet a készletből meghatározni egy meghajtó nevet?
- Nyissunk egy CMD prompt ablakot.
- Váltsunk át a meghajtók mappába:
cd /d %SystemRoot%\System32\Drivers
- Írjuk be az alábbi parancsot:
findstr /m /l <pool tag> *.sys
- Ha több fájlt kapunk, akkor adjunk egy h-t a <pool tag>-hez. A findstr /m /l hTCPt *.sys parancs TCPIP.SYS-t ad vissza.
Poolmon parancsok
- P – Rendezi a címlistát lapozott, nem lapozott, vagy kevert módon. Ciklikus megjelenítés.
- B – Maximum felhasználás szerint rendez.
- M – Maximum lefoglaltság szerint rendez.
- T – Névsor szerint rendezi a címeket.
- A – Lefoglalt méret szerint rendezi a címeket.
- F – Felszabadítás szerint rendezi a címeket.
- S – Lefoglalások és felszabadítások közötti különbség szerint rendez.
- E - Rendezi a címlistát lapozott, nem lapozott összesként hátulról haladva. Ciklikus megjelenítés.
- Q - Kilépés.
|
Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!
|