Linux/CentOS

리눅스 free 명령어

세상편한감자 2022. 9. 15. 13:44
반응형

free명령어는 메모리 사용 상황을 보여주는 명령어로 Mem 행은 "실제 메모리에 대한 상황 "Swap 행은 "스윕파일에 대한 정보"입니다.

free

 

<<첫번째 >>

8185964 : 메모리(물리적인 RAM) 총량

8117600 : 시스템에서 사용하고 있는 메모리(RAM) 총량으로 버퍼와 캐시된 데이터의 크기까지 포함

68364 : 남은 메모리 총량

0 : 공유된 메모리

242508 : 응용 프로그램들에 의해 버퍼된 메모리 총량

3387880 : 향후를 위한 데이터 캐싱에 사용한 메모리 총량

 

<<두번쨰 >>

4487212 : 실제 사용중인 메모리 총량

3698752 : 실제 남은 메모리의 총량

 

리눅스는 사하고 있지 않은 메모리를 빌려 디스크 캐싱에 사용하기 때문에 메모리 여유공간이 없을 특정 프로그램의 메모리 할당을 받으려고하면 즉시 버퍼/캐시가 공간을 빌려 응용프로그램에 할당을 해줍니다. 따라서 실제 여유공간은 첫번째 줄의 세번째 값이 아니라 두번째 줄의 두번째 값이 됩니다.

 

-/+ buffers/cache 의미

 

쉽게 말하자면, buffers 임시저장장소 같은 것으로 파일에 어떤것을 작성하라는 명령이 내려진다면 Linux 즉시 파일에 데이터를 쓰지 않고 버퍼에 담아두었다가 CPU 바쁘지 않을 쓰게 됩니다.

 

Cache 버퍼와 다른 의미로 메모리에서 사용되었던 실행이미지를 잠시동안 보관하고 있는 곳입니다.

Cache 필요한 이유는 자주 사용하는 프로그램을 빠르게 실행하기 위해서이며, 이렇게 함으로써 실행도 빨라지지만 HDD 접근하는 횟수도 훨씬 줄어들  있습니다

 

버퍼와 캐시는 모두 데이터 처리를 위한 임시공간이라는 공통점이 있지만, 캐시는 여러 사용될 있고 버퍼는 한번만 사용되는 차이점이 있습니다.

Shared 공유메모리로 프로세서, Thread 통신을 위해서 사용하게 됩니다.

반응형