상당히 표준 스택 머신을위한 컴파일러를 작성하고 있습니다. 이제 가비지 수집기를 추가하려고합니다. 각 활성화 레코드의 gc 루트가 어떤 변수인지 알 수있는 일종의 '스택 맵'을 생성 할 수 있음을 알 수 있습니다. 그러나 실행 중에 스택에 푸시 된 중간 값을 처리하는 방법을 알지 못합니다. 필자가 컴파일하는 언어는 파스칼과 유사하므로 필요 없으며 다른 데이
GC 뿌리에 대해 질문이 있습니다. GC 뿌리는 "라이브 스레드"라는 것을 읽었습니다. 그게 무슨 뜻 이죠? 저는 항상 각 스레드마다 자체 스택이 있고 스택의 로컬 변수가 스레드에 대한 GC 루트이고 지금은 혼란 스럽다는 인상을 받았습니다. 프레임 스택이나 네이티브 스택에없는 다른 유형의 객체 참조는 스레드 표현에 있습니까? 기타 젊은 세대 컬렉션은 GC