Solaris Resource Manager
3
For more details on these characteristics, please see the documentation listed in the
Resources section.
By default, every lnode (process group) is associated with a UNIX
user ID (UID),
often referred to as a user. In order for the lnode to function correctly, every lnode
that is active on the system has to be set up with all the right privileges assigned
to it. By default, an lnode is associated with a UID, so Solaris Resource Manager
software is used to manage the resources assigned to different users on a given
system. In this way, an administrator can configure the lnodes so that their
corresponding users get the resources to which they are entitled.
A UID and an lnode are loosely coupled, and it is possible to start an application
with UID foo under the lnode bar. This will result in the application having file
read/write privileges associated with UID foo, however, the resource privileges
are associated with lnode bar.
Note that all user lnodes (and additional lnodes) must be set up by the administra-
tor. If a user logs in and there is no lnode set up for that user (no privileges), the user
will be assigned a default setting, which may not be desirable. The administrator
does this setup after the basic installation to customize it for that particular system.
CPU Shares
Every lnode must have CPU shares assigned to it. These shares are similar to stocks
on Wall Street. The amount a user owns in a resource is the amount of shares
assigned to the user divided by the total shares outstanding. When shares are added
or taken away, the value of each share changes accordingly. In the case of Solaris
Resource Manager software, the resource is CPU cycles.
The advantage of assigning shares rather than a percentage is that the shares do not
have to add up to 100 percent. This means that it is easier for the administrator to
add or remove an lnode, or give more resources to an lnode.
After the administrator has assigned shares, the system puts them into practice. It
does this by adding a scheduling class to the system, called the fair share scheduler
(SHR). This scheduler works alongside the time-share (TS) and interactive (IA)
classes. It controls only the user processes with global priorities between 0 and 59.
This means that kernel processes running under the system (SYS, global priority 60-
99), real-time (RT, global priority 100-159), and interrupt (global priority 160-169)
classes aren't controlled by Solaris Resource Manager software.
It is important to note that even though the SHR class works alongside the TS and
IA classes, it is not advisable to have processes running in the SHR class while other
processes are running in the TS and IA classes because this could produce some
unexpected results.