frysk.proc.dead
Class LinuxExeProc

java.lang.Object
  extended by frysk.proc.Proc
      extended by frysk.proc.dead.DeadProc
          extended by frysk.proc.dead.LinuxExeProc
All Implemented Interfaces:
Comparable

public class LinuxExeProc
extends DeadProc


Nested Class Summary
 
Nested classes/interfaces inherited from class frysk.proc.Proc
Proc.ObservableXXX
 
Field Summary
private  String[] argv
           
private  Auxv[] auxv
           
private  SysRootFile exeFile
           
private  LinuxExeTask mainTask
           
private  MemoryMap[] memoryMaps
           
 
Fields inherited from class frysk.proc.Proc
observableAttachedXXX, observableDetachedXXX, parent
 
Constructor Summary
LinuxExeProc(LinuxExeHost host, SysRootFile exeFile, ElfEHeader eHeader, MemoryMap[] memoryMaps, String[] argv)
           
 
Method Summary
 Auxv[] getAuxv()
          The Process Auxiliary Vector.
 String[] getCmdLine()
          Return the Proc's command line argument list
 String getCommand()
          Return the basename of the program that this process is running.
 SysRootFile getExeFile()
          Return the SysRoot path of the program that this process is running.
 int getGID()
          Return the GID of the Proc.
 Task getMainTask()
           
 MemoryMap[] getMaps()
           
 int getUID()
          Return the UID of the Proc.
 
Methods inherited from class frysk.proc.dead.DeadProc
getStateFIXME, performDetach
 
Methods inherited from class frysk.proc.Proc
add, compareTo, getChildren, getHost, getMap, getParent, getPid, getTasks, remove, remove, requestAbandon, requestAbandonAndRunEvent, requestKill, sendRefresh, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

memoryMaps

private final MemoryMap[] memoryMaps

argv

private final String[] argv

exeFile

private final SysRootFile exeFile

mainTask

private final LinuxExeTask mainTask

auxv

private final Auxv[] auxv
Constructor Detail

LinuxExeProc

public LinuxExeProc(LinuxExeHost host,
                    SysRootFile exeFile,
                    ElfEHeader eHeader,
                    MemoryMap[] memoryMaps,
                    String[] argv)
Method Detail

getMainTask

public Task getMainTask()
Specified by:
getMainTask in class Proc
Returns:
The main task for this process XXX: Rather than getting the main task and manipulating that, it should be possible to instead manipulate the proc - for instance asking the proc to notify of fork/exec/clone events. At present this is implemented by ProcBlockAction.

getAuxv

public Auxv[] getAuxv()
Description copied from class: Proc
The Process Auxiliary Vector.

Specified by:
getAuxv in class Proc

getUID

public int getUID()
Description copied from class: Proc
Return the UID of the Proc.

Specified by:
getUID in class Proc

getCmdLine

public String[] getCmdLine()
Description copied from class: Proc
Return the Proc's command line argument list

Specified by:
getCmdLine in class Proc

getCommand

public String getCommand()
Description copied from class: Proc
Return the basename of the program that this process is running.

Specified by:
getCommand in class Proc

getExeFile

public SysRootFile getExeFile()
Description copied from class: Proc
Return the SysRoot path of the program that this process is running.

Specified by:
getExeFile in class Proc

getGID

public int getGID()
Description copied from class: Proc
Return the GID of the Proc.

Specified by:
getGID in class Proc

getMaps

public MemoryMap[] getMaps()
Specified by:
getMaps in class Proc