08-31-2010
Dbx Debugger
I have tried lots of stuff but i can't get it working, i have also found a Thread in this Forum about it but it didn't describe how the program has to be run ect.
My issue is that i want to run a program with multiple arguments eg.
./myprog arg1 arg2 arg3 arg4 arg5
with dbx, but i cant get it working...
This was the Thread i mentioned:
dbx debugger + argv[argc]
Can somebody give me an example ?
Thanks would be awesome,
Alcatros
9 More Discussions You Might Find Interesting
1. Programming
Which is better??
I have always been a gdb fan.. But ppl say dbx is beter better for debugging the core.. Do all GDB lovers agree to it???
:cool: (1 Reply)
Discussion started by: jyotipg
1 Replies
2. Programming
Is it possible to use the dbx debugger with the CL options for the executable ?
Say you have created a executable called myfunc which can take string arguments at run-time. You run it like this
./myfunc Hello World
where Hello and World are the string arguments
My question is whether... (1 Reply)
Discussion started by: JamesGoh
1 Replies
3. Programming
I have a problem whith dbx: there is no dbx installed!!!
Could someone tell me where do i get dbx program and how to install it?
Thanks. (1 Reply)
Discussion started by: calloc
1 Replies
4. UNIX for Advanced & Expert Users
Hi ..
I have a core_dump in the server... AIX 5.3 . It was created by on proc executable called "ProcessIse" . from the log report i found the source file name
"ProcessIseInterface.C" which created the core file.
the core file name is : "core" under /iprs/bin directory.
can you help me... (1 Reply)
Discussion started by: vparunkumar
1 Replies
5. Programming
hi i have executable(eg test) of my application
that has the following syntax to run
test -Ddatabase_name Inputfile
Now i want to debug it using dbx
so i do
dbx test
(dbx) stop at /abc/test/test.c:90
stop at /abc/test/test.c:90
^ syntax error
the... (0 Replies)
Discussion started by: mad_man12
0 Replies
6. AIX
Hi,
We are porting a virtual machine application which emits native PowerPC instructions. The instructions are written to the data segment and are then executed, similar to the JIT / hot spot technology used in the Java VM.
The problem is that the AIX debugger (dbx) will not show me stack... (3 Replies)
Discussion started by: nrgiii
3 Replies
7. Shell Programming and Scripting
Hi,
I ahd created my executable file from makefile on AIX.
Now I want to debug my code using dbx.
I typed:
dbx help
It goes into (dbx) prompt
But afte that i do not know what to do to put breakpoints in my program and how to run step by step.
Help me out ASAP.
Thanks in... (0 Replies)
Discussion started by: Poonamol
0 Replies
8. UNIX for Dummies Questions & Answers
hey everyone,
i'm having a little problem with my dbx debugger.
the problem is that when i try to print a struct it print it as a struct from another type. i even tried casting the struct to its type and it still print it as the other type..
anyone had that problem and solved it? or maybe have... (4 Replies)
Discussion started by: sabres207
4 Replies
9. Programming
GNU insight debugger is not available now a days and it is required to debug/inspect
assembly code as written in the book Assembly Language Programming step by step in Linux so my question is; is there any alternative to insight that I can use instead of insight in which I can get the same... (5 Replies)
Discussion started by: vectrum
5 Replies
KTR(9) BSD Kernel Developer's Manual KTR(9)
NAME
CTR0, CTR1, CTR2, CTR3, CTR4, CTR5 -- kernel tracing facility
SYNOPSIS
#include <sys/param.h>
#include <sys/ktr.h>
extern int ktr_cpumask;
extern int ktr_entries;
extern int ktr_extend;
extern int ktr_mask;
extern int ktr_verbose;
extern struct ktr_entry ktr_buf[];
void
CTR0(u_int mask, char *format);
void
CTR1(u_int mask, char *format, arg1);
void
CTR2(u_int mask, char *format, arg1, arg2);
void
CTR3(u_int mask, char *format, arg1, arg2, arg3);
void
CTR4(u_int mask, char *format, arg1, arg2, arg3, arg4);
void
CTR5(u_int mask, char *format, arg1, arg2, arg3, arg4, arg5);
void
CTR6(u_int mask, char *format, arg1, arg2, arg3, arg4, arg5, arg6);
DESCRIPTION
KTR provides a circular buffer of events that can be logged in a printf(9) style fashion. These events can then be dumped with ddb(4),
gdb(1) or ktrdump(8).
Events are created and logged in the kernel via the CTRx macros. The first parameter is a mask of event types (KTR_*) defined in
<sys/ktr.h>. The event will be logged only if any of the event types specified in mask are enabled in the global event mask stored in
ktr_mask. The format argument is a printf(9) style format string used to build the text of the event log message. Following the format
string are zero to five arguments referenced by format. Each event is logged with a file name and source line number of the originating CTR
call, and a timestamp in addition to the log message.
The event is stored in the circular buffer with supplied arguments as is, and formatting is done at the dump time. Do not use pointers to
the objects with limited lifetime, for instance, strings, because the pointer may become invalid when buffer is printed.
Note that the different macros differ only in the number of arguments each one takes, as indicated by its name.
The ktr_entries variable contains the number of entries in the ktr_buf array. These variables are mostly useful for post-mortem crash dump
tools to locate the base of the circular trace buffer and its length.
The ktr_mask variable contains the run time mask of events to log.
The CPU event mask is stored in the ktr_cpumask variable.
The ktr_verbose variable stores the verbose flag that controls whether events are logged to the console in addition to the event buffer.
EXAMPLES
This example demonstrates the use of tracepoints at the KTR_PROC logging level.
void
mi_switch()
{
...
/*
* Pick a new current process and record its start time.
*/
...
CTR3(KTR_PROC, "mi_switch: old proc %p (pid %d)", p, p->p_pid);
...
cpu_switch();
...
CTR3(KTR_PROC, "mi_switch: new proc %p (pid %d)", p, p->p_pid);
...
}
SEE ALSO
ktr(4), ktrdump(8)
HISTORY
The KTR kernel tracing facility first appeared in BSD/OS 3.0 and was imported into FreeBSD 5.0.
BUGS
Currently there is one global buffer shared among all CPUs. It might be profitable at some point in time to use per-CPU buffers instead so
that if one CPU halts or starts spinning, then the log messages it emitted just prior to halting or spinning will not be drowned out by
events from the other CPUs.
The arguments given in CTRx() macros are stored as u_long, so do not pass arguments larger than size of an u_long type. For example passing
64bit arguments on 32bit architectures will give incorrect results.
BSD
November 30, 2008 BSD