Programming APIs
-
dtrace_prog_t *dtrace_program_strcompile(dtrace_hdl_t *dtp, const char *s, dtrace_probespec_t spec, uint_t cflags, int argc, char *const argv[])
-
Compiles a D script that is contained in a string. The value returned is passed to some other functions, like
dtrace_program_exec
(). Seedtrace_program_strcompile
(3DTRACE). -
dtrace_prog_t *dtrace_program_fcompile(dtrace_hdl_t *dtp, FILE *fp, uint_t cflags, int argc, char *const argv[])
-
Compiles a D script contained in an external file. The value returned is passed to some of the functions below, like
dtrace_program_exec
(). Seedtrace_program_fcompile
(3DTRACE). -
int dtrace_program_exec(dtrace_hdl_t *dtp, dtrace_prog_t *pgp, dtrace_proginfo_t *pip)
-
Downloads a compiled DTrace program into the kernel DTrace framework. Probes are enabled during this function call. Information about the program being executed is returned in the
pip
argument. For more information, seedtrace_program_info
(). Seedtrace_program_exec
(3DTRACE). -
void dtrace_program_info(dtrace_hdl_t *dtp, dtrace_prog_t *pgp,dtrace_proginfo_t *pip)
-
Provides information about the program
pgp
is returned in thepip
argument. This information is described in thedtrace_proginfo_t
data structure. Seedtrace_program_info
(3DTRACE). -
int dtrace_program_link(dtrace_hdl_t *dtp, dtrace_prog_t *pgp, uint_t dflags, const char *file, int objc, char *const objv[])
-
Processes the object files specified in
_objv_
(with a count of those files in_objc_
) to create the probe points for that provider, with a given compiled USDT provider definition as_pgp_
. Seedtrace_program_link
(3DTRACE). -
int dtrace_program_header(dtrace_hdl_t *dtp, FILE *out, const char *fname)
-
Generates a C header file containing the macro definitions for a USDT provider. This header file is written to
_out_
. The name of the file,_fname_
, is used in the header file. The name of the file,_fname_
, is used in the header file. The information about the provider is stored in the DTrace handle_dtp_
afterdtrace_program_strcompile
() ordtrace_program_fcompile
() is called to compile the D language provider definition. Seedtrace_program_header
(3DTRACE). -
void *dtrace_dof_create(dtrace_hdl_t *dtp, dtrace_prog_t *pgp, uint_t flags)
-
Returns a pointer to the D object for this program for a given compiled DTrace program
pgp
. DOF is the D Object Format, which is the DTrace equivalent of ELF. DOF is downloaded into the kernel duringdtrace_program_exec
(). Seedtrace_dof_create
(3DTRACE). -
void dtrace_dof_destroy(dtrace_hdl_t *dtp, void *dof)
-
Frees any resources associated with the DOF. See
dtrace_dof_destroy
(3DTRACE). -
void *dtrace_getopt_dof(dtrace_hdl_t *dtp)
-
Returns the DOF containing information about options that have been set by using
dtrace_setopt
(). This information is an array containing option identifiers and their values. Seedtrace_getopt
(3DTRACE). -
void *dtrace_geterr_dof(dtrace_hdl_t *dtp)
-
Returns the DOF containing the code to execute for any ERROR clauses in a D script. These clauses are handled differently from the BEGIN and END clauses.
-
int dtrace_stmt_iter(dtrace_hdl_t *dtp, dtrace_prog_t *pgp,dtrace_stmt_f *func, void *data)
-
Iterates over the statements associated with
_pgp_
, calling the function_func_
on each statement. Seedtrace_stmt_iter
(3DTRACE).