검색결과 리스트
Programming/DeviceDriver에 해당되는 글 1건
글
Visual Studio 2012 를 VMware와 연동하기 !(Kernel Debugging) [출처] Visual Studio 2012 를 VMware와 연동하기 !(Kernel Debugging)|작성자 naneunja
1.타겟 가상머신 설정하기(VMware 기준)
2.호스트 컴퓨터 설정하기
3.디버깅 시작하기
1.타겟 가상머신 설정하기(VMware 기준)
먼저 VMware에 하드웨어적인 설정을 해주어야 합니다.
바로 호스트와 가상머신 사이에 Serial Cable로 연결해주는 과정입니다.(가상으로!)
위 그림 처럼 Serial Port를 설정해주시고,
꼭 " I/O mode ---> Yield CPU on poll " 이 부분을 체크해주세요.
(게스트 운영체제가 폴링 모드에서 serial port를 사용하도록 허용함. 폴링(polling)이란 프로그램에 의한 입출력(PIO:Programmed I/O)로서, 중앙 처리가 입출력장치의 입출력 작업 발생여부를 지속적으로 감시하는 것으로서 입출력 제어가 이루어지는데, 그래서 폴링이라고 부른다고 한다.... 아무튼.. 디버깅을 위해서는 이부분을 체크해야합니다.)
어떤 미디어를 통해 시리얼 포트를 접근할 것인가? 라는 질문에는 '이름이 지정된, 파이프(Output to named pipe)'를 선택합니다.
다음은 호스트컴퓨터 설정을 해야 합니다. 위에서도 말씀드렸듣이, WinDbg와 Visual Studio가 통합 되었기 때문에, Visual Stduio에서 설정을 해야 합니다.
DeviceDriver 프로젝트에서 " 속성 > 디버깅 > Configure " 에서 디버깅을 위한 컴퓨터 속성을 선택합니다.
Computer name : 임의로 컴퓨터 이름을 주시면되구요.
각 옵션에 대해서는 다음과 같습니다.
Provision computer and automatically configure debuggers(컴퓨터 프로비전 및 디버거 자동 구성) : 대상 컴퓨터에서 Windows 8을 실행 중이고 대상 컴퓨터에 네트워크 디버깅을 지원하는 네트워크 어댑터가 있는 경우 ( ※ 이 옵션은 네트워크 디버깅을 위한 포트 번호를 자동으로 만들며 개발자가 포트 번호를 변경할 수 없습니다. 회사에서 네트워크 디버깅에 사용할 수 있는 포트 번호를 제한하는 경우 두 번째 옵션을 선택합니다)
Provision computer and choose debugger settings(컴퓨터 프로비전 및 디버거 설정 선택) : 대상 컴퓨터에서 Windows 8 미만인 Windows 버전을 실행 중인 경우 또는 다른 유형의 디버깅 연결 중 하나(USB, 1394, 직렬)를 사용하려는 경우 이 옵션을 사용한다. 이 옵션을 사용하면 디버깅 연결 형식을 선택할 수 있으며, 네트워크 디버깅 연결을 선택할 경우 포트번호와 암호화 키를 선택할 수 있다.
Manually configure debuggers and do not provision(디버거 수동 구성 및 프로비전 안 함) : 디버깅을 위해 호스트 컴퓨터에 Visual Studio를 구성하려고 핮니만 대상 컴퓨터를 디버깅하지 않으려는 경우 선택한다. 이 옵션은 대상 컴퓨터에 대한 디버깅을 구성하지 않아. 대상 컴퓨터에서 직접 bcdedit(여기의 경우에는 mscofig를 통해 설정)를 사용하여 대상 컴퓨터에서 디버깅을 구성해야한다.
가상머신 연결에는 세번째에 있는 "Manually configure debuggers and do not provision"을 선택합니다,
이다음으로는 연결설정을 해줘야 합니다.
VMware 에서 저희는 Serial 통신으로 설정했기 때문에,
Connection Type : Serial 을 선택하고.
msconfig에서 설정했던 'Baud Rate, Target Port'를 지정합니다.
그리고 'Pipe, Reconnect' 체크하고,
Pipe name 에는 VMware에서 serial설정을 했던 이름을 그대로 써줍니다.(스크롤을 올려보면 나옵니다)
2.호스트 컴퓨터 설정하기
자 이제 모든 설정이 완료 되었습니다.!!
이제 디버깅을 시작하기만 하면 됩니다.^
메뉴의 "도구 > 프로세스에 연결" 을 선택합니다.
" Windows Kernel Mode Debugger "를 선택하시고, 방금 연결설정을 했다면 "Computer"라고 이름이 있을 것입니다. 선택하시고,~
연결!! 을 누르면 됩니다.
짜잔~~ 하하..
이렇게 이쁘게 WinDbg가 Visual Studio 안으로 쏘~~옥 들어왔습니다..
아직 써보질 않아서, 훨씬 편한지 어쩐지는 모르겠지만.. 호호. 신기하군요..
저처럼. Visual Studio 2012 와 가상머신을 연동해서 드라이버를 위한 Kernel Debugging 을 하려고 하시는데,, 통 인터넷에 자료가 없어서. 삽질을 하고 계실 또다른 초보 개발자분들위 위해.. 이글을 받칩니다.
2012 를 VMware와 연동하기 !(Kernel Debugging)|작성자 naneunja
원문 URL : http://sseoty.blog.me/90174028380
이글은 제가 존경하고 또 너무 좋아하는 형이 쓴글을 퍼온 것입니다. 예전에 Device Driver 프로젝트를 했었을 때 저도 VisualStudio2012로 편하게 DeviceDriver를 빌드하고 디버깅 할 수 있었던거 같네요. 이환경데로 하면 F7키 한방에 드라이버 sys파일이 생성이되고 디버깅도 편하게 비쥬얼스튜디오 단축기로 중단점 걸어가면서 할 수 있습니다.
감사하는 마음을 가집시다^^