Subject : System Tuning overview

Description :

1.Performance Tuning Overview Summary

1) Ideal System

	a) High but not full CPU utilization ( 70 - 90 %)

	b) CPU Time spent in user application ( 85 + % in user )

	c) Low Disk utilization ( 5 - 15 % for each disk )

	d) Low Network utilization
	   ( 10 -30 % per network, less 5 % of collision )

2) Standard Tuning Steps

	1st. Application Tuning

	2nd. DataBase Tuning

	3rd. OS Tuning ( System Tuning )

3) Components of System Performance

	KERNEL, MEMORY, CPU, DISK(I/O), NETWORK

4) System Resources

	* CPU - number of CPUs
	* I/O Devices - disk, printer, terminal, transfer information
	* Memory - primary memory(RAM), secondary memory(disk)
	* Kernel - Kernel parameters ( /etc/system)


< Rules and Tunables Quick Reference Tables >


1.Disk I/O Rules


Table : Disk I/O Performance Rules for Sun OS 4.X
-----------------------------------------------------------------------------
         Rule for Each Disk Drive                       Level   Action
-----------------------------------------------------------------------------
(iostat -D30.util < 5%)&&(other disks white or green)   White   No Problem
-----------------------------------------------------------------------------
(iostat -D30.util < 5%)&&(other disks amber or red)     Blue    1.Idle Disk
-----------------------------------------------------------------------------
5% <= iostat -D30.util < 35%                            Green   No Problem
-----------------------------------------------------------------------------
35% <= iostat -D30.util < 65%                           Amber   2. Busy Disk
-----------------------------------------------------------------------------
65% <= iostat -D30.util                                 Red     2. Busy Disk
-----------------------------------------------------------------------------

White : Low usage
Blue : underutilization or imbalance
Green : target utilization levels or no problem
Amber : warning level
Red : critical level
Black: prevent your application from runing.

cf) iostat - report I/O statistics
SYNOPSIS
     iostat [ -cdDIt ] [ -l n ] [ disk ...  ] [ interval [  count ] ]

          -D   For each disk, report the reads per second, writes  per
               second, and percentage disk utilization.

          ex) hyundai2% iostat -D 30
                    dk0           dk1           dk2           dk3 
           rps wps util  rps wps util  rps wps util  rps wps util 
             0   0  0.7    0   0  0.4    0   0  0.3    0   0  0.1 
             0   1  1.0    0   2  3.4    0   0  0.0    0   0  0.0 
             0   0  0.7    0   3  4.8    0   0  0.0    0   0  0.1 
             0   0  0.6    0   2  3.6    0   0  0.3    0   0  0.1 
             0   0  0.6    0   4  6.2    0   0  0.0    0   0  0.1 
             0   0  0.5    0   2  3.0    0   0  0.0    0   0  0.1

     
Table : Disk I/O Performance Tules for Solaris 2
--------------------------------------------------------------------------
         Rule for Each Disk Drive                       Level   Action
--------------------------------------------------------------------------
(iostat -x30.b < 5%)&&(other disks white or green)      White   No Problem
--------------------------------------------------------------------------
(iostat -x30.b < 5%)&&(other disks amber or red)        Blue    1.Idle Disk
--------------------------------------------------------------------------
(5% <= iostat -x30.b)&&(iostat -x30.svc_t < 30ms)       Green   No Problem
--------------------------------------------------------------------------
(20%<=iostat -x30.b)&&(30ms<=iostat -x30.svc_t < 50ms)  Amber   2.Busy Disk 
--------------------------------------------------------------------------
(20%<=iostat -x30.b)&&(50ms<=iostat -x30.svc_t )        Red     2.Busy Disk 
--------------------------------------------------------------------------
(20%<=iostat -x30.b)&&(50ms<=iostat -x30.svc_t ) &&     Amber   3.Floppy/CD 
(iostat -x30.disk=="fd0" || iostat -x30.disk == "sd6")
--------------------------------------------------------------------------
0% == iostat -x30.w                                     Green   No Problem
--------------------------------------------------------------------------
0% < iostat -x30.w < 5%                                 Amber   4.SCSI Busy 
--------------------------------------------------------------------------
5% <= iostat -x30.w                                    Red      4.SCSI Busy 
--------------------------------------------------------------------------



