Jaka jest różnica między pamięcią całkowitą a wolną

12

Mam system stacjonarny, na którym zainstalowano Centos 7. Ma 4 rdzenie i 12 GB pamięci. Aby znaleźć informacje o pamięci, używam free -hpolecenia. Mam jedno zamieszanie.

[user@xyz-hi ~]$ free -h
              total        used        free      shared  buff/cache   available
Mem:            11G        4.6G        231M         94M        6.8G        6.6G
Swap:          3.9G        104M        3.8G

W kolumnie ogółem Mówi się, że w sumie 11 GB (to prawda), w ostatniej dostępnej kolumnie jest to, że użyto 6,6 GB i użyto 4,6G.

Jeśli używana pamięć wynosi 4,6 GB, pozostała pojemność powinna wynosić 6,4 GB (11-4,6 = 6,4). Jaka jest prawidłowa interpretacja powyższego wyniku Jaka jest różnica między całkowitą a dostępną i wolną pamięcią? Czy brakuje mi pamięci, czy potrzebuję 1 GB więcej na nową aplikację?

Shafiq
źródło
więc twoje pytanie dotyczy tego, dlaczego jest to 6,6, a nie 6,4?
αԋɱҽԃ αмєяιcαη
1
to pytanie sięga wielu dziesięcioleci. Jak odnosisz się do pamięci używanej obecnie jako pamięć podręczna, ale jest ona „dostępna lub bezpłatna”. to znaczy. zawiera dane z dysku i dlatego w razie potrzeby „buforuje”; ale jest dostępny dla aplikacji, które powinny Malloc (). różnica, o którą się martwisz, jest przydatna, aby dać nam znać, ile pamięci zajmuje to „gdzie umieścić tę wartość” i jest dyskutowana co kilka lat od lat 80-tych. pozostało niezmienione, jak zawsze (denerwująca konfiguracja jest przydatna! a niezmienność nie oznacza, że ​​musimy modyfikować dziesięciolecia starych skryptów, które go używają)
guiverc

Odpowiedzi:

15

man free polecenie rozwiązać mój problem.

DESCRIPTION
       free  displays the total amount of free and used physical and swap mem‐
       ory in the system, as well as the buffers and caches used by  the  ker‐
       nel.  The  information  is  gathered by parsing /proc/meminfo. The dis‐
       played columns are:

       total  Total installed memory (MemTotal and SwapTotal in /proc/meminfo)

       used   Used memory (calculated as total - free - buffers - cache)

       free   Unused memory (MemFree and SwapFree in /proc/meminfo)

       shared Memory used (mostly) by tmpfs (Shmem in /proc/meminfo, available
              on kernels 2.6.32, displayed as zero if not available)

       buffers
              Memory used by kernel buffers (Buffers in /proc/meminfo)

       cache  Memory  used  by  the  page  cache and slabs (Cached and Slab in
              /proc/meminfo)

       buff/cache
              Sum of buffers and cache

       available
              Estimation of how much memory  is  available  for  starting  new
              applications,  without swapping. Unlike the data provided by the
              cache or free fields, this field takes into account  page  cache
              and also that not all reclaimable memory slabs will be reclaimed
              due to items being in use (MemAvailable in /proc/meminfo, avail‐
              able on kernels 3.14, emulated on kernels 2.6.27+, otherwise the
              same as free)
Shafiq
źródło