Sobes.tech
Middle

Ako zistiť množstvo dostupnej operačnej pamäte na Linuxe?

sobes.tech AI

Odpoveď od AI

Existuje niekoľko spôsobov, ako zistiť množstvo dostupnej operačnej pamäte na Linuxe.

1. Použitie príkazu free

Toto je pravdepodobne najbežnejší a najjednoduchší spôsob.

free -h  // Zobrazí informácie o pamäti vo čitateľnom formáte (gigabajty, megabajty)

Výstup príkazu free -h zvyčajne vyzerá takto:

total used free shared buff/cache available
Mem: 15Gi 6.5Gi 2.0Gi 500Mi 7.0Gi 8.0Gi
Swap: 2Gi 0B 2Gi
  • total: Celkové množstvo fyzickej RAM.
  • used: Použité množstvo pamäte.
  • free: Voľné množstvo pamäte.
  • shared: Pamäť používaná viacerými procesmi.
  • buff/cache: Pamäť používaná na vyrovnávaciu pamäť a cache.
  • available: Odhad množstva pamäte dostupnej pre nové procesy, bez použitia swapu. Toto je najpresnejší ukazovateľ skutočne dostupnej pamäte.

2. Prehliadanie súboru /proc/meminfo

Tento súbor obsahuje nízkoúrovňové informácie o pamäťovom subsystéme jadra.

cat /proc/meminfo

Výstup príkazu cat /proc/meminfo bude podrobnejší a môže obsahovať veľa riadkov. Najzaujímavejšie pre nás sú:

  • MemTotal: Celkové množstvo pamäte v kilobajtoch.
  • MemFree: Voľné množstvo pamäte v kilobajtoch.
  • MemAvailable: Množstvo pamäte dostupnej pre nové procesy, v kilobajtoch.

3. Použitie príkazov top alebo htop

Nástroje na monitorovanie systému, ako sú top (štandardný) alebo htop (interaktívnejší), tiež zobrazujú informácie o využití pamäte.

top  // V hornej časti výstupu bude informácia o pamäti

V top alebo htop je informácia o pamäti často zobrazená vo forme riadku podobného free, s označením celkovo, použité, voľné a buffer/cache.

Pre Python vývojára je pochopenie dostupnej pamäte dôležité pre:

  • Odhad výkonu aplikácie.
  • Určenie potreby optimalizácie spotreby pamäte.
  • Nastavenie parametrov aplikácie (napríklad pool pripojení k databáze, cache).
  • Diagnostiku problémov s únikom pamäte.

Najviac užitočné pre pochopenie skutočného objemu dostupnej pamäte, ktorý môžu použiť nové procesy, je hodnota available z príkazu free alebo /proc/meminfo.