proc_service(3PROC)
NAME
| SYNOPSIS
| DESCRIPTION
| FUNCTIONS
| ATTRIBUTES
| SEE ALSO
NAME
proc_service- process service interfaces
SYNOPSIS
#include <proc_service.h>
ps_err_e ps_pdmodel(struct ps_prochandle *
ph, int *
data_model);
ps_err_e ps_pglobal_lookup(struct ps_prochandle *
ph, const char *
object_name, const char *
sym_name , psaddr_t *
sym_addr);
ps_err_e ps_pglobal_sym(struct ps_prochandle *
ph, const char *
object_name, const char *
sym_name , ps_sym_t *
sym);
ps_err_e ps_pread(struct ps_prochandle *
ph, psaddr_t
addr, void *
buf, size_t
size);
ps_err_e ps_pwrite(struct ps_prochandle *
ph, psaddr_t
addr, const void *
buf, size_t
size);
ps_err_e ps_pdread(struct ps_prochandle *
ph, psaddr_t
addr, void *
buf, size_t
size);
ps_err_e ps_pdwrite(struct ps_prochandle *
ph, psaddr_t
addr, const void *
buf, size_t
size);
ps_err_e ps_ptread(struct ps_prochandle *
ph, psaddr_t
addr, void *
buf, size_t
size);
ps_err_e ps_ptwrite(struct ps_prochandle *
ph, psaddr_t
addr, const void *
buf, size_t
size);
ps_err_e ps_pstop(struct ps_prochandle *
ph);
ps_err_e ps_pcontinue(struct ps_prochandle *
ph);
ps_err_e ps_lstop(struct ps_prochandle *
ph, lwpid_t
lwpid);
ps_err_e ps_lcontinue(struct ps_prochandle *
ph, lwpid_t
lwpid);
ps_err_e ps_lgetregs(struct ps_prochandle *
ph, lwpid_t
lwpid, prgregset_t
gregset);
ps_err_e ps_lsetregs(struct ps_prochandle *
ph, lwpid_t
lwpid, const prgregset_t
gregset);
ps_err_e ps_lgetfpregs(struct ps_prochandle *
ph, lwpid_t
lwpid, prfpregset_t *
fpregset);
ps_err_e ps_lsetfpregs(struct ps_prochandle *
ph, lwpid_t
lwpid, const prfpregset_t *
fpregset);
ps_err_e ps_pauxv(struct ps_prochandle *
ph, const auxv_t **
auxp);
ps_err_e ps_kill(struct ps_prochandle *
ph, int
sig);
ps_err_e ps_lrolltoaddr(struct ps_prochandle *
ph, lwpid_t
lwpid, psaddr_t
go_addr, psaddr_t
stop_addr);
void ps_plog(const char *
fmt);
SPARC
ps_err_e ps_lgetxregsize(struct ps_prochandle *ph, lwpid_t lwpid, int *xregsize);
ps_err_e ps_lgetxregs(struct ps_prochandle *ph, lwpid_t lwpid, caddr_t xregset);
ps_err_e ps_lsetxregs(struct ps_prochandle *ph, lwpid_t lwpid, caddr_t xregset);
IA
ps_err_e ps_lgetLDT(struct ps_prochandle *ph, lwpid_t lwpid, struct ssd *ldt);
DESCRIPTION
Every program that links libthread_db or librtld_db must provide a set of process control primitives that will allow libthread_db and librtld_db to access memory and registers in the target process, to start and to stop the target process, and to look up symbols in the target process. See libthread_db(3THR). For information on librtld_db, refer to the Linker and Libraries Guide
Refer to the individual reference manual pages that describe these routines for a functional specification that clients of libthread_db and librtld_db can use
to implement this required interface. <proc_service.h> lists the C declarations of these routines
FUNCTIONS
-
Name
-
Description
-
ps_pdmodel()
-
Returns the data model of the target process.
-
ps_pglobal_lookup()
-
Looks up the symbol in the symbol table of the load object in the target process and returns its address.
-
ps_pglobal_sym()
-
Looks up the symbol in the symbol table of the load object in the target process and returns its symbol table entry.
-
ps_pread()
-
Copies size bytes from the target process to the controlling process.
-
ps_pwrite()
-
Copies size bytes from the controlling process to the target process.
-
ps_pdread()
-
Identical to ps_pread().
-
ps_pdwrite()
-
Identical to ps_pwrite().
-
ps_ptread()
-
Identical to ps_pread().
-
ps_ptwrite()
-
Identical to ps_pwrite().
-
ps_pstop()
-
Stops the target process.
-
ps_pcontinue()
-
Resumes target process.
-
ps_lstop()
-
Stops a single lightweight process ( LWP ) within the target process.
-
ps_lcontinue()
-
Resumes a single LWP within the target process.
-
ps_lgetregs()
-
Gets the general registers of the LWP.
-
ps_lsetregs()
-
Sets the general registers of the LWP.
-
ps_lgetfpregs()
-
Gets the LWP`s floating point register set.
-
ps_lsetfpregs()
-
Sets the LWP`s floating point register set.
-
ps_pauxv()
-
Returns a pointer to a read-only copy of the target process's auxiliary vector.
-
ps_kill()
-
Sends signal to target process.
-
ps_lrolltoaddr()
-
Rolls the LWP out of a critical section when the process is stopped.
-
ps_plog()
-
Logs a message.
SPARC
-
ps_lgetxregsize()
-
Returns the size of the architecture-dependent extra state registers.
-
ps_lgetxregs()
-
Gets the extra state registers of the LWP.
-
ps_lsetxregs()
-
Sets the extra state registers of the LWP.
IA
-
ps_lgetLDT()
-
Reads the local descriptor table of the LWP.
ATTRIBUTES
SEE ALSO
SunOS 5.9 Last Revised 16 Jan 1998
NAME
| SYNOPSIS
| DESCRIPTION
| FUNCTIONS
| ATTRIBUTES
| SEE ALSO