win32에 truss 같은 프로그램 없나요?

eek의 이미지

음.. unix에서 프로그램만 하다가 win32프로그램 할려니깐
풀편한게 한두가지가 아니군요. 학생때는 왜몰랐는지 쩝..

어째던 구글에서 win용 strace하나 찾았는데 너무 많은 정보를 보여주네요. 쩝... 혹시 쓸만한 truss 같은 system call 볼 수 있는 win32용 알고 계신다면 알려주세요
미리 감사드립니다. :D

fromdj의 이미지

윈도우 내부의 System Call 단계 까지 보려면 윈도우용 커널디버거를 쓰시거나,
SoftIce 를 사용하셔야 할껍니다. 사실 윈도우는 많은 부분을 DLL 형식으로
API를 제공하고( 이게 시스템 콜이라고 보면 되겠네요) 그 DLL 이 내부의 숨겨진
SystemCall 을 호출하는 방식으로 동작하게 됩니다.

특정 DLL 의 내부 함수나, 어떠한 프로그램이 사용하는 시스템콜의 목록을 보시려면 VC6 이상을 깔면 제공되는 툴인 Dependency Walker 라는
프로그램을 이용하시면 됩니다.

^^ be cool ~
http://fromdj.pe.kr

eek의 이미지

음. 답변 감사합니다.
그런데 제가 알고 싶은건 프로그램이 정상종료하지 않고 계속 돌고있어서 어떤 상태인지 어떤 system call이 호출되고 있는지 확인하고 싶은데.. 그런 식으로 접근하는 거 아닌가보죠.. 쩝..
win프로그램 할려니 thread들이 정리가 않되서 종료않되고 계속 살아있는지 쩝..

Perl 만세~~~

cjh의 이미지

무료는 아니지만 이런것도 있죠.
http://www.sstinc.com/windows.html

--
익스펙토 페트로눔

eek의 이미지

음 그렇군요. 감사합니다.

여담이긴 하지만 core파일이 않남는데 debug하시는 win개발자분들 정말 존경스럽네요 ^^; 음. 서비스 돌리다가 죽는 경우에 어떻게 디버깅하시는지 쩝..

Perl 만세~~~

익명 사용자의 이미지

win32 에선 크래시덤프/미니덤프 라고하는 놈이 지원된다고 들었습니다.

자세히 모르는 내용을 적자니 부끄럽네요 :oops:
혹시 저쪽에 대해 하시는분 있으면 코멘트좀..

kcando의 이미지

userdump.exe(http://support.microsoft.com/default.aspx?scid=kb;en-us;241215)란 놈을 이용하시면 덤프(core) 파일을 얻을 수 있으며, 요 놈을 Visual Studio에서 불러들이면 디버깅이 가능합니다.

또한, 프로그램 내부에서 미니덤프를 할 수도 있습니다. 이에 관해서는 Debugging Applications란 책을 참고하시기 바랍니다.

아직 종료되지 않은 프로세스의 경우 Visual Studio에서 Tools/Debug Processes 메뉴를 선택하여 프로세스를 attach하면 바로 디버깅이 가능합니다.

원격 서버에서 있는 프로세스는 remote debugging을 이용하면 디버깅이 가능하고요. 역시나 위 책을 참고하시기 바랍니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.