System Administration Guide: Resource Management and Network Services

FSS Configuration Examples

As with other scheduling classes in the Solaris environment, commands to set the scheduler class, configure the scheduler's tunable parameters, and configure the properties of individual processes can be used with FSS.

How to Set the Scheduler Class

Use the dispadmin command to set FSS as the default scheduler for the system.


# dispadmin -d FSS

This change takes effect on the next reboot. After reboot, every process on the system runs in the FSS scheduling class.

How to Manually Move Processes From the TS Into the FSS Class

You can manually move processes from the TS scheduling class into the FSS scheduling class without changing the default scheduling class and rebooting.

  1. Become superuser.

  2. Move the init process (pid 1) into the FSS scheduling class.


    # priocntl -s -c FSS -i pid 1
    
  3. Move all processes from the TS scheduling class into the FSS scheduling class.


    # priocntl -s -c FSS -i class TS
    

All processes again run in the TS scheduling class after reboot.

How to Manually Move Processes From all User Classes Into the FSS Class

You might be using a default class other than TS. For example, your system might be running a window environment that uses the IA class by default. You can manually move all processes into the FSS scheduling class without changing the default scheduling class and rebooting.

  1. Become superuser.

  2. Move the init process (pid 1) into the FSS scheduling class.


    # priocntl -s -c FSS -i pid 1
    
  3. Move all processes from their current scheduling classes into the FSS scheduling class.


    # priocntl -s -c FSS -i all
    

All processes again run in the default scheduling class after reboot.

How to Move a Project's Processes Into the FSS Class

You can manually move processes in a particular project from their current scheduling class to the FSS scheduling class.

  1. Become superuser.

  2. Move processes that run in project ID 10 to the FSS scheduling class.


# priocntl -s -c FSS -i projid 10

The project's processes again run in the default scheduling class after reboot.

How to Tune Scheduler Parameters

You can use the dispadmin command to examine and tune the FSS scheduler's time quantum value. Time quantum is the amount of time that a thread is allowed to run before it must relinquish the processor. To display the current time quantum for the FSS scheduler, type the following:


$ dispadmin -c FSS -g
#
# Fair Share Scheduler Configuration
#
RES=1000
#
# Time Quantum
#
QUANTUM=110

When you use the -g option, you can also use the -r option to specify the resolution that is used for printing time quantum values. If no resolution is specified, time quantum values are displayed in milliseconds by default. Type the following:


$ dispadmin -c FSS -g -r 100
#
# Fair Share Scheduler Configuration
#
RES=100
#
# Time Quantum
#
QUANTUM=11

To set scheduling parameters for the FSS scheduling class, use dispadmin -s. The values in file must be in the format output by the -g option. These values overwrite the current values in the kernel. Type the following:


$ dispadmin -c FSS -s file

References

For more information on how to use the FSS scheduler, see priocntl(1), ps(1), dispadmin(1M), and FSS(7).