Annotation of researchv9/cmd/compress/usermem, revision 1.1

1.1     ! root        1: : This shell script snoops around to find the maximum amount of available
        !             2: : user memory.  These variables need to be set only if there is no
        !             3: : /usr/adm/messages.  KMEM, UNIX, and CLICKSIZE can be set on the command
        !             4: : line, if desired, e.g. UNIX=/unix
        !             5: KMEM=/dev/kmem         # User needs read access to KMEM
        !             6: UNIX=
        !             7: # VAX                  CLICKSIZE=512,  UNIX=/vmunix
        !             8: # PDP-11               CLICKSIZE=64,   UNIX=/unix
        !             9: # CADLINC 68000                CLICKSIZE=4096, UNIX=/unix
        !            10: # Perkin-Elmer 3205    CLICKSIZE=4096, UNIX=/edition7
        !            11: # Perkin-Elmer all others, CLICKSIZE=2048, UNIX=/edition7
        !            12: CLICKSIZE=4096
        !            13: eval $*
        !            14: 
        !            15: SIZE=0
        !            16: if test -r /usr/adm/messages   # probably the most transportable
        !            17: then
        !            18:     SIZE=`grep avail /usr/adm/messages | sed -n '$s/.*[        ]//p'`
        !            19: fi
        !            20: 
        !            21: if test 0$SIZE -le 0           # no SIZE in /usr/adm/messages
        !            22: then
        !            23:     if test -r $KMEM           # Readable KMEM
        !            24:     then
        !            25:        if test -n "$UNIX"
        !            26:        then
        !            27:            : User must have specified it already.
        !            28:        elif test -r /vmunix
        !            29:        then
        !            30:            UNIX=/vmunix
        !            31:            CLICKSIZE=512       # Probably VAX
        !            32:        elif test -r /edition7
        !            33:        then
        !            34:            UNIX=/edition7
        !            35:            CLICKSIZE=2048      # Perkin-Elmer: change to 4096 on a 3205
        !            36:        elif test -r /unix
        !            37:        then
        !            38:            UNIX=/unix          # Could be anything
        !            39:        fi
        !            40:        if test -n "$UNIX"
        !            41:        then
        !            42:            SIZE=`echo maxmem/D | adb $UNIX $KMEM | sed -n '$s/.*[      ]//p'`
        !            43:            if test 0$SIZE -le 0
        !            44:            then
        !            45:                SIZE=`echo physmem/D | adb $UNIX $KMEM | sed -n '$s/.*[         ]//p'`
        !            46:            fi
        !            47:            SIZE=`expr 0$SIZE '*' $CLICKSIZE`
        !            48:        fi
        !            49:     fi
        !            50: fi
        !            51: 
        !            52: case $UNIX in
        !            53:     /vmunix)           # Assume 4.2bsd: check for resource limits
        !            54:        MAXSIZE=`csh -c limit | awk 'BEGIN      { MAXSIZE = 1000000 }
        !            55: /datasize|memoryuse/ && NF == 3        { if ($2 < MAXSIZE) MAXSIZE = $2 }
        !            56: END    { print MAXSIZE * 1000 }'`
        !            57:        if test $MAXSIZE -lt $SIZE
        !            58:        then
        !            59:            SIZE=$MAXSIZE
        !            60:        fi
        !            61:        ;;
        !            62: esac
        !            63: 
        !            64: if test 0$SIZE -le 0
        !            65: then
        !            66:     echo 0;exit 1
        !            67: else
        !            68:     echo $SIZE
        !            69: fi

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.