MS PSS( Product Support Services ) 팀에서 Escalation Engineer일하고 계시는 TESS 님의 Blog 입니다.
다양한 CLR ( .net ) 관련 Debugging 정보를 얻을 수 있습니다.
회사내 정책상 .net을 사용하고 있지 않아 관련 dump나 exception을 정보를 접하기 힘든 저로서는 굉장히 많은 도움을 받고 있지요.
- 디버깅의 마술사 !! 제라툴의 블로그
MS PSS( Product Support Services ) 팀에서 Escalation Engineer일하고 계시는 TESS 님의 Blog 입니다.
다양한 CLR ( .net ) 관련 Debugging 정보를 얻을 수 있습니다.
회사내 정책상 .net을 사용하고 있지 않아 관련 dump나 exception을 정보를 접하기 힘든 저로서는 굉장히 많은 도움을 받고 있지요.
CLR Base의 프로그램을 실행하면 2개의 기본 CRL Idle Thread가 함께 생성 됩니다.
Idle CLR Debugger Thread
# ChildEBP RetAddr Args to Child
00 00bafe38 7c93e9ab 7c8094e2 00000003 00bafe64 ntdll!KiFastSystemCallRet (FPO: [0,0,0])
01 00bafe3c 7c8094e2 00000003 00bafe64 00000001 ntdll!ZwWaitForMultipleObjects+0xc (FPO: [5,0,0])
02 00bafed8 7c80a075 00000003 00baff1c 00000000 KERNEL32!WaitForMultipleObjectsEx+0×12c (FPO: [Non-Fpo])
03 00bafef4 79f4e8d8 00000003 00baff1c 00000000 KERNEL32!WaitForMultipleObjects+0×18 (FPO: [Non-Fpo])
04 00baff54 79f4e831 2948c117 00000000 79f4e1d0 mscorwks!DebuggerRCThread::MainLoop+0xe9 (FPO: [Non-Fpo])
05 00baff84 79f4e765 2948c127 79f95dba 79f4e1d0 mscorwks!DebuggerRCThread::ThreadProc+0xe5 (FPO: [Non-Fpo])
06 00baffb4 7c80b683 00000000 79f95dba 79f4e1d0 mscorwks!DebuggerRCThread::ThreadProcStatic+0×9c (FPO: [Non-Fpo])
07 00baffec 00000000 79f4e71f 00000000 00000000 KERNEL32!BaseThreadStart+0×37 (FPO: [Non-Fpo])
Idle GC Thread
# ChildEBP RetAddr Args to Child
00 00d7fcd0 7c93e9ab 7c8094e2 00000002 00d7fcfc ntdll!KiFastSystemCallRet (FPO: [0,0,0])
01 00d7fcd4 7c8094e2 00000002 00d7fcfc 00000001 ntdll!ZwWaitForMultipleObjects+0xc (FPO: [5,0,0])
02 00d7fd70 7c80a075 00000002 7a3b84e0 00000000 KERNEL32!WaitForMultipleObjectsEx+0×12c (FPO: [Non-Fpo])
03 00d7fd8c 79ef224b 00000002 7a3b84e0 00000000 KERNEL32!WaitForMultipleObjects+0×18 (FPO: [Non-Fpo])
04 00d7fdac 79fb997b 00172338 00d7feb0 00170d28 mscorwks!WKS::WaitForFinalizerEvent+0×77 (FPO: [Non-Fpo])
05 00d7fdc0 79ef3207 00d7feb0 00000000 00000000 mscorwks!WKS::GCHeap::FinalizerThreadWorker+0×79 (FPO: [Non-Fpo])
06 00d7fdd4 79ef31a3 00d7feb0 00d7fe5c 79f91478 mscorwks!Thread::DoADCallBack+0×32a (FPO: [Non-Fpo])
07 00d7fe68 79ef30c3 00d7feb0 2925c037 00000000 mscorwks!Thread::ShouldChangeAbortToUnload+0xe3 (FPO: [Non-Fpo])
08 00d7fea4 79fb9643 00d7feb0 00000000 0016bc00 mscorwks!Thread::ShouldChangeAbortToUnload+0×30a (FPO: [Non-Fpo])
09 00d7fecc 79fb960d 79fb990e 00000008 00d7ff14 mscorwks!ManagedThreadBase_NoADTransition+0×32 (FPO: [Non-Fpo])
0a 00d7fedc 79fba09b 79fb990e 2925c187 00000000 mscorwks!ManagedThreadBase::FinalizerBase+0xd (FPO: [Non-Fpo])
0b 00d7ff14 79f95a2e 00000000 80662652 8799bc90 mscorwks!WKS::GCHeap::FinalizerThreadStart+0xbb (FPO: [Non-Fpo])
0c 00d7ffb4 7c80b683 00170d28 7c93ee18 001602c0 mscorwks!Thread::intermediateThreadProc+0×49 (FPO: [Non-Fpo])
0d 00d7ffec 00000000 79f959e8 00170d28 00000000 KERNEL32!BaseThreadStart+0×37 (FPO: [Non-Fpo])
Debugging 시에 이러한 스택이 나타난다면 Skip 해도 좋은 부분이지요 .
최근 답글