NAME
     iostat - report I/O statistics

SYNOPSIS
     /usr/bin/iostat [ -cdDItx ] [ -l n ] [ disk ...  ]
          [ interval [ count ] ]

           -x        For each disk, report  extended  disk  statistics.
                          The output is in tabular form.

           %w        percent of time there are transactions  waiting
                          for service (queue non-empty)

           %b        percent of time the disk is busy  (transactions
                          in progress)

           svc_t     average service time, in milliseconds

ex)hyundai3% iostat -x 30
                                 extended disk statistics 
disk      r/s  w/s   Kr/s   Kw/s wait actv  svc_t  %w  %b 
fd0       0.0  0.0    0.0    0.0  0.0  0.0    0.0   0   0 
sd1       0.1  0.0    0.3    0.2  0.0  0.0  168.0   0   0 
sd3       1.4  0.5    6.0    4.1  0.0  0.1   78.7   0   2 
                                 extended disk statistics 
disk      r/s  w/s   Kr/s   Kw/s wait actv  svc_t  %w  %b 
fd0       0.0  0.0    0.0    0.0  0.0  0.0    0.0   0   0 
sd1       0.0  0.0    0.0    0.0  0.0  0.0    0.0   0   0 
sd3       0.0  0.2    0.0    1.6  0.0  0.0   60.3   0   0 
                                 extended disk statistics 
disk      r/s  w/s   Kr/s   Kw/s wait actv  svc_t  %w  %b 
fd0       0.0  0.0    0.0    0.0  0.0  0.0    0.0   0   0 
sd1       0.0  0.0    0.0    0.0  0.0  0.0    0.0   0   0 
sd3       1.1  1.9    4.8   24.4  0.0  0.1   20.0   0   4 
                                 extended disk statistics 
disk      r/s  w/s   Kr/s   Kw/s wait actv  svc_t  %w  %b 
fd0       0.0  0.0    0.0    0.0  0.0  0.0    0.0   0   0 
sd1       0.0  0.0    0.0    0.0  0.0  0.0    0.0   0   0 
sd3       0.0  0.9    0.0    7.1  0.0  0.1  139.8   0   1 
                                 extended disk statistics 
disk      r/s  w/s   Kr/s   Kw/s wait actv  svc_t  %w  %b 
fd0       0.0  0.0    0.0    0.0  0.0  0.0    0.0   0   0 
sd1       0.0  0.0    0.0    0.0  0.0  0.0    0.0   0   0 
sd3       0.0  0.8    0.0    5.1  0.0  0.1   85.8   0   1


ref)

1) Idle Disk
- Idle disk ´Â ´Ù¸¥ disk °¡ overload µÉ¶§ I/O throughput ÀÇ ³¶ºñ¸¦ ¸»ÇÑ´Ù.
  Rebalance the load or stripe this disk together with a busy one.

2) Busy Disk
- Busy or slow disk reduces system throughput and increase user response times.
  Rebalance the load or stripe this disk together with a idle one.


3) Floppy/CD
- device °¡ ´Ê°ÔµÇ´Â°ÍÀ» ¸·±âÀ§ÇØ fd0 type ÀÎ floppy ¸¦ check Ç϶ó.
  CD ´Â º¸Åë ¸Å¿ì ´ÊÀº disk À̸ç first SCSI bus »óÀÇ target number 6 ·Î ±¸¼º.
  ¸¸¾à, floppy ¿Í CD °¡ ¿À·§µ¿¾È active À̸é, ¼Óµµ°¡ ´À·ÁÁö¸ç,            
   Data ´Â ºü¸¥ disk ¿¡ ¿Å°ÜÁ®¾ß ÇÑ´Ù.

4) SCSI Busy.
- disk commands °¡ wait µÇ¸é ÀÌ°ÍÀº ¾Æ¸¶ overloaded SCSI bus ¿¡ ±âÀÎÇÑ´Ù.
  There are no direct measures of SCSI bus utilization levels.



2.Network Rules


Table : Network Performance Rules Based on Ethernet Collisions
------------------------------------------------------------------------------
         Rule or Each Network Interface                     Level   Action
