본문 바로가기

gc

(3)
CLR 4.5 - Server Background GC http://channel9.msdn.com/posts/Maoni-Stephens-CLR-45-Server-Background-GC 아 힘드네요 못알아 듣겠네요 누가좀 번역좀 해줘요
Windbg툴로 관리힙 메모리 디버깅하기 1 http://blogs.msdn.com/b/alejacma/archive/2009/08/13/managed-debugging-with-windbg-managed-heap-part-1.aspx 이 내용은 위의 기사를 토대로 만들어 졌습니다. 다소 상이한 부분이 있을수 있습니다. 이미지는 그대로 썼습니다. .NET 는 NT Heap을 사용하지 않고 대신에 고유의 managed heap을 씁니다. 모든 Object들은 managed heap안에서 GC에 의해 0세대 1세대 2세대로 관리됩니다. 모든 object는 처음에 0세대로 시작을 합니다. 단 85,000bytes 이상인 object들은 Large Object Heap(LOH)에 관리됩니다. 85,000bytes라는 사이즈는 실제적인 object사이즈 즉..
GC(Garbage Collection) 내용이 여러분이 알고 있는 내용과 상이한 부분이 있습니다.(제가 틀려도 넘 나무라지 마세요) GC는 닷넷에서 야심차게 들고나온(Java도 있지만)일종의 Memory 관리자라고 할수 있을것같습니다. 닷넷의 메모리는 managed Heap에 데이터가 축적되는데 어느정도 메모리가 차면 GC가 깨어나서 쓰레기들을 청소한다고 보면 됩니다. GC는 세대라는걸로 Heap 메모리를 구분하는데 0세대 1세대 2세대 이렇게 3개의 세대로 구분합니다. 이 힙메모리는 sement라고곳에 생기는데 처음 메모리가 생성될때 2개의 세그먼트를 만듭니다.(각 segment는 16메가입니다.) 하나는 작은 객체의 메모리를 위해(small of heap) 다른 하나는 큰 객체의 메모리를위해(Large of Heap) 어떤쓰레딩이 실행 될..