X-Git-Url: https://defaria.com/gitweb/?a=blobdiff_plain;f=clients%2FHP%2Fbin%2Fsysmodel;fp=clients%2FHP%2Fbin%2Fsysmodel;h=6def4b7fe57082d62c1730c9317ed7d2e9efb0b1;hb=a8c84d2892f07a6863b68a11eb0a4a79ffd71fb5;hp=0000000000000000000000000000000000000000;hpb=95384f94f88aceeb5eef2d322210ba4a438b6512;p=clearscm.git diff --git a/clients/HP/bin/sysmodel b/clients/HP/bin/sysmodel new file mode 100644 index 0000000..6def4b7 --- /dev/null +++ b/clients/HP/bin/sysmodel @@ -0,0 +1,230 @@ +#!/bin/ksh +# Oslo Feb. 2 1995 +# sys_info 1.3, a hack by Ole Kristian Foss, HPNAS, +# to display HP9000 model and the clock frequency of the CPU(s) +# Version 1.0 Oslo Jan. 25 +1995 +# Version 1.1 added call to the $SCHED_FILE. Oslo Jan. 25 +1995 +# Version 1.2 added the get_physmem function. Oslo Feb. 2 +1995 +# Version 1.3 added limited functionality for HP-UX 10.X. Oslo Feb. 28 +1995 +# Version 1.4 more robust 10.X handling. Oslo Mar. 13 +1996 +# This version should handle all cominations of +# HP-UX 9.X and 10.X as well as S700 and S800 +# +# +# Initialize variables: +ADB="adb -k" +ADB_CMD="" +MODEL="" +PA_INFO="" +PA_RISC="" +CPU_REV="" +OS_REV="" +VER="1.4" +CORES="" +PROG=`basename $0` +SCHED_FILE="/usr/lib/sched.models" +export PATH=/etc:/bin:/usr/bin +typeset -R4 ID="" +typeset -i FADB_OUT +typeset -i MHZ +typeset -i HZ +typeset -i SPEED +# +function usage +{ + print -u2 "Usage: $PROG <-h|-m> [-v]" + exit 1 +} +# +function get_os_rev +{ + OS_REV=`uname -r| cut -f2 -d"."` + case $OS_REV in + 09) CORES="/hp-ux /dev/kmem" + if /bin/hp9000s700 + then + ADB_CMD="mpproc_info+34/X" + elif /bin/hp9000s800 + then + ADB_CMD="mpproc_info+1E8/X" + else + echo "This machine is not supported by $PROG" + exit 1 + fi ;; + + 10) CORES="/stand/vmunix /dev/kmem" + ADB_CMD="_mpproc_info+270/X" ;; + + *) echo "$PROG does not support this version of HP-UX" + exit 1 ;; + esac + +} +function get_id +{ + ID=`echo $ADB_CMD | $ADB $CORES | tail -1 | cut -d: -f 2` +} +# +# +function get_model +{ + case $ID in + " 40"|0040) MODEL="840" ;; + " 80"|0080) MODEL="825" ;; + " A0"|00A0) MODEL="835/635" ;; + " B0"|00B0) MODEL="845/645" ;; + " C0"|00C0) MODEL="850" ;; + " 810"|0810) MODEL="855" ;; + " 820"|0820) MODEL="860" ;; + " 830"|0830) MODEL="865/870" ;; + 1010) MODEL="822" ;; + 1020) MODEL="832" ;; + 1040) MODEL="842" ;; + 1050) MODEL="852" ;; + 1810) MODEL="890" ;; + 1820) MODEL="891/T500" ;; + 1830) MODEL="892/T520" ;; + 2000) MODEL="720" ;; + 2010) MODEL="750" ;; + 2020) MODEL="730" ;; + 2030) MODEL="735" ;; + 2040) MODEL="755" ;; + 2060) MODEL="735/125" ;; + 2800) MODEL="817/F20" ;; + 2800) MODEL="827/H20" ;; + 2810) MODEL="837/F30" ;; + 2810) MODEL="847/G30/H30" ;; + 2810) MODEL="857/I30" ;; + 2820) MODEL="807/F10" ;; + 2830) MODEL="867/G40/H40" ;; + 2830) MODEL="877/I40" ;; + 2840) MODEL="887/G50/H50" ;; + 2840) MODEL="897/I50" ;; + 2870) MODEL="887/G70/H70" ;; + 2870) MODEL="897/I70" ;; + 2880) MODEL="887/G60/H60" ;; + 2880) MODEL="897/I60" ;; + 3000) MODEL="710" ;; + 3020) MODEL="705" ;; + 3100) MODEL="715/50" ;; + 3110) MODEL="715/33" ;; + 3120) MODEL="715s/50" ;; + 3130) MODEL="715s/33" ;; + 3140) MODEL="715t/50" ;; + 3150) MODEL="715t/33" ;; + 3160) MODEL="715/75" ;; + 3180) MODEL="725/50" ;; + 3190) MODEL="725/75" ;; + 4010) MODEL="745i/50" ;; + 4020) MODEL="742i" ;; + 4030) MODEL="745i/100" ;; + 4800) MODEL="806/E25" ;; + 4810) MODEL="816/E35" ;; + 4820) MODEL="826/E45" ;; + 4830|4831) MODEL="856/E55" ;; + 5800) MODEL="809/K100" ;; + 5810) MODEL="839/K210" ;; + 5820) MODEL="829/K400" ;; + 5830) MODEL="849/K410" ;; + 5870) MODEL="841/D210/D410" ;; + 5880) MODEL="851/D210/D4102-way" ;; + 5890) MODEL="821/D200/D400" ;; + 58A0) MODEL="831/D200/D4002-way" ;; + 58B0) MODEL="819/K200" ;; + 58C0) MODEL="859/K230" ;; + 58D0) MODEL="869/K430" ;; + 6000) MODEL="712/60" ;; + 6010) MODEL="712/80" ;; + 6020) MODEL="712/100" ;; + 6030) MODEL="743i/60" ;; + 6040) MODEL="743i/100" ;; + 60A0) MODEL="715/64" ;; + 60B0) MODEL="715/100" ;; + 60D0) MODEL="725/100" ;; + 6170) MODEL="V743i" ;; + 6180) MODEL="V743i/100" ;; + 6190) MODEL="715/80" ;; + 61A0) MODEL="811/DX5" ;; + 61B0) MODEL="801/DXO" ;; + *) MODEL="UNKNOWN" ;; + esac +} +# +function get_tics +{ + ADB_CMD="itick_per_tick/D" + FADB_OUT=`echo $ADB_CMD | $ADB $CORES | tail -1 | cut -f 2` +# + if [ $1 = "HZ" ] + then + ((HZ=$FADB_OUT * 100)) + SPEED=$HZ + else + ((MHZ=$FADB_OUT / 10000)) + SPEED=$MHZ + fi +} +# +function get_physmem +{ + ADB_CMD="physmem/D" + PHYS_MEM=`echo $ADB_CMD | $ADB $CORES | tail -1 | \ + awk '$2 > 0 { print $2 / 256 }' ` + echo "Your system has $PHYS_MEM Mbyte ram installed" +} +# +function get_painfo +{ + MODEL="`echo $MODEL|cut -f1 -d'/'`" + PA_INFO=`grep ^$MODEL $SCHED_FILE` + if [ -n "$PA_INFO" ] + then + PA_RISC="`echo $PA_INFO | cut -d' ' -f 3 `" + CPU_REV="`echo $PA_INFO | cut -d' ' -f 2 `" + echo "The PA-RISC processor(s) is of type $PA_RISC rev. +$CPU_REV" + fi +} + +## Main program ## +if [ $# -eq 0 ] +then + usage + exit 1 +fi +# +if [ `whoami` != "root" ] +then + echo "You must be root to run $PROG ! " + exit 1 +fi + +while getopts :mMhHv OPT +do case $OPT in + h|H) get_os_rev + get_id + get_model + get_tics HZ + print "Your HP9000 Model $MODEL has CPU(s) running at $SPEED Hz" + get_painfo + get_physmem + ;; + m|M) get_os_rev + get_id + get_model + get_tics MHZ + print "Your HP9000 Model $MODEL has CPU(s) running at $SPEED MHz" + get_painfo + get_physmem + ;; + v) echo "You are running version $VER of $PROG" + ;; + \?) print -u2 "$PROG: unknown option $OPTARG" + usage + esac +done