Seymour is right that we have had subchannel numbers since 1983 instead of 
device addresses, but we have also had device numbers since 1983.  And we still 
have device addresses, but the device address is now only one byte long and the 
subchannel and device numbers are two bytes long.

As John Gilmore explained in an earlier post, we used to have 12-bit device 
addresses composed of three parts, the channel number, control unit number 
within the channel, and device number within the control unit within the 
channel.  Beginning in 1983 with MVS/XA, within the processor architecture, as 
described by the PoOps, we have had device numbers and subchannel numbers.  
"Device address" now refers to an 8-bit number that specifies one of 256 
possible devices within a DASD logical control unit, one or more of which may 
be contained with a physical control unit, DASD subsystem, Storage processor, 
etc.  The device "address" appears in the sense data within certain I/O error 
messages.  The 2-byte field in the UCB common segment called UCBCHAN (even IBM 
has not seen fit to rename this field to align with XA's terminology) contains 
the device number).  The comment on this statement is correct:  "Binary device 
number".  The subchannel number is stored in UCBSCHNO within a dif!
 ferent UCB segment.

A quick scan of the IEAxxxxx messages section of z/OS MVS System Messages 
Volume 6 (SA22-7636-14) reveals the following commonly used explanation for the 
"device number" field in the message text:  "device-number    The physical 
device address."  Message IEA851A is especially interesting, as it states the 
following:
IEA851A REPLY DEVICE ADDRESSES OR U
...
Operator response: If any of the volumes listed in message IEA851I are to be 
mounted, enter REPLY id,'dev,dev,dev,...' where each dev is a device number for 
a device on which you will mount a volume.

This message calls  the operator's reply both a device address and a device 
number.

In IBM's DASD reference books (e.g., 2105 Command Reference, SC26-7298-01), 
there is a one-byte field, made visible in sense data, which is called the 
device address, and it is further defined as "Unit Address, the address as seen 
by the Storage Director on the channel interface", "physical device 
identification", "unit address of the Base Volume",  and, in the glossary, "The 
ESA/390 term for the field of an ESCON device-level frame that selects a 
specific device on a control-unit image."  The glossary of the 2105 book also 
defines "device number" as "The ESA/390 term for a four-hexadecimal-character 
identifier (e.g. X'13A0') associated with a device to facilitate communication 
between the program and the host operator. The device number is associated with 
a subchannel."

Before an I/O hardware configuration generation is performed, some person 
decides that he would like a group of 32 devices referred to as 13A0 through 
13BF in messages to operators, programmers, etc.  These are called the device 
numbers for that group of 32 devices.   But when the processor complex is 
powered-on, subchannel numbers beginning with x'0000' and increasing 
monotonically are arbitrarily associated with each such device number found in 
the hardware configuration data.  E.g., our good old device number 13A0 might 
have a subchannel number of X'0345' one week and a subchannel number of x'041B' 
the following week if a lot more I/O hardware is installed in between 
successive power-ons.  The device number remains constant because it is the 
external identifier that humans use, and humans like their terminology and 
numbers to remain constant.  [ I'm glad the telephone company doesn't give me a 
new 7-digit telephone number every time they install some more new telephone nu!
 mbers between 000-0000 and whatever my number is.]  The device number and 
subchannel number are both stored in the UCB, but are used for different 
purposes.  The device number is used to identify a device externally to people, 
and the subchannel number is used internally within the computer's hardware to 
access the device electronically.

Bottom line:  in most messages visible to humans, a device is identified by its 
device number, but within the software and hardware a device might be uniquely 
identified by its "address" or its "subchannel number".  It seems to me that 
when software displays a device's identification externally, such as on a 
screen display, it should normally label the identifier as a "device number" 
and not a device address or a subchannel number.  But this would really depend 
on who the humans are who have to deal with the message.  Hardware CEs might 
want to know the one-byte device address, e.g.  An operator would want to know 
the device number on which to mount a tape rather than its subchannel number.

Bill Fairchild

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of 
Shmuel Metz (Seymour J.)
Sent: Thursday, February 16, 2012 12:13 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: 5 Byte Device Addresses?

In
<77142d37c0c3c34da0d7b1da7d7ca3433336c...@nwt-s-mbx1.rocketsoftware.com>,
on 02/16/2012
   at 02:14 PM, Bill Fairchild <bfairch...@rocketsoftware.com> said:

>They haven't been device "addresses" since 1983 with the advent of 
>MVS/XA, in spite of the fact that people who had been calling them 
>device addresses since 1964, for the most part, still call them device 
>addresses.  They have been device "numbers" since XA's redesign of the 
>I/O architecture.

Make that Subchannel Number...

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN

Reply via email to