------------------------------------------------------------------------------
(0 < netstat-i30.output.packets<10)&& (100*netstat -i30.    White  No problem
output.colls / netstat -i30.output.packets < 0.5%)
&& (other nets white or green)    
------------------------------------------------------------------------------
(0 < netstat-i30.output.packets<10)&& (100*netstat -i30.    Blue  1.Inactive
output.colls / netstat -i30.output.packets < 0.5%)               Net
&& (other nets amber or red)    
------------------------------------------------------------------------------
(10<= netstat-i30.output.packets)&& (0.5% <= 100*           Green  No problem
netstat -i30.output.colls / netstat -i30.output.packets 
< 2.0%)              
------------------------------------------------------------------------------
(10<= netstat-i30.output.packets)&& (2.0% <= 100*           Amber  2.Busy Net
netstat -i30.output.colls / netstat -i30.output.packets 
< 5.0%)              
------------------------------------------------------------------------------
(10<= netstat-i30.output.packets)&& (5.0% <= 100*           Red    2.Busy Net
netstat -i30.output.colls / netstat -i30.output.packets 
------------------------------------------------------------------------------
network type is not ie, le, ne, or qe; it is bf or nf.      Green  3.Not Ether 
------------------------------------------------------------------------------

ex)hyundai3#netstat -i 30
    input   le0       output           input  (Total)    output
packets errs  packets errs  colls  packets errs  packets errs  colls 
10429   0     22168   14    1      10643   0     22382   14    1     
5       0     0       0     0      5       0     0       0     0     
4       0     0       0     0      4       0     0       0     0     
2       0     0       0     0      2       0     0       0     0     
2       0     0       0     0      2       0     0       0     0
2       0     0       0     0      2       0     0       0     0     
2       0     0       0     0      2       0     0       0     0     
2       0     0       0     0      2       0     0       0     0     
2       0     0       0     0      2       0     0       0     0     
2       0     0       0     0      2       0     0       0     0     
2       0     0       0     0      2       0     0       0     0     
2       0     0       0     0      2       0     0       0     0

1) Inactive net
- An inactive network is a waste of throughput when other networks are
  overloaded. Rebalabce the load so that all networks are used more evenly.

2) Busy Net
- collisions ÀÌ ³Ê¹«¸¹Àº network  Àº throughput À» °¨¼Ò½ÃÅ°°í response time
  À» Áõ°¡½ÃŲ´Ù.ÇÒ¼öÀÖ´Ù¸é inactive networks ·Î load ¸¦ ÀϺοŰܶó.
  Add more Ethernets or upgrade to a faster interface type like FDDI,or ATM.

3) Not Ether
- ¸¶Áö¸· interface name ÀÌ e °¡ ¾Æ´Ï¸é, Ethernet ÀÌ ¾Æ´Ï´Ù. ±×·¡¼­
  collision-based network performance rule Àº »ç¿ëµÇÁö¾Ê´Â´Ù.



3.NFS Client Rules


Table : NFS Client Performance Rules
-----------------------------------------------------------------------------
         Rule for Each NFS Client                       Level   Action
-----------------------------------------------------------------------------
0 == nfsstat -rc.calls                                  White  No Client NFS
-----------------------------------------------------------------------------
nfsstat -rc.timeout < 0.05 * nfsstat -rc.calls          Green  No Problem
-----------------------------------------------------------------------------
0.05 * nfsstat -rc.calls <= nfsstat -rc.timeout &&      Red    1.Bad Net
nfsstat -rc.badxid == 0
-----------------------------------------------------------------------------
0.05 * nfsstat -rc.calls <= (nfsstat -rc.timeout ==     Red    2.Slow NFS 
nfsstat -rc.badxid) 
-----------------------------------------------------------------------------

ex)hyundai3# nfsstat -rc

Client rpc:
calls      badcalls   retrans    badxids    timeouts   waits      newcreds   
121        0          0          0          0          0          0          
badverfs   timers     toobig     nomem      cantsend   bufulocks  
0          3          0          0          0          0          


1) Bad net
- Packets are not making it to or from the NFS server.
  Fix the network H/W or reduce NFS packet sizes.

