idbx 도구를 사용하여 명령행에서 프로그램을 디버깅하는 데 관한
지시사항입니다.
이 태스크 정보
명령 프롬프트에서 "idbx" 명령을 호출하여 idbx 도구를 실행할 수
있습니다. 그러면 UI 워크벤치를 사용하지 않고 프로그램을 디버깅할 수
있습니다.
- 명령 목록
- assign <variable> = <expression>
- 변수에 표현식의 값을 지정합니다.
- clear <line-number>
- 지정된 행 번호에서 중단점과 추적을 모두 제거합니다.
참고: delete도
참조하십시오.
- cont <signal-number>
- cont <signal-name>
- 중단된 지점에서 실행을 계속합니다. 신호가 지정되면
신호를 수신한 것과 동일하게 프로세스가 계속됩니다. 그렇지 않으면
프로세스가 중지되지 않은 것처럼 계속됩니다.
- delete <status-number>
- delete all
- delete tskip [ for t<thread number> ]
- 지정된 개수의 추적 또는 중지나 지정 스레드의 남은
tskip 개수가 제거됩니다. 추적, 중지 및 남은 스레드 tskip 개수와
연관된 숫자는 "status" 명령으로 인쇄할 수 있습니다.
- disable <status-number>
- disable
- 지정된 개수의 추적 또는 중지를 사용 안함으로 설정합니다.
추적 및 중지와 연관된 개수는 "status" 명령으로 인쇄할 수 있습니다.
- down
- down <count>
- up
- up <count>
- 이름 분석에 사용하는 현재 함수를 스택 <count> 레벨의 위로
또는 아래로 이동하십시오. 기본 <count>는 1입니다.
- enable <status-number>
- enable all
- 지정된 개수의 추적 또는 중지를 사용하도록 설정합니다.
추적 및 중지와 연관된 개수는 "status" 명령으로 인쇄할 수 있습니다.
- goto <line-number>
- goto "<filename>" : <line-number>
- gotoi <address>
- 프로그램 카운터를 <address> 또는 <line-number> 근처의 주소로 변경하십시오.
현재 함수의 밖에 goto가 필요한 경우 변수 unsafegoto를 설정해야
합니다.
- help
- help [> <filename> ]
- help <command> [> <filename> ]
- help <topic> [> <filename> ]
- 명령 또는 주제에 대한 정보를 인쇄합니다. (주제를 설명하는 문자열은
축약되어 있을 수 있습니다.) 긴 메시지는 "pg"별명을 사용하여
페이지를 지정할 수 있습니다. 예: "pg" (help set_variables).
참고: "pg"는
현재 지원되지 않습니다.
참고: 파일로의 경로 재지정은 현재
지원되지 않습니다.
- list [ <source-line-number> [, <source-line-number> ]]
- list <procedure>
- 첫 번째 행 번호에서 두 번째 포함된 행까지 현재 소스 파일의 행을
나열합니다. 행을 지정하지 않으면 다음 10개 행이 표시됩니다.
프로시저 또는 함수 이름이 지정되는 경우,
n-k에서 n+k까지의 행이 표시되며 여기서 n은 프로시저 또는 함수의
첫 번째 명령문이며 k는 listwindow에서 정의합니다.
- listi
- listi [ <address> [ , <address> ]]
- listi at <source-line-number>
- listi <procedure>
- 현재 프로그램 카운터 위치 또는 지정 주소, 행 번호 또는 프로시저에서 지시사항을
나열합니다. 인쇄되는 지시사항의 개수는 dbx 내부 변수 listwindow가
제어합니다.
- move <source-line-number>
- list 명령으로 표시할 다음 행을 source_line_number로 변경합니다.
- next
- next <count>
- 다음 행을 실행합니다. count를 입력하면 다음 count 행을 실행합니다.
이 명령과 "step" 명령과의 차이는 행에 프로시저 또는 함수에 대한
호출이 포함된 경우 "step" 명령은 해당 블록 시작에서 중지하지만
"next" 명령은 중지하지 않는다는 점입니다.
- nexti
- nexti <count>
- "next"에서와 같은 단일 단계이지만 소스 행이 아닌 단일 명령어를
수행합니다. count를 입력하면 nexti count 명령어를 실행합니다.
- print <expression> [ , <expression> ]
- print <procedure (<parameters>)
- 지정된 표현식의 값을 인쇄합니다. 일반 레지스터 및 부동 소수점 레지스터의
값 또한 이 명령을 사용하여 인쇄할 수 있습니다.
- "print <procedure> (<parameters>)"는 프로시저와 연관된
오브젝트 코드를 수행하고 리턴값을 인쇄합니다.
- 이름은 우선 현재 함수의 정적 범위를 사용하여 분석되며
정적 범위 내에 정의된 이름이 없는 경우 동적 범위를 사용하여
분석됩니다. 정적 및 동적 검색으로 검색 결과가 나타나지 않는 경우
임의의 기호가 선택되어 메시지 "[using <qualified-name>]"이
인쇄됩니다. 이름 분석 프로시저는 블록 이름을 사용한 ID(예: "module.variable")로
대체될 수 있습니다. C의 경우 소스 파일을 ".c"가 없는
파일 이름으로 이름이 지정된 모듈로 취급합니다.
- prompt
- prompt "string"
- dbx 프롬프트를 표시하거나 프롬프트를 "string"으로 변경합니다.
- quit
- dbx를 종료합니다(프로그램이 종료됨).
- registers
- 모든 일반 레지스터, 시스템 제어 레지스터, 부동 소수점 레지스터 및
현재 명령어 레지스터의 컨텐츠를 인쇄합니다.
부동 소수점 레지스터를 표시하려면 "unset noflregs" dbx 하위 명령을
사용하십시오.
- 레지스터는 다음과 같은 사전 정의된 레지스터 이름을 사용하여
개별적으로 표시하거나 지정할 수 있습니다.
일반 레지스터는 r0 - $r31, 부동 소수점 레지스터는 fr0 - $fr31,
스택 포인터는 sp, 프로그램 카운터는 iar, 조건 레지스터는 cr,
링크 레지스터는 link입니다.
- run [<arguments>] [< <filename> ] [> <filename> ]
- [>> <filename> ] [>! <filename> ]
- [2> <filename> ] [2>> <filename> ]
- [>& <filename> ] ]>>& <filename> ]
- rerun [<arguments>] [< <filename> ] [> <filename>
]
- [>> <filename> ] [>! <filename> ]
- [2> <filename> ] [2>> <filename> ]
- [>& <filename> ] ]>>& <filename> ]
- 오브젝트 파일의 실행을 시작하거나 인수를 명령행 인수로
전달합니다. < or >는 쉘과 유사한 방식으로 입력 또는 출력의
경로를 재지정하는 데 사용할 수 있습니다. 인수 없이 "rerun"을
사용하면 이전 인수 목록이 프로그램에 전달됩니다. 그렇지 않으면
동일하게 실행됩니다.
참고: run 및 rerun 명령에 대한
인수는 현재 지원되지 않습니다.
- return
- return <procedure>
- <procedure>에 대한 리턴이 실행될 때까지 계속합니다. 지정된 것이 없는
경우에는 현재 프로시저가 리턴할 때까지 계속합니다.
- set <name>
- set <name> = <expression>
- set 명령은 dbx 변수의 값을 정의합니다. 이러한 변수의 이름은
디버깅 중인 프로그램에 있는 이름과 충돌할 수 없으며 다른 명령 안의
해당 표현식으로 확장됩니다. set 변수 정의를 제거하려면 "unset"을 사용하십시오.
사전 정의된 set 변수의 정의를 보려면 "help set_variables"도 참조하십시오.
- skip [<num>]
- 재개하고 다음 중단점을 무시합니다. "num"을 입력한 경우, 다음 "num"
중단점을 무시합니다.
- status [> <filename> ]
- status more [> <filename> ]
- 현재 활성 상태인 trace 및 stop 명령을 연관된 dbx 하위 명령 및
나머지 스레드 tskip 개수와 함께 표시합니다.
- step
- step <count>
- 한 개의 행을 실행합니다. count를 입력하면 다음 count 행을 실행합니다.
이 명령과 "next" 명령의 차이는 행에 프로시저 또는 함수에 대한
호출이 포함된 경우 "step" 명령은 해당 프로시저 또는 함수를 입력하지만
"next" 명령은 그렇지 않은 것입니다.
참고: "set_variables stepignore" 또한
참조하십시오.
- stepi
- stepi <count>
- 한 개의 명령어를 실행합니다. count를 입력하면 다음 count 명령어를 실행합니다.
- !stop if <condition>
- stop at <line-number> ![if <condition>]
- stop in <procedure> ![if <condition>]
- !stop <variable> [if <condition>]
- !stop <variable> at <line-number> [if <condition>]
- !stop <variable> in <procedure> [if <condition>]
- !stop on load ["<module>"] [if <condition>]
- !stop on load ["<module>(<member>)"] [if <condition>]
- 지정된 행에 도달하거나 프로시저 또는 함수를 입력하거나 변수를 변경하거나
모듈을 로드하거나 로드 해제하거나 조건이 true인 경우 실행을
중지합니다.
참고: ! 은 현재 지원되지 않습니다.
- unset <name>
- <name>의 정의를 제거합니다.
- whatis <name>
- 지정된 이름의 선언을 인쇄합니다.
- where [startframe endframe] [> <filename>]
- 시작 프레임에서 종료 프레임까지의 프레임 번호와 연관된
활성 프로시저 및 함수의 스택 추적을 인쇄합니다. 상세
스택 추적에 대해 stack_details를 설정합니다.
- visual <hostname> <port-number>
- IDBX 디버거를 지정된 UI 디먼의 호스트 및 포트에 있는 UI 워크벤치에
추가합니다.