The Perl modules each contain a group of related project, task and exacct-related functions. Each function has the standard Sun::Solaris:: Perl package prefix. A man page is available for each function name.
|
The Sun::Solaris::Project module provides wrappers for the project-related system calls and the libproject(3LIB) library.
The Sun::Solaris::Project module uses constants from the project-related header files.
The Perl extensions to the libexacct(3LIB) API provide the following functions for projects. A man page is available for each interface name.
The Sun::Solaris::Project module has no class methods.
The Sun::Solaris::Project module has no object methods.
By default, nothing is exported from this module. You can use the tags listed in the following table to selectively import the constants and functions defined in this module. A man page is available for each function name.
|
The Sun::Solaris::Task module provides wrappers for the settaskid and gettaskid system calls.
The Sun::Solaris::Task module uses the following constants:
The Perl extensions to the libexacct API provides the following functions for tasks. A man page is available for each function name.
The Sun::Solaris::Task module has no class methods.
The Sun::Solaris::Task module has no object methods.
By default, nothing is exported from this module. You can use the tags listed in the following table to selectively import the constants and functions defined in this module. A man page is available for each function name.
|
The Sun::Solaris::Exacct module provides wrappers for the ea_error function and for all the exacct system calls.
The Sun::Solaris::Exacct module provides constants from the various exacct header files. The P_PID, P_TASKID, P_PROJID and all the EW_*, EP_*, EXR_* macros are extracted during the module build process. The macros are extracted from the exacct header files under /usr/include and provided as Perl constants. Constants passed to the Sun::Solaris::Exacct functions can either be an integer value such as EW_FINAL or a string representation of the same variable such as "EW_FINAL".
The Perl extensions to the libexacctAPI provide the following functions for the Sun::Solaris::Exacct module. A man page is available for each function name.
if (ea_error() == EXR_SYSCALL_FAIL) { print("error: $!\n"); } else { print("error: ", ea_error(), "\n"); }
The Sun::Solaris::Exacct module has no class methods or object methods.
By default, nothing is exported from this module. The following tags can be used to selectively import constants and functions defined in this module. A man page is available for each function name.
|
The Sun::Solaris::Exacct::Catalog module provides a wrapper around the 32-bit integer used as a catalog tag. The catalog tag is represented as a Perl object blessed into the Sun::Solaris::Exacct::Catalog class. Methods can be used to manipulate fields in a catalog tag.
For additional information, see the Exacct(3PERL) and Exacct::Catalog(3PERL) man pages.
All the EXT_*, EXC_* and EXD_* macros are extracted during the module build process from the /usr/include/sys/exact_catalog.h file and are provided as constants. Constants passed to the Sun::Solaris::Exacct::Catalog methods can either be an integer value, such as EXT_UINT8, or the string representation of the same variable, such as "EXT_UINT8".
The Perl extensions to the libexacct API provide the following class methods for Sun::Solaris::Exacct::Catalog:
The Perl extensions to the libexacct API provide the following object methods for Sun::Solaris::Exacct::Catalog.
By default, nothing is exported from this module. The following tags can be used to selectively import constants and functions defined in this module.
|
Additionally, any constants defined with the register() function can optionally be exported into the caller's package.
The Sun::Solaris::Exacct::File module provides wrappers for the exacct functions that manipulate accounting files. The interface is object-oriented, and allows the creation and reading of exacct files.
The following are the C library calls that are wrapped by this module. A man page is available for each function name.
The file read and write methods operate on Sun::Solaris::Exacct::Object objects. These methods perform all the necessary memory management, packing, unpacking and structure conversions that are required.
Sun::Solaris::Exacct::File provides the EO_HEAD, EO_TAIL, EO_NO_VALID_HDR, EO_POSN_MSK and EO_VALIDATE_MSK constants. Other constants that are needed by the new method are in the standard Perl Fcntl module. Table 6, $oflags and $aflags Parameters describes the action of new() for various values of $oflags and $aflags.
The Sun::Solaris::Exacct::File module has no functions.
The Perl extensions to the libexacct API provide the following class method forSun::Solaris::Exacct::File:
The following table describes the new() action for combinations of the $oflags and $aflags parameters.
|
The Perl extensions to the libexacct API provide the following object methods forSun::Solaris::Exacct::File:
By default, nothing is exported from this module. The following tags can be used to selectively import constants that are defined in this module.
|
The Sun::Solaris::Exacct::Object module serves as a parent of the two possible types of exacct objects: Items and Groups. An exacct Item is a single data value, an embedded exacct object, or a block of raw data. An example of a single data value is the number of seconds of user CPU time consumed by a process. An exacct Group is an ordered collection of exacct Items such as all of the resource usage values for a particular process or task. If Groups need to be nested within each other, the inner Groups can be stored as embedded exacct objects inside the enclosing Group.
The Sun::Solaris::Exacct::Object module contains methods that are common to both exacct Items and Groups. Note that the attributes of Sun::Solaris::Exacct::Object and all classes derived from it are read-only after initial creation via new(). The attributes made read-only prevents the inadvertent modification of the attributes which could give rise to inconsistent catalog tags and data values. The only exception to the read-only attributes is the array used to store the Items inside a Group object. This array can be modified using the normal Perl array operators.
Sun::Solaris::Exacct::Object provides the EO_ERROR, EO_GROUP, EO_ITEM, and EO_NONE constants.
The Sun::Solaris::Exacct::Object module has no functions.
The Perl extensions to the libexacct API provide the following class method for Sun::Solaris::Exacct::Object.
The Perl extensions to the libexacct API provide the following object methods forSun::Solaris::Exacct::Object:
By default, nothing is exported from this module. The following tags can be used to selectively import constants and functions defined in this module.
|
The Sun::Solaris::Exacct::Object::Item module is used for exacct data Items. An exacct data Item is represented as an opaque reference, blessed into the Sun::Solaris::Exacct::Object::Item class, which is a subclass of the Sun::Solaris::Exacct::Object class. The underlying exacct data types are mapped onto Perl types as follows.
|
Sun::Solaris::Exacct::Object::Item has no constants.
Sun::Solaris::Exacct::Object::Item has no functions.
Sun::Solaris::Exacct::Object::Item inherits all class methods from the Sun::Solaris::Exacct::Object base class, plus the new() class method.
Sun::Solaris::Exacct::Object::Item inherits all object methods from the Sun::Solaris::Exacct::Object base class.
Sun::Solaris::Exacct::Object::Item has no exports.
The Sun::Solaris::Exacct::Object::Group module is used for exacct Group objects. An exacct Group object is represented as an opaque reference, blessed into the Sun::Solaris::Exacct::Object::Group class, which is a subclass of the Sun::Solaris::Exacct::Object class. The Items within a Group are stored inside a Perl array, and a reference to the array can be accessed via the inherited value() method. This means that the individual Items within a Group can be manipulated with the normal Perl array syntax and operators. All data elements of the array must be derived from the Sun::Solaris::Exacct::Object class. Group objects can also be nested inside each other merely by adding an existing Group as a data Item.
Sun::Solaris::Exacct::Object::Group has no constants.
Sun::Solaris::Exacct::Object::Group has no functions.
Sun::Solaris::Exacct::Object::Group inherits all class methods from the Sun::Solaris::Exacct::Object base class, plus the new class method.
Sun::Solaris::Exacct::Object::Group inherits all object methods from the Sun::Solaris::Exacct::Object base class, plus the new class method.
Sun::Solaris::Exacct::Object::Group has no exports.
The Sun::Solaris::Exacct::Object::_Array class is used internally for enforcing type checking of the data Items that are placed in an exacct Group. Sun::Solaris::Exacct::Object::_Array should not be created directly by the user.
Sun::Solaris::Exacct::Object::_Array has no constants.
Sun::Solaris::Exacct::Object::_Array has no functions.
Sun::Solaris::Exacct::Object::_Array has internal-use class methods.
Sun::Solaris::Exacct::Object::_Array uses Perl TIEARRAY methods.
Sun::Solaris::Exacct::Object::_Array has no exports.