Skip to content

Memory leak

컴퓨터 과학에서 메모리 누수(memory leak) 현상은 컴퓨터 프로그램이 필요하지 않은 메모리를 계속 점유하고 있는 현상이다. 할당된 메모리를 사용한 다음 반환하지 않는 것이 누적되면 메모리가 낭비된다. 즉, 더 이상 불필요한 메모리가 해제되지 않으면서 메모리 할당을 잘못 관리할 때 발생한다. 일부 서적에서 메모리 손실이라는 용어로 뜻을 옮기기도 하지만 leak라는 표현은 단순히 잃는 것 이상의 개념이므로 누수라는 표현이 더 정확하다.

중요한 부분

특히 다음 경우들에서, 메모리 누수는 더 심각하고, 중요하게 다루어져야 한다.

  • 메모리를 할당하며 오랫동안 실행되는 프로그램(서버의 백그라운드 작업이나 임베디드 장치)
  • 메모리 할당 주기가 짧은 경우(컴퓨터 그래픽의 프레임 단위 처리)
  • 공유 메모리와 같이 프로그램 종료 후에도 해제되지 않는 메모리를 할당하는 경우
  • 임베디드 시스템이나 휴대용 장치와 같이 사용 가능한 메모리가 제한적인 경우
  • 운영 체제나 메모리 관리자의 내부
  • 시스템의 신뢰성에 심각한 영향을 미치는 경우(장치 드라이버)
  • 프로그램을 종료할 때 운영체제에서 메모리 해제를 수행해 주지 않는 경우.

See also

Favorite site