프로그래밍공부(Programming Study)/운영체제(OS)

macOS에서 `free` 명령어를 대신하는 방법: 메모리 사용량 확인하기

Chann._.y 2024. 9. 19.
728x90

1. macOS에서 free 명령어란?

free 명령어는 리눅스에서 시스템의 메모리 사용량을 확인하는 데 사용되는 명령어입니다. 이 명령어를 통해 사용 중인 메모리, 캐시된 메모리, 스왑 메모리 등의 정보를 쉽게 확인할 수 있습니다. 하지만 macOS에서는 리눅스에서 제공하는 free 명령어가 기본적으로 제공되지 않습니다.

대신, macOS에서는 메모리 사용량을 확인하기 위해 몇 가지 다른 명령어 및 도구들을 사용할 수 있습니다.


2. macOS에서 free 명령어 대체 방법

macOS에서 메모리 사용량을 확인하는 데 자주 사용되는 방법은 vm_stattop 명령어입니다. 이 두 명령어는 터미널을 통해 메모리 관련 정보를 제공하며, 각각 다른 방식으로 시스템 메모리 상태를 보여줍니다.


3. vm_stat 명령어 사용법

vm_stat 명령어는 가상 메모리 정보를 제공하는데, 이를 통해 macOS 시스템의 메모리 상태를 확인할 수 있습니다. 기본적으로 페이지 단위로 메모리 사용량을 보여주기 때문에 이를 바이트 단위로 변환해야 합니다.

사용 방법:

  1. 터미널을 열고 다음 명령어를 입력합니다:
  2. vm_stat
  3. 명령어 실행 후 나오는 출력 예시:위 출력에서 메모리 값은 페이지 단위로 표시되며, 이를 바이트로 변환하기 위해서는 페이지 수에 4096을 곱해야 합니다.
  4. Mach Virtual Memory Statistics: (page size of 4096 bytes) Pages free: 47260. Pages active: 1286959. Pages inactive: 688659. Pages speculative: 48408. Pages throttled: 0. Pages wired down: 449352. Pages purgeable: 48960.

바이트 변환 스크립트:

아래는 페이지 단위를 바이트 단위로 변환하는 파이썬 스크립트 예시입니다.

def convert_pages_to_bytes(pages):
    return pages * 4096  # 1 페이지 = 4096 바이트

# 예시: Pages free가 47260일 경우
free_memory = convert_pages_to_bytes(47260)
print(f"Free Memory: {free_memory / (1024 * 1024)} MB")

이 코드를 실행하면 자유 메모리가 MB 단위로 표시됩니다.


4. top 명령어를 통한 실시간 메모리 확인

top 명령어는 실시간으로 CPU, 메모리, 프로세스 등의 시스템 상태를 모니터링할 수 있는 명령어입니다. macOS에서도 사용할 수 있으며, 실시간으로 메모리 사용량을 확인할 수 있습니다.

사용 방법:

  1. 터미널에서 다음 명령어를 입력합니다:
  2. top
  3. 실행하면 상단에 메모리 사용량이 표시됩니다:
    • wired: 시스템에서 메모리에서 해제할 수 없는 부분.
    • unused: 사용 가능한 메모리.
  4. PhysMem: 8192M used (2048M wired), 2048M unused.

이 명령어는 지속적으로 실시간 정보를 업데이트하므로 메모리 사용 변화를 실시간으로 모니터링하는 데 유용합니다.


5. 그래픽 인터페이스로 메모리 확인하기: 액티비티 모니터

macOS에서 그래픽 인터페이스로 메모리 사용량을 확인하고 싶다면 액티비티 모니터(Activity Monitor)를 사용하는 것이 가장 쉬운 방법입니다.

사용 방법:

  1. 애플 메뉴에서 액티비티 모니터를 검색해 실행합니다.
  2. 상단 탭에서 "메모리"를 선택합니다.
  3. 이곳에서 사용 중인 메모리, 캐시된 파일, 스왑 메모리 등의 정보를 한눈에 확인할 수 있습니다.

액티비티 모니터는 직관적이며, 실시간으로 변동하는 메모리 상태를 시각적으로 확인할 수 있어 시스템의 리소스 사용량을 빠르게 파악하는 데 유용합니다.


macOS에서는 free 명령어 대신 vm_stat, top 명령어 또는 액티비티 모니터를 사용하여 시스템 메모리 상태를 확인할 수 있습니다. 이 명령어들을 통해 시스템의 메모리 사용량을 쉽게 모니터링하고 관리할 수 있습니다.

728x90

댓글