2) slow NFS
- NFS server °¡ ³Ê¹«´À·Á client ·Î ºÎÅÍ time-out ÈÄ¿¡ Áߺ¹µÈ requests °¡
  ¼öÇàµÇ¹Ç·Î client ÀÇ time-out À» Áõ°¡Ç϶ó.


 
4.Memory Rules


Table : Virtual memory Rules for SunOS 4
---------------------------------------------------------------------------
         Virtual Memory Rule                   Level         Action
---------------------------------------------------------------------------
100000k <= pstat -s.available                  White         1.Swap Waste
---------------------------------------------------------------------------
10000k <= pstat -s.available< 100000k          Green         No Problem
---------------------------------------------------------------------------
4000k <= pstat -s.available< 10000k            Amber         2.Swap Low 
---------------------------------------------------------------------------
1000k <= pstat -s.available< 4000k             Red           2.Swap Low
---------------------------------------------------------------------------
pstat -s.available < 1000k                     Black         3.No Swap
---------------------------------------------------------------------------



Table : Virtual memory Rules for Solaris 2
---------------------------------------------------------------------------
         Virtual Memory Rule                   Level         Action
---------------------------------------------------------------------------
100000k <= vmstat30.swap                       White         1.Swap Waste
---------------------------------------------------------------------------
10000k <= vmstat30.swap < 100000k              Green         No Problem
---------------------------------------------------------------------------
4000K <= vmstat30.swap < 10000k                Amber         2.Swap Low
---------------------------------------------------------------------------
1000K <= vmstat30.swap < 4000k                 Red           2.Swap Low
---------------------------------------------------------------------------
vmstat30.swap < 1000k                          Black         3.No Swap 
---------------------------------------------------------------------------

ex)hyundai3# vmstat 30
 procs     memory            page            disk          faults      cpu
 r b w   swap  free  re  mf pi po fr de sr f0 s1 s3 --   in   sy   cs us sy id
 0 0 0  63708  6920   0   5  6  3  3  0  1  0  0  1  0   83  206   59  1  2 97
 0 0 0  67656  6604   0   0  0  0  0  0  0  0  0  0  0   18  118   93  0  1 99
 0 0 0  67656  6604   0   0  0  0  0  0  0  0  0  0  0   11   91   69  0  1 99
 0 0 0  67656  6604   0   0  0  0  0  0  0  0  0  0  0    1    3   13  0  0 100
 0 0 0  67656  6604   0   0  0  0  0  0  0  0  0  0  0   15  121   89  0  1 99
 0 0 0  67656  6604   0   0  0  0  0  0  0  0  0  0  0   17  133   94  0  1 99
 0 0 0  67656  6604   0   0  0  0  0  0  0  0  0  0  0   18  168  104  0  1 99
 0 0 0  67656  6600   0   0  0  0  0  0  0  0  0  0  0   12   92   73  0  1 99
 0 0 0  67656  6600   0   0  0  0  0  0  0  0  0  0  0  559   25   26  0  2 98
 0 0 0  67656  6600   0   0  0  0  0  0  0  0  0  0  0   44  203  160  0  1 99

- Sun»ó¿¡¼­ paging Àº vmstat ¶Ç´Â sar ¿¡ ÀÇÇؼ­ monitoring µÈ´Ù. sar °¡ 
  ´õ information À» logging Çϴµ¥´Â ³ªÀ»Áö¸ð¸£³ª vmstat °¡ ´õ °£°áÇÏ°í
   interactive user ¸¦ À§Çؼ­´Â more information À» °¢ line ¿¡ Àß Ç¥½ÃÇÑ´Ù.
  SunOS 4 version Àº free swap space ¸¦ º¸¿©ÁÖÁö ¾ÊÀ¸¸ç avm field ´Â Ç×»ó
  0 ¸¦ ³ªÅ¸³½´Ù.

