⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dbx

📁 <B>Digital的Unix操作系统VAX 4.2源码</B>
💻
📖 第 1 页 / 共 2 页
字号:
.\"#@(#)dbx	4.1	Ultrix	7/17/90.ds dB dbx.ds DB Dbx.TH DBX 1 "17 May 1984".UC 4.SH NAMEdbx \- debugger.SH SYNOPSIS.B dbx[.B \-r] [.B \-i] [.B \-I.I dir] [.I objfile[.I coredump]].SH DESCRIPTION\fI\*(DB\fP is a tool for source level debugging and execution ofprograms under UNIX.The \fIobjfile\fP is an object file produced by a compilerwith the appropriate flag (usually ``\-g'')specified to produce symbol information in the object file.Currently, \fIcc\fP(1), \fIf77\fP(1), and the DEC WesternResearch Laboratory Modula-2 compiler, \fImod\fP(l),produce the appropriate source information.The machine level facilities of \fI\*(dB\fPcan be used on any program..PPThe object file contains a symbol table that includes the name of theall the source files translated by the compiler to create it.These files are available for perusal while using the debugger..PPIf a file named ``core'' exists in the current directoryor a \fIcoredump\fP file is specified, \fI\*(dB\fP can be usedto examine the state of the program when it faulted..PPIf the file ``.\*(dBinit'' exists in the current directory then thedebugger commands in it are executed.\fI\*(DB\fP also checks for a ``.\*(dBinit'' in the user's home directoryif there isn't one in the current directory..PPThe command line options and their meanings are:.nr In 7.in +\n(Inn.ta \n(Inn.br.nr wg 1v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fB\-r\fP	\cExecute \fIobjfile\fP immediately.If it terminates successfully \fI\*(dB\fP exits.Otherwise the reason for termination will be reportedand the user offered the option of entering the debuggeror letting the program fault.\fI\*(DB\fP will read from ``/dev/tty'' when \fB\-r\fP is specifiedand standard input is not a terminal..br.nr wg 1v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fB\-i\fP	\cForce \fI\*(dB\fP to act as though standard input is a terminal..br.nr wg 1v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.ti -\n(Inn\&\fB\-I\fP \fIdir\fP	\cAdd \fIdir\fP to the list of directoriesthat are searched when looking for a source file.Normally \fI\*(dB\fP looks for source files in the current directoryand in the directory where \fIobjfile\fP is located.The directory search path can also be set with the \fBuse\fP command..in -\n(Inn.br.nr wg 1v.ie \n(.h=\n(vk .nr wg -\n(vhu.el .nr vh 0.if \n(wg>0 \{\.sp \n(wgu.nr vh +\n(wgu \}.nr vk \n(.h.PPUnless \fB\-r\fP is specified, \fI\*(dB\fP just prompts and waits for a command..sp 1.ne 8.B Execution and Tracing Commands.sp 1.TP\fBrun\fP [\fIargs\fP] [\fB<\fP \fIfilename\fP] [\fB>\fP \fIfilename\fP].ns.TP\fBrerun\fP [\fIargs\fP] [\fB<\fP \fIfilename\fP] [\fB>\fP \fIfilename\fP]Start executing \fIobjfile\fP, passing \fIargs\fP as command line arguments;\fB<\fP or \fB>\fP can be used to redirect input or output in the usual manner.When \fBrerun\fP is used without any arguments the previousargument list is passed to the program;otherwise it is identical to \fBrun\fP.If \fIobjfile\fP has been written since the last time the symbolic informationwas read in, \fI\*(dB\fP will read in the new information..TP\fBtrace\fP [\fBin\fP \fIprocedure/function\fP] [\fBif\fP \fIcondition\fP].ns.TP\fBtrace\fP \fIsource-line-number\fP [\fBif\fP \fIcondition\fP].ns.TP\fBtrace\fP \fIprocedure/function\fP [\fBin\fP \fIprocedure/function\fP] [\fBif\fP \fIcondition\fP].ns.TP\fBtrace\fP \fIexpression\fP \fBat\fP \fIsource-line-number\fP [\fBif\fP \fIcondition\fP].ns.TP\fBtrace\fP \fIvariable\fP [\fBin\fP \fIprocedure/function\fP] [\fBif\fP \fIcondition\fP]Have tracing information printed when the program is executed.A number is associated with the command that is usedto turn the tracing off (see the \fBdelete\fP command)..sp 1The first argument describes what is to be traced.If it is a \fIsource-line-number\fP, then the line is printedimmediately prior to being executed.Source line numbers in a file other than the current onemust be preceded by the name of the file in quotes and a colon, e.g."mumble.p":17..sp 1If the argument is a procedure or function name thenevery time it is called, information is printed tellingwhat routine called it, from what source line it was called,and what parameters were passed to it.In addition, its return is noted, and if it's a functionthen the value it is returning is also printed..sp 1If the argument is an \fIexpression\fP with an \fBat\fP clausethen the value of the expression is printed whenever theidentified source line is reached..sp 1If the argument is a variable then the name and value of the variableis printed whenever it changes.Execution is substantially slower during this form of tracing..sp 1If no argument is specified then all source lines are printedbefore they are executed.Execution is substantially slower during this form of tracing..sp 1The clause ``\fBin\fP \fIprocedure/function\fP'' restricts tracing informationto be printed only while executing inside the given procedureor function..sp 1\fICondition\fP is a boolean expression and isevaluated prior to printing the tracing information;if it is false then the information is not printed..br.ne 10.IP "\fBstop\fP \fBif\fP \fIcondition\fP".ns.IP "\fBstop\fP \fBat\fP \fIsource-line-number\fP [\fBif\fP \fIcondition\fP]".ns.IP "\fBstop\fP \fBin\fP \fIprocedure/function\fP [\fBif\fP \fIcondition\fP]".ns.IP "\fBstop\fP \fIvariable\fP [\fBif\fP \fIcondition\fP]"Stop execution when the given line is reached, procedure or functioncalled, variable changed, or condition true..IP "\fBstatus\fP [\fB>\fP \fIfilename\fP]"Print out the currently active \fBtrace\fP and \fBstop\fP commands..IP "\fBdelete\fP \fIcommand-number\fP ..."The traces or stops corresponding to the given numbers are removed.The numbers associated with traces and stops are printed bythe \fBstatus\fP command..IP "\fBcatch\fP \fInumber\fP".ns.IP "\fBignore\fP \fInumber\fP"Start or stop trapping signal \fInumber\fP before it is sentto the program.This is useful when a program being debuggedhandles signals such as interrupts.Initially all signals are trapped except SIGCONT, SIGCHILD,SIGALRM and SIGKILL..IP \fBcont\fPContinue execution from where it stopped.Execution cannot be continued if the process has ``finished'',that is, called the standard procedure ``exit''.\fI\*(DB\fP does not allow the process to exit, therebyletting the user to examine the program state..IP \fBstep\fPExecute one source line..IP \fBnext\fPExecute up to the next source line.The difference between this and \fBstep\fP is thatif the line contains a call to a procedure or functionthe \fBstep\fP command will stop at the beginning of thatblock, while the \fBnext\fP command will not..IP "\fBreturn\fP [\fIprocedure\fP]"Continue until a return to \fIprocedure\fP is executed, oruntil the current procedure returns if none is specified..sp 1.br.ne 8v.PP.B Displaying and Naming Data.sp 1.IP "\fBprint\fP \fIexpression\fP [\fB,\fP \fIexpression\fP ...]"Print out the values of the expressions.Array expressions are always subscripted by brackets (``[ ]'').Variables having the same identifier as one in the current block may bereferenced as ``\fIblock-name\fP\ \fB.\fP\ \fIvariable\fP''.The field reference operator (``.'') can be used with pointersas well as records, making the C operator ``->'' unnecessary(although it is supported).The construct \fIexpression\fP\ \\\ \fItypename\fP can be used to printthe \fIexpression\fP out in the format of the type named \fItypename\fP..IP "\fBwhatis\fP \fIname\fP"Print the declaration of the given name, which may be qualifiedwith block names as above..IP "\fBwhich\fP \fIidentifier\fP"Print the full qualification of the given identifer, i.e.the outer blocks that the identifier is associated with..IP "\fBwhereis\fP \fIidentifier\fP"Print the full qualification of all the symbols whosename matches the given identifier.The order in which the symbols are printed is not meaningful..IP "\fBassign\fP \fIvariable\fP \fB=\fP \fIexpression\fP".ns.IP "\fBset\fP \fIvariable\fP \fB=\fP \fIexpression\fP"Assign the value of the expression to the variable..IP "\fBcall\fP \fIprocedure(parameters)\fP"Execute the object code associated with the named procedure or function.Currently, calls to a procedure with a variable number of argumentsare not possible.Also, string parameters are not passed properly for C..IP \fBwhere\fPPrint out a list of the active procedures and function..IP "\fBdump\fP [\fB>\fP \fIfilename\fP]"Print the names and values of all active variables..IP "\fBup\fP [\fIcount\fP]".ns.IP "\fBdown\fP [\fIcount\fP]"Move the current function, which is used for resolving names,up or down the stack \fIcount\fP levels.The default \fIcount\fP is 1..sp 1.br.ne 8v.PP.B Accessing Source Files.sp 1.IP "\fBedit\fP [\fIfilename\fP]".ns.IP "\fBedit\fP \fIprocedure/function-name\fP"Invoke an editor on \fIfilename\fP or the current source file if noneis specified.If a \fIprocedure\fP or \fIfunction\fP name is specified,the editor is invoked on the file that contains it.Which editor is invoked by default depends on the installation.The default can be overridden by setting the environment variableEDITOR to the name of the desired editor..IP "\fBfile\fP [\fIfilename\fP]"Change the current source file name to \fIfilename\fP.If none is specified then the current source file name is printed..IP "\fBfunc\fP [\fIprocedure/function\fP]"Change the current function.If none is specified then print the current function.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -