HP OpenVMS Systemsask the wizard |
The Question is:
I am trying to obtain SID using
$ x = f$getsyi("SID")
$ sh sym x
X = -2147483648 Hex = 80000000
Always getting -1. IS "SID" not valid on ALPHA archtecture? If not, what can
be used to uniquely identify the hardware box being used.
The Answer is :
The SID is not reliably unique on OpenVMS VAX, nor on OpenVMS Alpha,
nor will the value be unique on OpenVMS on Intel Itanium systems.
The SID is the System Identification, and specifically a value that
is intended to identify the system or processor family -- the SID is
not useful as a serial number, even on those few systems that place
unique, or backplane- or console-settable values in the low three
bytes of the system.
The only architected portion of the SID is the uppermost byte. The
lower three bytes are specific to particular VAX implementations.
Details are in the VAX architecture handbook and related materials.
Per the OpenVMS documentation for SYI$_SID:
"Returns the contents of the system identification register
of the node.
On Alpha systems, SYI$_SID returns a value in which all fields
are 0 except the CPU-type field, which always contains the
value 256."
The OpenVMS Frequently Asked Questions section entitled "How do I get
a unique system id for licensing purposes?" will be of interest here.
On recent OpenVMS versions, the system service $CREATE_UID may be of
interest. Depending on the particular purpose of the identification,
the $getsyi items SYI$_HW_NAME and SYI$_HW_MODEL may be of interest.
The best specific approach and mechanisms useful depend highly on the
purpose for the identification, and that was unfortunately not stated.
|