* Runnable Queue: vmstat procs r and sar -q runq-sz, runocc

                  ÇϳªÀÇ system ÀÌ ´õ ¸¹Àº CPU power ¸¦ ÇÊ¿ä·Î ÇÏ´ÂÁö °áÁ¤ÇÒ¶§
                  »ç¿ëµÇ¾îÁö´Â Áß¿äÇÑ ¼ö´ÜÀÌ´Ù. ÇϳªÀÇ process °¡ ¼öÇàµÇ·Á°íÇÒ
                  ¶§, ¼öÇàµÉ free CPU °¡ ¾ø´Ù¸é, ±× process ´Â ÀÌ queue ¿¡¼­
                  ±â´Ù·Á¾ß¸¸ ÇÑ´Ù. ÀÌ°ÍÀº Á¡½É½Ã°£¿¡ ÀºÇà¿¡ service ¸¦ ¹Þ±âÀ§ÇØ
                  ÁÙÀ» ¼­´Â°Í°ú °°°í À̶§, ´õ¸¹Àº ÀºÇà¿øÀÌ ÀÖ´Ù¸é ±× line Àº
                  »¡¸®¿òÁ÷ÀÌ°í line Àº OK °¡ µÈ´Ù. 
                  Multiprocessor machine ¿¡¼­´Â queue °¡ uniprocessor º¸´Ù ´õ
                  »¡¸® ºñ¿öÁø´Ù. ´ëÃæÃøÁ¤µÈ service time Àº  cput ¼ö¸¦ queue ·Î
                  ³ª´« ±æÀÌ°¡ µÉ°ÍÀÌ´Ù. ÇϳªÀÇ CPU time slice ´Â 50 ¿¡¼­ 100 ms
                  À̸ç 4 °³ÀÇ time-slices ¿¡ À̸£´Â service time ÀÌ º¸Åë
                  ±âÁØ¿¡ ¸Â´Â performance ·Î Àνĵɼö°¡ ÀÖ´Ù.

* Blocked Queue: vmstat procs b

                  ÀÌ°ÍÀº ÇöÀç runÇϱâÀ§ÇØ ´ë±âÇÏ°í ÀÖ´Â process À̸ç resources 
                  ¿¡ block µÇ¾îÀÖ´Ù.(pagind, I/O, and so forth)

* Swapped Queue : vmstat proces w and sar -q swpq-sz, swpocc

                  ÀÌ°ÍÀº RAM ÀÇ ºÎÁ·À¸·Î swapped out µÇ¾îÀÖ´Â process ÀÇ ¼öÀÌ´Ù.                  
* Swap Space: vmstat swap, sar -r freeswap and swap -s

                  vmstat ÀÇ swap Àº available swap À» Kbytes ·Î ³ªÅ¸³½´Ù.
hyundai3% vmstat 2
 procs     memory            page            disk          faults      cpu
 r b w   swap  free  re  mf pi po fr de sr f0 s1 s3 s6   in   sy   cs us sy id
 0 0 0  64244  2724   0   4  2  0  0  0  0  0  0  1  0   62   93   49  0  1 99
 0 0 0  65148  2252   0   4  0  0  0  0  0  0  0  0  0   34  198   98  2  0 98

Chyundai3% sar -r 2

SunOS hyundai3 5.4 Generic_Patch sun4m    12/11/95

16:08:31 freemem freeswap
16:08:33     526   129968

hyundai3% swap -s
total: 29460k bytes allocated + 10616k reserved = 40076k used, 65168k available

                  sar -r freeswap Àº 512-byte blocks ·Î swap space ¸¦ ³ªÅ¸³¿.
                    
* Free Memory: vmstat free and sar -r freemem

               vmstat ´Â free memory ¸¦ Kbytes ·Î º¸°íÇÑ´Ù. ÀÌ°ÍÀº ÇϳªÀÇ
               process °¡  ±¸µ¿Çϰųª ´õ ¸¹Àº memory ¸¦ ÇÊ¿ä·ÎÇÒ°æ¿ì¸¶´Ù
               Áï½Ã »ç¿ë°¡´ÉÇÑ RAM ÀÇ pages ÀÌ´Ù. sar ´Â freemem À¸·Î pages 
               ´ÜÀ§·Î º¸°íµÊ. ÀÌ º¯¼öÀÇ Àý´ë°ªÀº Àǹ̰¡ ¾ø°í ´Ù¸¥ kernel 
               thresholds ¿¡ »ó´ëÀûÀÌ´Ù.


* Reclaims: vmstat re

              free list  ·ÎºÎÅÍ ¿äûµÈ pages ÀÇ ¼öÀÌ´Ù. Page 200 ÂüÁ¶.

