|
The functions in this library define the interface for reading and writing resource pools configuration files, as well as that for commiting an existing configuration to becoming the running OS configuration (with respect to partitioning subsystems). The <pool.h>
header provides type and function declarations for all library services.
The resource pools facility brings together process-bindable resources into a common abstraction called a pool. Processor sets and other entities can be configured, grouped, and labelled in a persistent fashion such that workload components can be associated with a subset of a system's total resources.
The libpool library provides a C language API for accessing this functionality, while pooladm(1M), poolbind(1M), and poolcfg(1M) make this facility available through command invocations
from a shell. Each of those manual pages describes aspects of the pools facility; this page describes the properties available to the various entities managed within the pools facility. These entities include the system, pools, and the pset resources for processor sets.
Each active entity within the resource pools framework can have an arbitrary collection of named, typed properties associated with it. Properties supported by the pools framework are listed, with descriptions, under each entity below. In general, resource properties may be one of five types: boolean,
signed and unsigned integers, floating point, and string values.
All entities and resources support a string property for commenting purposes; this property is available for use by management applications to record descriptions and other administrator oriented data. The comment field is not used by the default pools commands, except when a configuration is initiated
by the poolcfg utility, in which case an informative message is placed in the system.comment property for that configuration.
System
|
Property name | Type | Description |
system.bind-default | boolean | If specified pool not found, bind to pool with 'pool.default' property set to true. |
system.comment | string | User description of system. |
system.version | int | libpool version required to manipulate this configuration. |
The system.bind-default and system.comment properties are writable; the system.version property is not.
|
Pools
|
Property name | Type | Description |
pool.active | boolean | Mark this pool as active, if true. |
pool.comment | string | User description of pool. |
pool.default | boolean | Mark this pool as the default pool, if true; see system.bind-default property. |
pool.importance | int | Relative importance of this pool; for possible resource dispute resolution. |
pool.name | string | User name for pool; used by setproject3PROJECT
as value for 'project.pool' project attribute in project4 database. |
pool.scheduler | string | Scheduler class to which consumers of this pool will be bound. This property is optional and if not specified, the scheduler bindings for consumers of this pool are not affected. |
All of the above listed properties are writable.
|
Processor Sets
|
Property name | Type | Description |
pset.comment | string | User description of resource. |
pset.default | boolean | Marks default processor set. |
pset.escapable | boolean | Represents whether PSET_NOESCAPE is set for this pset (see pset_setattr2) |
pset.max | uint | Maximum number of CPUs permitted in this processor set. |
pset.min | uint | Minimum number of CPUs permitted in this processor set. |
pset.name | string | User name for resource. |
pset.size | uint | Current number of CPUs in this processor set. |
pset.sys_id | int | System-assigned processor set ID. |
pset.type | string | Names resource type; value for all processor sets is pset. |
pset.units | string | Identifies meaning of size-related properties; value for all processor sets is population. |
The pset.comment, pset.default, pset.escapable, pset.max, pset.min, pset.min, and pset.name properties are writable; the pset.size, pset.sys_id, pset.type, and pset.units properties are not.
|
|