다양한 Hang case 의 범위 설정 및 분석

"이 문서는 http://blogs.msdn.com/ntdebugging blog 의 번역이며 원래의 자료가 통보 없이 변경될 수 있습니다. 이 자료는 법률적 보증이 없으며 의견을 주시기 위해 원래의 blog 를 방문하실 수 있습니다. (http://blogs.msdn.com/ntdebugging/archive/2007/01/09/scoping-and-troubleshooting-hangs-of-various-causes.aspx)"   다양한 Hang case 의 범위 설정 및 분석 다시 만나게 되었습니다. 앞으로는 Hang troubleshooting 에 대해서 이야기 할 것이며 이번 글에서는 Hang 에 대한 이해 그리고…

0

Windbg 를 이용한 Handle leak 찾기

Windbg 를 사용할 경우 !handle 명령을 사용하여 현재 Process 내의 모든 Handle 정보를 확인할 수 있습니다. 이는 Process explorer 를 사용하는 방법과 동일하지만 Process Explorer 에서는  어떤 Handle 이 생성되어 있는지는 확인할 수 있으나 어떤 함수를 통해서 Handle 이 생성되었는지는 알 수 없습니다. 이때 gflags.exe 에서 Object 관련 값을 설정하면 좀더 많은 정보를 확인할 수…

1

Mark Russinovich – Advanced Windows Trobleshooting with Sysinternals Process Monitor

http://www.microsoft.com/emea/spotlight/sessionh.aspx?videoid=346   Process Monitor 와 Process Explorer 에 대한 이야기 입니다. (Process Monitor 는 Filemon, Regmon 의 기능을 합친 것에 Image load, Process/Thread Create/Exit 를 모니터링 하고 최근에는 Network Filter 기능 또한 추가 되었습니다.) Process Monitor 는 Device Driver 를 가지고 있어서 kernel 에서 일어나는 Action 을 모니터링 할 수 있습니다. (한 번 실행시켜 보시면…

0

How to Use the Citrix Symbol Server to Obtain Debug Symbols

http://support.citrix.com/article/CTX118622 Citrix 에서도 Microsoft 에서 하는 것과 같이 Public Symbol Server 를 운영하기 시작했습니다. Symbol 이 없이 Debugging 을 진행하는 것은 매우 힘든 일 이라는 것을 많은 분들이 알고 계실 것으로 생각 합니다. 보안에 위협만 없다면 모든 Software vendor 가 Symbol 을 공개하는 것이 문제를 해결하는데 더 유용할 것 같습니다.  (그렇지만 현실은 그렇지 못하죠)  …

0

David Solomon – Understanding and Trobleshooting Memory Problems

http://www.microsoft.com/emea/spotlight/sessionh.aspx?videoid=64&PUID=00030000804624B5   Soft page fault 는 이미 메모리에 존재하는 것을 다루는 것입니다. hard page fault 는 Memory mapped file 을 사용할 때 사용됩니다. Hard page fault가 많이 발생한다고 Physical Memory 를 늘려도 성능이 늘어나지는 않습니다. APP 가 실행될 때 작은 code 만이 memory 에 있고 실제 사용될 때 Disk 에서 Memory 로 load 됩니다. prefatch…

0

David Solomon – Windows internals: Process and thread trobleshooting – Part 2

이전 blog 에 이어서 David Solomon 의 세미나 내용을 정리 합니다. http://www.microsoft.com/emea/spotlight/sessionh.aspx?videoid=56&PUID=00030000804624B5   대부분의 내용이 Process Explorer 에 대한 설명 입니다. thread 사용률은 10ms 당 sampling 으로 수집된 결과 입니다. processor 당 Idiel thread 가 있습니다. thread 에는 context switch 정보가 있는데 이것은 context 가 된 횟수만을 보여주고 얼마나 오래 실행 되었는지는 보여주지 않습니다. Process…

0

David Solomon – Windows internals: Process and thread trobleshooting – Part 1

David Solomon 이 외부 강의를 한 내용을 정리 해 보았습니다. 작업관리자에서 응답없음이나 실행 중 으로 나타나는 것의 원리를 알게된 것이 가장 좋았습니다. http://www.microsoft.com/emea/spotlight/sessionh.aspx?videoid=55&PUID=00030000804624B5   만약 Interrupt 를 많이 발생시키는 Device Driver 가 있으면 Idle 에 CPU Time 이 증가되어 있을 것입니다. 1. Process and thread trobleshooting 작업관리자의 Application 안의 작업 안에 보여주는 것은 자신의 session…

0

Side-by-side configuration is incorrect.

VC 를 이용한 개발을 너무 오랜기간 쉰 것 같습니다. Vista 에서 Test 용으로 만든 Application 을 실행하려고 하니 다음과 같은 에러가 발생하고 있었습니다. Web 을 찾아 보니 별다른 이야기가 없어 일단 Application event log 를 확인해 보니 VC90.CRT 가 없다는 이야기 같습니다. 예전의 기억을 더듬어서 Project 의 속성을 보니 MFC 를 설정하는 부분이 Shared 로…

0

USB2.0 Debug 설정 방법

USB 2.0 을 사용한 Kernel debug 설정 방법을 만들어 봤습니다.   USB2.0 Debug 설정하는 방법   환경 Target 이 Windows Vista 이상이어야 합니다. Host 는 Windows 2000 이상이면 됩니다.   설치 USB2.0 Debug 장치를 PC 에 연결하면 Driver 를 찾는데 Windbg 설치 폴더하위에 usb 폴더를 지정해 주면 설치 됩니다.(C:\Program Files\Debugging Tools for Windows\usb) 실제 드라이버명은…

1