> The item codes:
> POWER_VECTOR, TEMPERATURE_VECTOR, THERMAL_VECTOR, and FAN_VECTOR
> are defined in syidef.h for recent VMS and C versions.  However, that 
> doesn't mean the underlying hardware and supporting cpu routines know how to 
> serve up this info.  Unfortunately, $getsyi will fail if even one of the 
> item codes you give it is not implemented by the executive, and when 
> VMS::System tries to give you all system items it's an all-or-nothing 
> proposition; it only looks to see if the item codes are defined and does not 
> check to see if the implied operations can be performed on the hardware in 
> question.  For example, on an EV45 system at 7.2-1, I see:
> 
> $ perl -e "use VMS::System; print $^E unless 
>defined(VMS::System::get_all_sys_info_items());"
> %SYSTEM-E-NOT_LOADED, system service or exec routine is not loaded
> 
> Does anyone know what the specific requirements are on the availability of 
> these item codes?  
    
 this I don't know exactly. I thought it was EV6x and up.
    
> Is it simply EV6* and later processors?  Also, are there 
> any C macros that reveal the underlying processor?  

 perhaps look at:
 
    http://www.openvms.compaq.com/wizard/swdev/ALPHA_IMPLVER_AMASK_FEATURES.C

> If not, how else could a C program/perl extension determine this?

 hack: 
 
 $! DS20 EV6
 $ PIPE CC/DECC/ARCH=HOST/LIST=SYS$OUTPUT SYS$EXAMPLES:CLASS.C | SEARCH SYS$PIPE 
HARDWARE 
 Hardware: /ARCHITECTURE=EV6 /OPTIMIZE=TUNE=EV6
 
 $! PWS 500au, EV56
 $ PIPE CC/DECC/ARCH=HOST/LIST=SYS$OUTPUT SYS$EXAMPLES:CLASS.C | SEARCH SYS$PIPE 
HARDWARE 
 Hardware: /ARCHITECTURE=EV56 /OPTIMIZE=TUNE=EV56

Reply via email to