Process Control Library Functions procservice(3PROC)
NAME
procservice - process service interfaces
SYNOPSIS
#include
pserre pspdmodel(struct psprochandle *ph,
int *datamodel);
pserre pspgloballookup(struct psprochandle *ph,
const char *objectname, const char *symname,
psaddrt *symaddr);
pserre pspglobalsym(struct psprochandle *ph,
const char *objectname, const char *symname,
pssymt *sym);
pserre pspread(struct psprochandle *ph, psaddrt addr,
void *buf, sizet size);
pserre pspwrite(struct psprochandle *ph, psaddrt addr,
const void *buf, sizet size);
pserre pspdread(struct psprochandle *ph, psaddrt addr,
void *buf, sizet size);
pserre pspdwrite(struct psprochandle *ph, psaddrt addr,
const void *buf, sizet size);
pserre psptread(struct psprochandle *ph, psaddrt addr,
void *buf, sizet size);
pserre psptwrite(struct psprochandle *ph, psaddrt addr,
const void *buf, sizet size);
pserre pspstop(struct psprochandle *ph);
pserre pspcontinue(struct psprochandle *ph);
pserre pslstop(struct psprochandle *ph, lwpidt lwpid);
SunOS 5.11 Last change: 12 Oct 2007 1
Process Control Library Functions procservice(3PROC)
pserre pslcontinue(struct psprochandle *ph, lwpidt lwpid);
pserre pslgetregs(struct psprochandle *ph, lwpidt lwpid,
prgregsett gregset);
pserre pslsetregs(struct psprochandle *ph, lwpidt lwpid,
const prgregsett gregset);
pserre pslgetfpregs(struct psprochandle *ph, lwpidt lwpid,
prfpregsett *fpregset);
pserre pslsetfpregs(struct psprochandle *ph, lwpidt lwpid,
const prfpregsett *fpregset);
pserre pspauxv(struct psprochandle *ph,
const auxvt **auxp);
pserre pskill(struct psprochandle *ph, int sig);
pserre pslrolltoaddr(struct psprochandle *ph,
lwpidt lwpid, psaddrt goaddr, psaddrt stopaddr);
void psplog(const char *fmt);
SPARC
pserre pslgetxregsize(struct psprochandle *ph,
lwpidt lwpid, int *xregsize);
pserre pslgetxregs(struct psprochandle *ph,
lwpidt lwpid, caddrt xregset);
pserre pslsetxregs(struct psprochandle *ph,
lwpidt lwpid, caddrt xregset);
x86
pserre pslgetLDT(struct psprochandle *ph, lwpidt lwpid,
struct ssd *ldt);
SunOS 5.11 Last change: 12 Oct 2007 2
Process Control Library Functions procservice(3PROC)
DESCRIPTION
Every program that links libthreaddb or librtlddb must
provide a set of process control primitives that allow
libthreaddb and librtlddb to access memory and registers
in the target process, to start and to stop the target pro-
cess, and to look up symbols in the target process. See
libcdb(3LIB). For information on librtlddb, 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 libthreaddb and librtlddb can use to implement this
required interface. The header lists the C
declarations of these routines.
FUNCTIONS
pspdmodel() Returns the data model of the target
process.
pspgloballookup() Looks up the symbol in the symbol
table of the load object in the tar-
get process and returns its address.
pspglobalsym() Looks up the symbol in the symbol
table of the load object in the tar-
get process and returns its symbol
table entry.
pspread() Copies size bytes from the target
process to the controlling process.
pspwrite() Copies size bytes from the control-
ling process to the target process.
pspdread() Identical to pspread().
pspdwrite() Identical to pspwrite().
psptread() Identical to pspread().
psptwrite() Identical to pspwrite().
SunOS 5.11 Last change: 12 Oct 2007 3
Process Control Library Functions procservice(3PROC)
pspstop() Stops the target process.
pspcontinue() Resumes target process.
pslstop() Stops a single lightweight process (
LWP ) within the target process.
pslcontinue() Resumes a single LWP within the tar-
get process.
pslgetregs() Gets the general registers of the
LWP.
pslsetregs() Sets the general registers of the
LWP.
pslgetfpregs() Gets the LWP`s floating point regis-
ter set.
pslsetfpregs() Sets the LWP`s floating point regis-
ter set.
pspauxv() Returns a pointer to a read-only copy
of the target process's auxiliary
vector.
pskill() Sends signal to target process.
pslrolltoaddr() Rolls the LWP out of a critical sec-
tion when the process is stopped.
psplog() Logs a message.
SPARC
pslgetxregsize() Returns the size of the architecture-
dependent extra state registers.
pslgetxregs() Gets the extra state registers of the
LWP.
SunOS 5.11 Last change: 12 Oct 2007 4
Process Control Library Functions procservice(3PROC)
pslsetxregs() Sets the extra state registers of the
LWP.
x86
pslgetLDT() Reads the local descriptor table of the LWP.
ATRIBUTES
See attributes(5) for description of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
MT Level Safe
SEE ALSO
libcdb(3LIB), librtlddb(3LIB), pspread(3PROC),
rtlddb(3EXT), attributes(5)
Linker and Libraries Guide
SunOS 5.11 Last change: 12 Oct 2007 5
|