memória

Hogyan ellenőrizhető a memóriahasználat folyamatonként Linux alatt

Hogyan ellenőrizhető a memóriahasználat folyamatonként Linux alatt
Manapság egy számítógép sok programot futtathat egyszerre. A CPU-nak nincs gondja mindezen programok kezelésével, mert a CPU-knak több magja van a többfeladatos feladatok kezeléséhez.

Ezen programok mindegyike egy vagy több folyamatként fut. Minden folyamat bizonyos mennyiségű RAM-ot vagy memóriát oszt ki magának. A folyamat megfelelő működéséhez elengedhetetlen. Ha egy folyamat nem tud elegendő RAM-ot vagy memóriát lefoglalni, akkor a folyamat nem hozható létre, és a program nem tud elindulni.

Tehát, az egyik alapvető feladat a számítógépen, hogy ellenőrizze, hogy a folyamat mennyi memóriát vagy RAM-ot (Random Access Memory) használ. Mivel a számítógép memóriája vagy memóriája korlátozott.

Képzelj el egy esetet, amikor valamilyen programot akarsz futtatni, és ez nem sikerül, mert nincs elég memóriád. Lehet, hogy egyes folyamatok sok memóriát használnak fel, amelyekre jelenleg nincs szüksége. A RAM vagy a memória felszabadítása érdekében megölheti vagy leállíthatja ezeket a folyamatokat, így elindíthatja a fontos programokat.

Ebben a cikkben megmutatom, hogyan lehet ellenőrizni a Linux gépén futó folyamatok memóriahasználatát. A Debian 9 Stretch programot a cikkben bemutatott összes bemutatóra felhasználom. De működnie kell minden modern Linux disztribúción. Kezdjük el.

A memória használatának ellenőrzése a ps parancs segítségével:

Használhatja a ps parancs a Linux összes folyamatának memóriahasználatának ellenőrzésére. Ennek az eljárásnak egyetlen problémája van. ps nem igazán mutatja meg, hogy egy folyamat mennyi memóriát használ KB vagy MB formátumban, de megmutatja, hogy mennyi memóriát használ fel százalékban.

A következő paranccsal ellenőrizheti a Linux operációs rendszerén futó folyamat memóriahasználatát (százalékban):

$ ps -o pid, user,% mem, command ax | sort -b -k3 -r

Amint láthatja, az összes memóriahasználatot igénylő folyamat százalékos arányban csökkenő sorrendben jelenik meg (a memória nagy részét használó folyamatok szerepelnek először).

A folyamatok memóriahasználatának ellenőrzése a pmap segítségével:

Egy folyamat vagy folyamatkészlet memóriáját ellenőrizheti ember által olvasható formátumban (KB-ban vagy kilobájtban) a pmap parancs. Csak arra van szüksége, hogy milyen folyamatok PID-jével ellenőrizze a memóriahasználatot.

Tegyük fel, hogy ellenőrizni szeretné, hogy mekkora memóriát használ a PID 917-es folyamat. Ehhez fuss pmap alábbiak szerint:

$ sudo pmap 917

Amint láthatja, a 917 folyamat által használt teljes memória 516104 KB vagy kilobájt. Itt láthatja azt is, hogy mennyi memóriát használnak a könyvtárak és egyéb fájlok, amelyek a folyamat futtatásához szükségesek a PID 917 alkalmazással.

Ha nem érdekli, hogy mekkora memóriát használnak a könyvtárak vagy más függő fájlok, akkor futtassa pmap alábbiak szerint:

$ sudo pmap 917 | farok -n 1

Amint láthatja, a képernyőn csak a PID 917 alkalmazásával használt összes memória van kinyomtatva.

Ha akarja, ezt tovább szűrheti a awk és csak a méretet kapja meg KB-ban vagy kilobájtban. Ehhez fuss pmap alábbiak szerint:

$ sudo pmap 917 | farok -n 1 | awk '/ [0-9] K / print $ 2'

Mint látható, csak a memóriahasználat KB-ban vagy kilobájtban kerül kinyomtatásra.

