- Mark Old 영역의 객체 중 사용하는 것과 사용하지 않는 객체 식별 - Sweep Heap의 앞 부분부터 사용하지 않는 것으로 식별된 객체 삭제 - Compact 삭제된 객체가 사용하고 있던 공간을 정리하여 각 객체가 heap의 앞부분부터 연속적으로 쌓이도록 정리