The following figure shows the resource control sets associated with tasks, processes and a project.
More than one resource control can exist on a resource, each resource control at a containment level in the process model. Resource controls can be active on the same resource for both a process and collective task or collective project. In this case, the action for the process takes precedence. For example, action is taken on process.max-cpu-time before task.max-cpu-time if both controls are encountered simultaneously.
Resource controls associated with a project include the following:
Absolute limit on the amount of CPU resources that can be consumed by a project. A value of 100 means 100 percent of one CPU as the project.cpu-cap setting. A value of 125 is 125 percent, because 100 percent corresponds to one full CPU on the system when using CPU caps.
The number of CPU shares that are granted to this project for use with the fair share scheduler, FSS(7).
Total amount of kernel memory that can be used by libpkcs11 for hardware crypto acceleration. Allocations for kernel buffers and session-related structures are charged against this resource control.
Total amount of physical locked memory allowed.
Note that this resource control replaced project.max-device-locked-memory, which has been removed.
Maximum number of System V message queues allowed for a project.
Maximum allowable number of event ports.
Maximum number of semaphore IDs allowed for a project.
Maximum number of shared memory IDs allowed for this project.
Maximum number of message queue IDs allowed for this project.
Total amount of System V shared memory allowed for this project.
Maximum number of LWPs simultaneously available to this project.
Maximum number of tasks allowable in this project.
Maximum number of contracts allowed in this project.
Resource controls associated with tasks include the following:
Maximum CPU time (seconds) available to this task's processes.
Maximum number of LWPs simultaneously available to this task's processes.
Resource controls associated with processes include the following:
Maximum amount of address space (bytes), as summed over segment sizes, available to this process.
Maximum size (bytes) of a core file that is created by this process.
Maximum CPU time (seconds) available to this process.
Maximum file descriptor index that is available to this process.
Maximum file offset (bytes) available for writing by this process.
Maximum number of messages on a message queue. This value is copied from the resource control at msgget() time.
Maximum number (bytes) of messages on a message queue. This value is copied from the resource control at msgget() time.When you set a new project.max-msg-qbytes value, initialization occurs only on the subsequently created values. The new project.max-msg-qbytes value does not effect existing values.
Maximum number of semaphores allowed for a semaphore set.
Maximum number of semaphore operations that are allowed for a semop() call. This value is copied from the resource control at msgget() time.A new project.max-sem-ops value only affects the initialization of subsequently created values and has no effect on existing values.
Maximum number of events that are allowed per event port.
Zone-wide resource controls are available on a system with zones installed. Zone-wide resource controls limit the total resource usage of all process entities within a zone.
Absolute limit on the amount of CPU resources that can be consumed by a non-global zone. A value of 100 means 100 percent of one CPU as the project.cpu-cap setting. A value of 125 is 125 percent, because 100 percent corresponds to one full CPU on the system when using CPU caps.
Limit on the number of fair share scheduler (FSS) CPU shares for a zone. The scheduling class must be FSS. CPU shares are first allocated to the zone, and then further subdivided among projects within the zone as specified in the project.cpu-shares entries. A zone with a higher number of zone.cpu-shares is allowed to use more CPU than a zone with a low number of shares.
Total amount of physical locked memory available to a zone.
Maximum number of LWPs simultaneously available to this zone
Maximum number of message queue IDs allowed for this zone
Maximum number of semaphore IDs allowed for this zone
Maximum number of shared memory IDs allowed for this zone
Total amount of shared memory allowed for this zone
Total amount of swap that can be consumed by user process address space mappings and tmpfs mounts for this zone.
For information on configuring zone-wide resource controls, see Chapter 17, Non-Global Zone Configuration (Overview), in System Administration Guide: Solaris Containers-Resource Management and Solaris Zones and Chapter 18, Planning and Configuring Non-Global Zones (Tasks), in System Administration Guide: Solaris Containers-Resource Management and Solaris Zones. Note that it is possible to use the zonecfg command to apply a zone-wide resource control to the global zone on a system with non-global zones installed.