com.ibm.dtfj.image
Interface ImageProcess


public interface ImageProcess

This class represents a Process running in a given Address Space.

Author:
pburka

Method Summary
 java.lang.String getCommandLine()
          Fetch the command line for this process.
 ImageThread getCurrentThread()
          Find the thread which triggered the creation of the image
 java.util.Properties getEnvironment()
          Get the environment variables for this process.
 ImageModule getExecutable()
          Get the module representing the executable within the image.
 java.lang.String getID()
          Get the system-wide identifier for the process.
 java.util.Iterator getLibraries()
          Get the set of shared libraries which are loaded in this process.
 int getPointerSize()
          Determine the pointer size used by this process.
 java.util.Iterator getRuntimes()
          Get the set of the known ManagedRuntime environments in the image.
 java.lang.String getSignalName()
          Get the name of the OS signal in this process which triggered the creation of this image.
 int getSignalNumber()
          Get the OS signal number in this process which triggered the creation of this image.
 java.util.Iterator getThreads()
          Get the set of image threads in the image.
 

Method Detail

getCommandLine

java.lang.String getCommandLine()
                                throws DataUnavailable,
                                       CorruptDataException
Fetch the command line for this process. This may be the exact command line the user issued, or it may be a reconstructed command line based on argv[] and argc.

Returns:
the command line for the process
Throws:
DataUnavailable - if the information cannot be provided
CorruptDataException

getEnvironment

java.util.Properties getEnvironment()
                                    throws DataUnavailable,
                                           CorruptDataException
Get the environment variables for this process.

Returns:
the environment variables for this process
Throws:
DataUnavailable - if the information cannot be provided
CorruptDataException

getID

java.lang.String getID()
                       throws DataUnavailable,
                              CorruptDataException
Get the system-wide identifier for the process.

Returns:
a system-wide identifier for the process (e.g. a process id (pid) on Unix like systems)
Throws:
DataUnavailable - if the information cannot be provided
CorruptDataException

getLibraries

java.util.Iterator getLibraries()
                                throws DataUnavailable,
                                       CorruptDataException
Get the set of shared libraries which are loaded in this process.

Returns:
an iterator to iterate over the shared libraries which are loaded in this process
Throws:
DataUnavailable - if the information cannot be provided
CorruptDataException
See Also:
ImageModule, CorruptData

getExecutable

ImageModule getExecutable()
                          throws DataUnavailable,
                                 CorruptDataException
Get the module representing the executable within the image.

Returns:
the module representing the executable within the image (as opposed to modules representing libraries)
Throws:
DataUnavailable - if the information cannot be provided
CorruptDataException
See Also:
ImageModule

getThreads

java.util.Iterator getThreads()
Get the set of image threads in the image.

Returns:
an iterator to iterate over each ImageThread in the image There is not necessarily any relationship between JavaThreads and ImageThreads. A JVM implementation may use an n:m mapping of JavaThreads to ImageThreads, and not all ImageThreads are necessarily attached.
See Also:
ImageThread, CorruptData

getCurrentThread

ImageThread getCurrentThread()
                             throws CorruptDataException
Find the thread which triggered the creation of the image

Returns:
the ImageThread which caused the image to be created, or null if the image was not created due to a specific thread
Throws:
CorruptDataException
See Also:
ImageThread

getRuntimes

java.util.Iterator getRuntimes()
Get the set of the known ManagedRuntime environments in the image.

Returns:
an iterator to iterate over all of the known ManagedRuntime environments in the image. In a typical image, there will be only one runtime, and it will be an instance of JavaRuntime. However any user of this API should be aware that there is a possibility that other runtimes may exist in the image
See Also:
ManagedRuntime, JavaRuntime, CorruptData

getSignalNumber

int getSignalNumber()
                    throws DataUnavailable,
                           CorruptDataException
Get the OS signal number in this process which triggered the creation of this image.

Returns:
the OS signal number in this process which triggered the creation of this image, or 0 if the image was not created because of a signal in this process
Throws:
DataUnavailable - if the information cannot be provided
CorruptDataException

getSignalName

java.lang.String getSignalName()
                               throws DataUnavailable,
                                      CorruptDataException
Get the name of the OS signal in this process which triggered the creation of this image.

Returns:
the name of the OS signal in this process which triggered the creation of this image, or null if the image was not created because of a signal in this process
Throws:
DataUnavailable - if the information cannot be provided
CorruptDataException

getPointerSize

int getPointerSize()
Determine the pointer size used by this process. Currently supported values are 31, 32 or 64. In the future, other pointer sizes may also be supported.

Returns:
the size of a pointer, in bits