$!----------------------------------------------------------------------------+ $! Check on utilization of page and swap files | $!----------------------------------------------------------------------------+ $ SAVERIFY = 'F$VERIFY(0)' $ TELL = "WRITE SYS$OUTPUT" $ SHOW MEMORY/FILES $ FREEPAGE = F$GETSYI("PAGEFILE_FREE") $ TOTALPAGE = F$GETSYI("PAGEFILE_PAGE") $ PCNTPAGEFREE = FREEPAGE*100/TOTALPAGE $ FREESWAP = F$GETSYI("SWAPFILE_FREE") $ TOTALSWAP = F$GETSYI("SWAPFILE_PAGE") $ PCNTSWAPFREE = FREESWAP*100/TOTALSWAP $ IF TOTALSWAP .EQ. 0 THEN PCNTSWAPFREE = "- no swap files -" $ IF TOTALPAGE .EQ. 0 THEN PCNTPAGEFREE = "- no page files -" $ TELL " (Percent free: Swap ''PCNTSWAPFREE'% Page ''PCNTPAGEFREE'%)" $ TELL "" $ IF PCNTSWAPFREE .LT. 25 .AND. TOTALSWAP .NE. 0 THEN GOSUB BAD_SWAP $ IF PCNTPAGEFREE .LT. 50 .AND. TOTALPAGE .NE. 0 THEN GOSUB BAD_PAGE $ GOTO FINISHED $ BAD_PAGE: $ PCNTPAGEUSED = 100 - PCNTPAGEFREE $ NEWSIZE = (((TOTALPAGE - FREEPAGE)*20 + 999)/1000)*100 $ TELL "WARNING: The page file is ''PCNTPAGEUSED'% full!" $ TELL "The page file should always remain at least 50% free." $ TELL "If the system is fully loaded, you should make a " +- "''NEWSIZE' block page file." $ TELL "" $ RETURN $ BAD_SWAP: $ PCNTSWAPUSED = 100 - PCNTSWAPFREE $ NEWSIZE = (((TOTALSWAP - FREESWAP)*15 + 999)/1000)*100 $ TELL "WARNING: The swap file is ''PCNTSWAPUSED'% full!" $ TELL "The swap file should always remain at least 25% free." $ TELL "If the system is fully loaded, you should make a " +- "''NEWSIZE' block swap file." $ TELL "" $ RETURN $ FINISHED: $ EXIT 1 + 0*F$VERIFY(SAVERIFY)