작성완료

자바스크립트 가비지 컬렉터
JavaScript's garbage collector automatically manages memory by reclaiming unused blocks.
가비지 컬렉터란? (Garbage Collector)
- 가비지 컬렉터는 메모리 관리 기법 중에 하나이로 'GC'라고 한다.
- 시스템에서 더이상 사용하지 않는 메모리 블록을 찾아 자동으로 다시 사용 가능한 자원으로 회수하는 시스템 (=가비지 컬렉션 Garbage Collection)을 수행하는 부분
JavaScript의 언어는 GC를 기본적으로 제공한다.
이 가비지 컬렉션 기능을 채택한 언어의 경우, 가비지 컬렉션에서 제공하는 할당과 해제를 이용하여 자동으로 프로그램이 실행될때 생기는 useless한 메모리들을 알아서 수집하고 관리해준다.
가비지 컬렉터의 원리
- 메모리 할당프로그램을 실행하면, 메모리를 관리하는 OS에 프로그램의 실행에 필요한 메모리를 요청하게 된다.이때, 메모리를 어디에 저장할지 주소를 할당하는데 이 주소를 'Offset주소'라고 한다.
- 사용중인 메모리 인식
- 사용하지 않는 메모리 (=가비지) 인식프로그램이 돌아가면 필연적으로 가비지가 발생하게 된다.기존에 가리키고 있던 메모리가 새롭게 선언되거나 형태가 변환되어 다른 곳을 가리키게 되면 Offset주소를 잃어버려 정리되지 않은 메모리가 생기기 때문이다.
- 가비지 메모리 해제'정리되지 않은 메모리'를 다른 용도로 사용할 수 있도록 메모리 해제를 시키는 것이 가비지 컬렉터의 목적이다.