Apa perbedaan antara memori total dan bebas

11

Saya memiliki sistem desktop tempat Centos 7 diinstal. Ini memiliki 4 inti dan 12 GB memori. Untuk menemukan informasi memori, saya menggunakan free -hperintah. Saya punya satu kebingungan.

[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

Dalam kolom total, dikatakan bahwa total dalam 11GB (itu benar), di kolom terakhir yang tersedia, dikatakan bahwa 6.6GB dan yang digunakan adalah 4.6G.

Jika memori yang digunakan adalah 4.6GB maka yang tersisa harus 6.4 GB (11-4.6 = 6.4). Apa interpretasi yang benar dari output di atas. Apa perbedaan antara total dan memori yang tersedia dan bebas? Apakah saya kehabisan memori di atas kasus jika saya perlu 1 GB lebih untuk beberapa aplikasi baru?

Syafiq
sumber
jadi pertanyaan Anda adalah mengapa 6,6 dan bukan 6,4?
αԋɱҽԃ αмєяιcαη
1
pertanyaan ini kembali ke beberapa dekade .. Bagaimana Anda merujuk ke memori yang saat ini digunakan sebagai cache, tetapi 'tersedia atau gratis'. yaitu. itu berisi data dari disk dan dengan demikian 'cache' jika diperlukan; tetapi tersedia untuk aplikasi jika mereka malloc (). perbedaan yang Anda khawatirkan berguna untuk memberi tahu kami berapa banyak memori yang digunakan oleh 'tempat untuk meletakkan nilai ini' dan diperdebatkan setiap beberapa tahun sejak tahun 80-an. itu tidak berubah tetap seperti biasanya (gambar yang menjengkelkan itu berguna! dan tidak berubah tidak berarti kita harus memodifikasi skrip puluhan tahun yang menggunakannya)
guiverc

Jawaban:

14

man free Perintah memecahkan masalah saya.

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)
Syafiq
sumber