Most felsorolhatja azt is, hogy mennyi memóriát használ fel több folyamat PID-jével együtt pmap alábbiak szerint:

$ sudo pmap 917 531 | grep összesen

JEGYZET: Itt 917 és 531 folyamatazonosítók vagy PID-k. Annyi PID-t tehet be, amennyit csak akar.

A pmap használata az összes folyamat memóriahasználatának felsorolásához kilobájtban:

Ebben a részben bemutatom, hogyan írhat saját shell parancsfájlt a Linux operációs rendszeren futó összes folyamat memóriahasználatának felsorolására, ember által olvasható formátumban (kilobájt vagy KB).

Először készítsen egy új fájlt sysmon az aktuális munkakönyvtárban a következő paranccsal:

$ touch sysmon

Most tegye a fájlt futtathatóvá a következő paranccsal:

$ chmod + x sysmon

sysmon a shell parancsfájl, amely az összes futó folyamatot megjeleníti PID, TULAJDONOS, MEMÓRIA (KB-ban csökkenő sorrendben) és PARANCS. Kezdjük.

Nyissa meg a sysmon szkriptet a kedvenc szövegszerkesztőjével, használni fogom Kate.

Az első parancs, amelyet végrehajtani fogok, megadja nekem PID, TULAJDONOS és PARANCS az összes futó folyamatot kettőspont (:) szimbólummal elválasztva, és tárolja a RÁDIÓTEODOLITTAL MÉRT SZÉL változó. Ezután keresse meg a kimenetet, és nyomtassa ki a képernyőn.

Amint láthatja, a megfelelő kimenetet kapom.

Itt az ideje, hogy feldolgozzuk az egyes sorokat, a kettőspont által elválasztott információkat külön változókban tároljuk. Ezt tettem a 7., 8. és 9. vonalon.

Mint láthatja, tudok nyomtatni PID, TULAJDONOS és PARANCS most a saját formátumomban.

Itt az ideje, hogy lekérje az egyes PID memóriahasználatait. A 10. sor éppen ezt teszi.

Mint láthatja, minden tökéletesen működik. Most az egyes folyamatok memóriahasználatát kilobájtokban (KB) is kinyomtathatom.

Most már csak a kimenetet kell formázni, hogy szép legyen. Inkább a táblázat formátumát. Az 5. sor kinyomtatja a táblázat minden oszlopának fejlécét.

Végül kinyomtattam PID, TULAJDONOS, MEMÓRIA (KB-ban) és PARANCS az egyes folyamatok táblázatos formában a 14. sort használva.

Mint látható, ez nagyon jól működik. Van egy kis probléma, azonban a folyamatokat nem megfelelően rendezik csökkenő sorrendben a memóriahasználat szerint.

Ennek kijavítására eltávolítottam sort -bnr -k3 a 3. sortól, és mindent egy shell funkcióba csomagolt sysmon_main (). Ezután otthagyta a válogatás feladatát a fajta parancs.

Az utolsó shell parancsfájl így néz ki:

Mint látható, remekül működik.

Most áthelyezheti valahova / usr / bin és a többi parancshoz hasonlóan hajtsa végre az alábbiak szerint:

$ sudo mv -v sysmon / usr / bin

Végrehajtó sysmon:

Köszönjük, hogy elolvasta ezt a cikket.

Az egér és az érintőpad beállításainak módosítása az Xinput használatával Linux alatt
A legtöbb Linux disztribúció alapértelmezés szerint „libinput” könyvtárral szállítja a rendszer bemeneti eseményeit. Feldolgozhatja a Wayland és az X ...
Az X-Mouse Button Control segítségével az egér gombjait másképp alakíthatja át a különböző szoftvereknél
Lehet, hogy szüksége van egy eszközre, amely megváltoztathatja az egér vezérlését minden használt alkalmazással. Ebben az esetben kipróbálhatja az úgy...
Microsoft Sculpt Touch vezeték nélküli egér áttekintés
Nemrég olvastam a Microsoft Sculpt Touch vezeték nélküli egér és úgy döntött, hogy megveszi. Egy ideig használat után úgy döntöttem, hogy megosztom ve...