제작한 프로그램에 버그가 있어서 메모리 누수현상이 생겼을 시, 해당 프로그램을 종료하면 메모리의 완전한 반환이 보장되나요? 강제종료를 시켜도 메모리가 반환되지 않는 경우가 있습니까?
요새 메모리 부족에 시달리다가 문득 의문이 생겨서 질문드립니다. (그걸 안다고 달라지는건 없지만;)
#!/bin/bash while [ "0" ] do ./server > log.txt done
대략 위와 같은 코드가 실행되는데 top을 보니 메모리를 6메가 이상 드시고 있더군요. 물론 리얼메모리는 2메가 정도 먹구요.
왜이리 많이 먹죠?
안녕하세요
궁금한게 있어서 질문드립니다.
보통 우리가 메모리를 실행중에
동적으로 할당하면
int *p = (int *)malloc(sizeof(int));
나중에 사용이 끝나고 나면
free(p);
해서 해제를 하잖아요
제가 여러 사이트 돌아다니면서 찾아본바로는 운영체제 차원에서 프로세스가 끝나면
자동으로 동적으로 할당된 메모리를 다 해제시켜 주지만