* Minor Faults: vmstat mf and sar -p vflt

              minor faults ´Â address space ¶Ç´Â H/W address translation fault
              ¿¡ ÀÇÇØ ¹ß»ýµÈ´Ù.

* Other Fault Types:sar -p pflt, slock, vmstat -s copy-on-write, zero fill

  hyundai3% vmstat -s
        0 swap ins
        0 swap outs
        0 pages swapped in
        0 pages swapped out
    60401 total address trans. faults taken
     4185 page ins
        0 page outs
     7331 pages paged in
        0 pages paged out
     1676 total reclaims
     1676 reclaims from free list
        0 micro (hat) faults
    60401 minor (as) faults
     3896 major faults
    15431 copy-on-write faults
    17651 zero fill page faults
        0 pages examined by the clock daemon
        0 revolutions of the clock hand
        0 pages freed by the clock daemon
      578 forks
       69 vforks
      719 execs
   195165 cpu context switches
   771716 device interrupts
    81319 traps
  1220654 system calls
    76683 total name lookups (cache hits 92%)
       64 toolong
    10591 user   cpu
    38152 system cpu
   800334 idle   cpu
    25045 wait   cpu

               ¸¹Àº Á¾·ùÀÇ page faults °¡ ÀÖ´Ù. "segmentation violation core
               dump" messages ¸¦ ³»´Â illegal accesses ¿¡ ÀÇÇØ ¾ß±âµÇ´Â 
               Protection faults °¡ ÀÖ´Ù. ÀüüÀûÀÎ fault types Àº vmstat -s 
               ¿¡ ÀÇÇØ report µÈ´Ù.

*  Attach To Existing Pages: vmstat at and sar -p atch
     
              ÀÌ°ÍÀº ´Ù¸¥ processes  ¿¡ ÀÇÇØ ÀÌ¹Ì »ç¿ëÁßÀÎ °øÀ¯ pages ¿¡ 
              attach µÈ ¼ö ¸¦ ¸»ÇÑ´Ù. (1.X)

* Pages Swapped In: vmstat -S si and sar -w swpin, bswin

              vmstat -S si ´Â number of Kbytes/s swapped in À» ¸»ÇÑ´Ù.
              sar -w bswin Àº 512-byte blocks swapped in À» ¸»ÇÑ´Ù.

* Pages Swapped Out: vmstat so and sar -w swpot, bswot

              vmstat -S so ´Â number of Kbytes/s swapped out À» ¸»ÇÑ´Ù.
              sar -w bswin Àº 512-byte blocks swapped out À» ¸»ÇÑ´Ù.

* Pages Paged In: vmstat pi and sar -p pgin, ppgin

              vmstat pi ´Â Kbytes/s ÀÇ ¼ö¸¦ ³ªÅ¸³»°í  sar ´Â swap space 
              ¶Ç´Â file system ¿¡¼­ paged µÈ pages ÀÇ ¼ö ¿Í page faults ÀÇ
              ¼ö ¸¦ ³ªÅ¸³¿. file system block size °¡ 8 K À̹ǷÎ
              Á¾Á¾ 2 Page ¶Ç´Â 8 K °¡ page fault ´ç page µÈ´Ù.

* Pages Freed: vmstat fr and sar -g pgfree

             Pages freed ´Â page scanner daemon ¿¡ ÀÇÇØ memory°¡ free list·Î
             µé¾î°¡°ÔµÇ´Â ºñÀ²À» ¸»ÇÑ´Ù.
             fr Àº ÃÊ´ç freed µÇ´Â Kbytes À̸ç sar -g pgfree ´Â ÃÊ´ç freed 
             µÇ´Â page  ¼ö ÀÌ´Ù.
            

 
1) Swap Waste
- You have a lot of unused swap space

