많은 메모리를 사용하고 메모리를 자주 할당하고 해제하는 장기 실행 프로세스가 있습니다.
상주 메모리 크기(top 명령의 RES)는 15~20GB입니다. 그러나 가상 메모리 크기(VIRT on top 명령)가 10~20GB에서 100GB 이상으로 계속 증가합니다.
프로그램은 충돌하지 않지만 (1) VIRT 크기가 증가하는 이유를 알고 싶습니다. (2) 프로그램에 문제가 생길까요?
답변1
(1)VIRT 크기가 커지는 이유는 무엇입니까?
이는 메모리 조각화 및/또는 메모리 누수로 인해 발생할 수 있습니다. 즉, 일부 메모리 영역은 절대로 해제되지 않을 수 있습니다.
(2) 프로그램에 문제가 생길까요?
증가가 멈추지 않으면 결국 가상 메모리가 고갈되어 프로그램이 중단될 수 있습니다. 메모리를 과도하게 사용하지 않는 운영 체제를 사용하면 이러한 현상이 더 빨리 발생합니다.