익명 사용자
로그인하지 않음
토론
기여
계정 만들기
로그인
IT 위키
검색
리눅스 메모리
편집하기
IT 위키
이름공간
문서
토론
더 보기
더 보기
문서 행위
읽기
편집
원본 편집
역사
경고:
로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다.
로그인
하거나
계정을 생성하면
편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.
스팸 방지 검사입니다. 이것을 입력하지
마세요
!
'''리눅스 메모리'''(Linux Memory)는 운영체제에서 프로세스 및 커널이 사용하는 메모리 관리 방식을 의미한다. 리눅스에서는 가상 메모리, 캐시, 스왑 등의 개념을 활용하여 효율적인 메모리 관리를 수행한다. ==개요== 리눅스는 메모리를 효율적으로 사용하기 위해 가상 메모리(Virtual Memory) 시스템을 채택하고 있으며, 프로세스마다 독립적인 메모리 공간을 할당한다. 또한 캐시(Buffer Cache)와 스왑(Swap) 기능을 통해 물리적 메모리를 보완한다. ==메모리 구조== 리눅스의 메모리 구조는 크게 다음과 같이 나뉜다. *'''물리적 메모리 (Physical Memory)''' **RAM(Random Access Memory)으로 구성되며, 커널과 사용자 프로세스가 직접 사용하는 메모리 공간이다. **페이지 단위(일반적으로 4KB)로 관리된다. *'''가상 메모리 (Virtual Memory)''' **프로세스마다 독립적인 메모리 공간을 제공하는 논리적 메모리 구조이다. **물리적 메모리보다 큰 공간을 제공하며, 스왑 영역을 활용할 수 있다. *'''스왑 메모리 (Swap Memory)''' **RAM이 부족할 때, 디스크의 일부를 메모리처럼 사용하는 공간이다. **물리적 메모리에 비해 속도가 느리지만, 메모리 부족 현상을 완화하는 역할을 한다. *'''캐시 및 버퍼 (Cache & Buffer)''' **자주 사용되는 데이터를 저장하여 성능을 향상시키는 역할을 한다. **커널은 사용 가능한 여유 메모리를 캐시와 버퍼로 적극 활용한다. ==메모리 확인 명령어== 리눅스에서 현재 메모리 상태를 확인하는 주요 명령어는 다음과 같다. ===`free` 명령어=== `free` 명령어는 사용 가능한 메모리와 스왑 상태를 확인하는 데 사용된다.<syntaxhighlight lang="bash"> free -h </syntaxhighlight>출력 예시:<pre> total used free shared buff/cache available Mem: 15Gi 3Gi 2Gi 1Gi 10Gi 11Gi Swap: 4Gi 1Gi 3Gi </pre>옵션 설명: *`-h` : 사람이 읽기 쉬운 형식(Human-readable)으로 출력 ===`top` 명령어=== `top` 명령어는 실시간으로 CPU 및 메모리 사용량을 모니터링하는 데 사용된다.<syntaxhighlight lang="bash"> top </syntaxhighlight>출력 예시:<pre> KiB Mem : 16324232 total, 12150332 free, 2048032 used, 2147072 buff/cache KiB Swap: 8388604 total, 8388592 free, 12 used. 12550300 avail Mem </pre> ===`htop` 명령어=== `htop`은 `top`보다 더 보기 쉬운 인터페이스를 제공하는 명령어이다. 설치 방법:<syntaxhighlight lang="bash"> sudo apt install htop # Debian/Ubuntu sudo yum install htop # RHEL/CentOS </syntaxhighlight>실행:<syntaxhighlight lang="bash"> htop </syntaxhighlight> ===`/proc/meminfo` 파일 확인=== 리눅스 시스템의 자세한 메모리 정보를 확인할 수 있는 가상 파일이다.<syntaxhighlight lang="bash"> cat /proc/meminfo </syntaxhighlight>출력 예시:<pre> MemTotal: 16324232 kB MemFree: 12150332 kB MemAvailable: 12550300 kB Buffers: 2147072 kB Cached: 3048032 kB SwapTotal: 8388604 kB SwapFree: 8388592 kB </pre> ==스왑(Swap) 관리== 스왑 공간은 RAM이 부족할 때 디스크를 임시 메모리로 사용하는 기능을 한다. ===스왑 크기 확인=== 현재 시스템의 스왑 크기를 확인하려면 다음 명령어를 사용한다.<syntaxhighlight lang="bash"> swapon --summary </syntaxhighlight>출력 예시:<pre> Filename Type Size Used Priority /dev/sda2 partition 4G 1G -2 </pre> ===스왑 활성화 및 비활성화=== 스왑을 비활성화하려면:<syntaxhighlight lang="bash"> sudo swapoff -a </syntaxhighlight>스왑을 다시 활성화하려면:<syntaxhighlight lang="bash"> sudo swapon -a </syntaxhighlight> ==메모리 최적화 및 관리== 리눅스에서는 불필요한 캐시를 정리하여 메모리를 최적화할 수 있다. *'''캐시 정리''' <syntaxhighlight lang="bash"> sudo sync; echo 3 | sudo tee /proc/sys/vm/drop_caches </syntaxhighlight> *'''스왑 해제''' <syntaxhighlight lang="bash"> sudo swapoff -a && sudo swapon -a </syntaxhighlight> ==같이 보기== *[[리눅스 커널]] *[[리눅스 프로세스 관리]] *[[리눅스 성능 모니터링]] *[[리눅스 파일 시스템]] ==참고 문헌== *[https://man7.org/linux/man-pages/man1/free.1.html free 명령어 매뉴얼] *[https://man7.org/linux/man-pages/man1/top.1.html top 명령어 매뉴얼] *[https://www.kernel.org/doc/html/latest/admin-guide/mm/index.html 리눅스 커널 메모리 관리 문서]
요약:
IT 위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는
IT 위키:저작권
문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다.
저작권이 있는 내용을 허가 없이 저장하지 마세요!
취소
편집 도움말
(새 창에서 열림)
둘러보기
둘러보기
대문
최근 바뀜
광고
위키 도구
위키 도구
특수 문서 목록
문서 도구
문서 도구
사용자 문서 도구
더 보기
여기를 가리키는 문서
가리키는 글의 최근 바뀜
문서 정보
문서 기록