2) Swap Low
- ³²¾ÆÀÖ´Â swap ÀÌ ¸¹Áö¾Ê´Ù. ±×·¡¼­ ½Ã½ºÅÛÀº ¾Æ¸¶ virtual memory °¡ 
  ¹Ù´Ú³¯°ÍÀÌ´Ù. ½Ã½ºÅÛ»ó¿¡¼­ µ¹¾Æ°¡´Â program ÀÇ Å©±â³ª ¼ö¸¦ ÁÙÀ̰ųª
  ¶Ç´Â ¿ÏÀüÈ÷ °í°¥µÇ±âÀü¿¡ swap space ¸¦ ´õ ´Ã·Á¶ó.
  P4: Swap space
  - ´ëºÎºÐÀÇ Application vendor ´Â ±×µéÀÇ application ÀÌ ÇÊ¿ä·ÎÇÏ´Â
    swap space ¸¦ ¸»ÇØÁÙ¼ö°¡ ÀÖ´Ù. ¸¸¾à¿¡ ´ç½ÅÀÌ ´ç½ÅÀÌ ÇÊ¿äÇÑ swap space °¡
    ¾ó¸¶³ª ÇÊ¿äÇÑÁö¸¦ ¾Ë¼ö°¡ ¾ø´Ù¸é ÃÖ¼ÒÇÑ ½ÃÀÛÀ¸·Î 64M ÀÇ virtual memory ¸¦
    ±¸¼ºÇ϶ó. ³ªÁß¿¡ ´õ ´ÃÀÌ¸é µÇ¹Ç·Î ¸ÕÀú ¸¹ÀÌ ÀâÁö¸¶¶ó.
    SunOS 4  ¿¡¼­´Â ´ç½ÅÀÇ swap space ´Â RAM º¸´Ù Ä¿¾ß¸¸ µÇ¾ú°í ÃÖ¼ÒÇÑ
    64MB ÀÇ swap space °¡ ÇÊ¿äÇßÀ½.
    Solaris 2 swap space ´Â RAM size ¿Í 64MB ÀÇ Â÷ÀÌ°¡ µÇ¾î¾ß¸¸ ÇÑ´Ù.
    Áï, 16M RAM Àº 48MB swap, 32 M RAM Àº 32 swap, 64M or ±× ÀÌ»óÀÇ RAM ¿¡´Â
    swap Àº ÇÊ¿ä°¡ ¾ø´Ù. ¸¸¾à, ´ç½ÅÀÇ application vendor °¡ solaris 2 
    applciation Àº 64 MB ÀÇ RAM °ú 128 MB ÀÇ swap ÀÌ ÇÊ¿äÇÏ´Ù¸é ÀÌ°ÍÀº
    192 MB ÀÇ virtual memory °¡ µÈ´Ù. µû¶ó¼­ ´ç½ÅÀº 96 MB ÀÇ RAM °ú 96 MB 
    ÀÇ swap size °¡ ÇÊ¿äÇϸç, ¸¸¾à ´ç½ÅÀÇ ½Ã½ºÅÛÀÌ swap space °¡ ¸ðÀÚ¶ó¸é
    swap file À» ´Ã¸®°Å³ª RAM À» ´Ã·Á¾ß µÊ. 

3) No Swap
- ½Ã½ºÅÛÀº ½ÇÁ¦ÀûÀ¸·Î swap space °¡ °í°¥µÊ. ÇÁ·Î±×·¥Àº fail or hang .
  swap space ¸¦ ´õ ´ÃÀ̰ųª Áï½Ã applications À» Á׿©¶ó.


Table : Physical memory Rules for SunOS 4 and Solaris 2
---------------------------------------------------------------------------
         Physical Memory Rule                    Level         Action
---------------------------------------------------------------------------
vmstat30.sr == 0                                 White         1.RAM Waste
---------------------------------------------------------------------------
0 < vmstat30.sr < 200                            Green         No Problem
---------------------------------------------------------------------------
200 < vmstat30.sr < 300                          Amber         2. RAM Low
---------------------------------------------------------------------------
300 < vmstat30.sr                                Red           2. RAM Low
---------------------------------------------------------------------------

1) RAM Waste
- You have more RAM than you need.
  The system does not even need to reclaim inactive pages.

2) RAM Low
- The system is scanning through memory looking for pages to free at a 
  high rate. This indicates that, as well as inactive pages, active pages
  may be stolen from processes.


Table : kernel memory Rules for Solaris 2
---------------------------------------------------------------------------
         Kernel Memory Rule                             Level   Action
---------------------------------------------------------------------------
((0 < sar-k1.sml_mem.fail)||(0