`free` 명령에서`shared` 메모리의 의미는 무엇입니까? + Shared

출력의 네 번째 열 free이름은 shared 입니다. 인터넷에서 볼 수있는 대부분의 출력에서 공유 메모리는 0입니다. 그러나 내 컴퓨터에서는 그렇지 않습니다.

$ free -h
          total        used        free      shared  buff/cache   available
Mem:       7,7G        3,8G        1,1G        611M        2,8G        3,0G
Swap:      3,8G          0B        3,8G

다음은 다음과 같은 결과를 발췌 한 것입니다 ps_mem.py.

 Private  +   Shared  =  RAM used   Program
---------------------------------
 21.4 MiB +   1.0 MiB =  22.4 MiB   bash (9)
 29.2 MiB +   5.3 MiB =  34.5 MiB   Xorg
 35.9 MiB + 858.5 KiB =  36.7 MiB   tor
 42.9 MiB +   9.6 MiB =  52.5 MiB   urxvt (16)
121.0 MiB +  24.9 MiB = 145.8 MiB   okular (2)
151.8 MiB +   2.8 MiB = 154.6 MiB   soffice.bin
  3.7 GiB + 209.3 MiB =   4.0 GiB   chromium (39)
---------------------------------
                          4.6 GiB
=================================

공유 메모리 의 의미는 무엇입니까 ?

질문 14102의 주요 답변은 다음 과 같습니다 . 공유 : 더 이상 존재하지 않는 개념. 이전 버전과의 호환성을 위해 출력에 남아 있습니다. 나에게 부족해 보인다. “존재하지 않는”개념은 600MB 이상의 RAM을 사용하지 않습니다.



답변

“공유” free및 “Shmem” /proc/meminfo은 tmpfs 파일 시스템 (메모리의 파일 시스템)이 사용하는 모든 메모리와 공유 메모리 (에 의해 할당 됨 shmget(2))를 계산합니다. 이것은 https://www.kernel.org/doc/Documentation/filesystems/tmpfs.txt에 설명되어 있습니다 .

다음은 내 서버 중 하나의 예입니다.

$ free -k
              total        used        free      shared  buff/cache   available
Mem:      264036296     1275384   254696692     1182024     8064220   260536208
Swap:      63998972           0    63998972

$ grep Shmem /proc/meminfo
Shmem:           1182024 kB

$ df -BK | grep tmpfs
tmpfs        26403632K       51424K    26352208K   1% /run
tmpfs       132018148K         224K   132017924K   1% /dev/shm
tmpfs            5120K           4K        5116K   1% /run/lock
tmpfs       132018148K           0K   132018148K   0% /sys/fs/cgroup
tmpfs       251658240K     1129036K   250529204K   1% /run/shm
tmpfs        26403632K          24K    26403608K   1% /run/user/108
tmpfs        26403632K           0K    26403632K   0% /run/user/5800006

로 나열된 모든 tmpfs 파일 시스템의 사용 된 크기 (3 번째 열)를 df합하면 합계가 “shared”및 “shmem”과 같습니다.