frysk.sys.ptrace
Class Utrace

java.lang.Object
  extended by frysk.sys.ptrace.Utrace

public class Utrace
extends Object

Trace a process.


Field Summary
private static Log fine
           
 
Constructor Summary
Utrace()
           
 
Method Summary
private static void attach(int pid)
           
static void attach(ProcessIdentifier pid)
          Attach to the process specified by PID.
private static void cont(int pid, int signal)
           
static void cont(ProcessIdentifier pid, Signal signal)
          Continue the process specified by PID, if SIG is non-zero, deliver the signal.
private static void detach(int pid, int sig)
           
static void detach(ProcessIdentifier pid, Signal signal)
          Detach from the process specified by PID.
private static long getEventMsg(int pid)
           
static long getEventMsg(ProcessIdentifier pid)
          Fetch the auxilary information associated with PID's last WAIT event.
private static void setOptions(int pid, long options)
           
static void setOptions(ProcessIdentifier pid, long options)
          Set PID's trace options.
private static void singleStep(int pid, int sig)
           
static void singleStep(ProcessIdentifier pid, Signal signal)
          Single-step (instruction step) the process specified by PID, if SIG is non-zero, deliver the signal.
private static void sysCall(int pid, int sig)
           
static void sysCall(ProcessIdentifier pid, Signal signal)
          Continue the process specified by PID, stopping when there is a system-call; if SIG is non-zero deliver the signal.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

fine

private static final Log fine
Constructor Detail

Utrace

public Utrace()
Method Detail

attach

public static void attach(ProcessIdentifier pid)
Attach to the process specified by PID.


attach

private static void attach(int pid)

detach

public static void detach(ProcessIdentifier pid,
                          Signal signal)
Detach from the process specified by PID.


detach

private static void detach(int pid,
                           int sig)

singleStep

public static void singleStep(ProcessIdentifier pid,
                              Signal signal)
Single-step (instruction step) the process specified by PID, if SIG is non-zero, deliver the signal.


singleStep

private static void singleStep(int pid,
                               int sig)

cont

public static void cont(ProcessIdentifier pid,
                        Signal signal)
Continue the process specified by PID, if SIG is non-zero, deliver the signal.


cont

private static void cont(int pid,
                         int signal)

sysCall

public static void sysCall(ProcessIdentifier pid,
                           Signal signal)
Continue the process specified by PID, stopping when there is a system-call; if SIG is non-zero deliver the signal.


sysCall

private static void sysCall(int pid,
                            int sig)

getEventMsg

public static long getEventMsg(ProcessIdentifier pid)
Fetch the auxilary information associated with PID's last WAIT event.


getEventMsg

private static long getEventMsg(int pid)

setOptions

public static void setOptions(ProcessIdentifier pid,
                              long options)
Set PID's trace options. OPTIONS is formed by or'ing the values returned by the option* methods below.


setOptions

private static void setOptions(int pid,
                               long options)