Talk:Count key data/Archive 1
From Wikipedia, the free encyclopedia
| This is an archive of past discussions about Count key data. Do not edit the contents of this page. If you wish to start a new discussion or revive an old one, please do so on the current talk page. |
| Archive 1 | Archive 2 |
Other examples?
I know several wire protocols use count-key-data, such as the original Napster and chunked HTTP. But do they count?
And do tar and Quick Disk use count-key-data? --Damian Yerrick (talk | stalk) 00:25, 4 April 2008 (UTC)
CKD relates to the way IBM writes data on disks for some systems, in contrast to FBA (Fixed Block Architecture) used by some IBM systems, and those of pretty much everyone else, where disk data is written in fixed size blocks. This is separate from the data structures one may layer on top of that. In the above cases, data is layered onto either UDP or TCP. Gah4 (talk) 16:30, 11 April 2015 (UTC)
Incorrect description of ECKD
ECKD is not a DASD format, but rather a set of CCW opcodes for improved performance with cached controllers. Those CCW commands were added long before ESCON arrived on the scene. Shmuel (Seymour J.) Metz Username:Chatul (talk) 09:54, 30 June 2010 (UTC)
Level of detail
I've corrected the article and put ECKD in historical context, but I'm not sure what level of detail is appropriate. I'd like to discuss some of the channel commands used with CKD and ECKD, but am not sure at what point it would become TMI. Shmuel (Seymour J.) Metz Username:Chatul (talk) 18:48, 30 June 2010 (UTC)
Synchronous
In non-synchronous operation the gap timing constraint is removed.
As well as I understand it, you can modify CCWs in memory until they are needed. At least in the synchronous days, that restricted when they could be fetched. Does that restriction go away with ECKD? Gah4 (talk) 17:25, 10 August 2015 (UTC)
- Self modifying CCW chains are well established in access methods like ISAM. If you are asking about externally modifying CCWs in a chain while the chain is being executed - the idea of ECKD is to send most if not all of what was a synchronous chain to the control unit where it executes until completion of some sort so yr question maybe moot, I really never thought about it. Perhaps someone else can comment, or u can research it yourself. Tom94022 (talk) 17:41, 10 August 2015 (UTC)
- The rule has always been that once the channel fetches a CCW it doesn't see change to that CCW unless there is a TIC back o it. If you look at the IBM access method cod for chained scheduling you will see a test for whether the change to a TIC was in time, and to reissue the remainder of the chain if not in time. ECKD doesn't chang tha, although it changes what the CCWs are.Shmuel (Seymour J.) Metz Username:Chatul (talk) 23:46, 11 August 2015 (UTC)
Logical vs. Physical
in the original architecture a logical track was the same as a physical track.
As I understand it, on the 2301 four physical tracks make one logical track. The 2305 might also do something such that they are different. Later, as I understand, there is a version of the 3390 that runs at 1200RPM and gets three logical tracks on one physical track. Gah4 (talk) 21:34, 10 August 2015 (UTC)
- I'm not sure the 2301 counts as "original," nor am I sure about the four physical tracks make one. The 2320/2301 manual says, "The track format of the 2301 Drum Storage is compatible with the track format of other IBM Storage Devices." However, you maybe ritght so I encourage u to edit the article with references rather than raising hypotheticals in the talk page. Perhaps simply replacing "same as" with "closely related" would work. Tom94022 (talk) 06:00, 11 August 2015 (UTC)
- Upon further reading I think the sentance is fine. The 2302 and 2305 are parallel transfer DASD devices, the tracks still start at index and comport to the CKD format,
just on multiple surfacesusing multiple transducers. There is a one to one correspondence between the ID and the physical layout. But if u want to improve the article by finding some distinction, go ahead. Tom94022 (talk) 06:55, 11 August 2015 (UTC)
- Upon further reading I think the sentance is fine. The 2302 and 2305 are parallel transfer DASD devices, the tracks still start at index and comport to the CKD format,
- To the best of my knowledge the first IBM DASD where he logical track was different from the physical track was the 3350 configured to look like a 3330-11 or a pair of 3330-1/2 drives. Moe common was the later 3390 configured to look like a 3380. Shmuel (Seymour J.) Metz Username:Chatul (talk) 23:36, 11 August 2015 (UTC)
Diagram
How about the diagram from GA26-1592-5 in addition, or instead of, the 3880 diagram? At least closer to traditional (S/360) form. (And note that it is labeled 3330 format, not CKD format.) Gah4 (talk) 18:29, 20 August 2015 (UTC)
- Can't use a copyrighted material without permission; that's why I found a patent to base this imnage in. I did consult GA26-1592 as well as other SCU manuals to assure this image covers all CKD from 2841 thru 3990 as reflected in notes. As u note the 3830/3300 image is specific to it and not general. Tom94022 (talk) 19:15, 20 August 2015 (UTC)
- It's hard to find a general diagram given device-specific considerations like heads of string and remote fibre or IP connections. The one Tom used is as close to general as you will find, albeit hard to read. Shmuel (Seymour J.) Metz Username:Chatul (talk) 22:37, 20 August 2015 (UTC)
- Expanding the text size is the only change that seems necessary. The actual diagram is fine. Shmuel (Seymour J.) Metz Username:Chatul (talk) 19:04, 21 August 2015 (UTC)
References
- Is there any reason not to add additional {{cite}} data to Count key data@References?
E The DASD table has direct links to the 2841 PDF instead of a wiki reference to a {{cite}} with a URL keyword. Shmuel (Seymour J.) Metz Username:Chatul (talk) 18:51, 31 August 2015 (UTC)
- Why not?. I'm not sure there is anything wrong with direct links but if u want to change them to a cite template, go ahead. Tom94022 (talk) 07:31, 1 September 2015 (UTC)
- Some of the PDF files take a long time to load. If a reader just wants to know the title, ... Shmuel (Seymour J.) Metz Username:Chatul (talk) 14:40, 2 September 2015 (UTC)
Online manuals
Does anybody have HTML or PDF versions of the reference manuals for the IBM 3880-11, 3880-12 or the Speed Matching Buffer on the IBM 3880-1 and 3880-3? I'd like to add some citations to the ECKD section. Shmuel (Seymour J.) Metz Username:Chatul (talk) 20:23, 22 July 2015 (UTC)
- Did u try Bitsavers 3380? Tom94022 (talk) 02:43, 23 July 2015 (UTC)
- I think u want GA32-0061 Tom94022 (talk) 22:21, 23 July 2015 (UTC)
- Those get the manuals for the original SMB (3880 models 1-3), paging director (3880-11) and FBA (3880-4), but not 3880-12 or -22. Thanks. Shmuel (Seymour J.) Metz Username:Chatul (talk) 17:32, 27 July 2015 (UTC)
- Were there M12s and M22s? I think u want
- IBM 3880 Storage Control Model 13 Description, GA32-0067
- IBM 3880 Storage Control Model 23 Description, GA32-0083
- I might have a handle on an M23 manual, will advise Tom94022 (talk) 19:20, 3 August 2015 (UTC)
- U might try to find a free online copy of "Cache-DASD storage design for improving system performance", C. P. Grossman, IBM SYSTEMS JOURNAL, VOL 24, NOS 3/4,1985. It covers the 3880 m13 and m23. I have a copy and am using it for my update to the article. There is also M13 descriptionTom94022 (talk) 19:37, 28 August 2015 (UTC)
- Were there M12s and M22s? I think u want
- Those get the manuals for the original SMB (3880 models 1-3), paging director (3880-11) and FBA (3880-4), but not 3880-12 or -22. Thanks. Shmuel (Seymour J.) Metz Username:Chatul (talk) 17:32, 27 July 2015 (UTC)
- I've located several relevant manuals in Shelf: Hardware collection, June 2000; you can find links to them in User:Chatul/Sandbox/Count key data#References; Wiki will only render the ones that are linked to, so go into edit to see the full list. These include
- 2105 Enterprise Storage Server
- 9340 Direct Access Storage Subsystem
- RAMAC Virtual Array (RVA)
- Shmuel (Seymour J.) Metz Username:Chatul (talk) 21:28, 8 December 2015 (UTC)
IBM DASD I/O
Count key data#IBM DASD I/O, "The group of CCWs defined by IBM for DASD ", lists Search as a separate type; Search is actually a set of specific Control opcodes, as is Seek. Shmuel (Seymour J.) Metz Username:Chatul (talk) 15:42, 2 September 2015 (UTC)
Section on Paging?
Should there be a section on Paging?
The 3880-11 beginning 1981 and the follow on 3880-23 implemented two new CCWs (/8F Set Paging Parameters and /AF Discard Block) to manage paging in one director on attached 3350s only. As near as I can tell these CCWs were not ever again suppored on any other SCU or device, so it maybe this is not notable. AFAIK with regard to CKD storage, paging for virtual memory was introduced by IBM with the IBM S/360 M67 in 1966. "Page Data Sets" (or their equivalents) storing the VM data on DASD were usually allocated to high speed DASD including specialied DASD such as the 2305 Fixed Head DASD and the STK 8305 Solid State DASD. The data sets were accessed with conventional CCWs except for the specific instances cited herein.
IMO, not notable for a section in this article; perhaps at most a short oparagraph in the Cache section . Comments? Tom94022 (talk) 18:04, 19 December 2015 (UTC)
- I'm not aware of any successor to the 3880-21.
- My take is that the history should mention the 3880-11 and 3880-21; I don't see a need to include it in Technical Details.
- CP-67 and TSS/360 may have been the first systems using CKD DASD for paging that IBM made available to customers, but they had paging earlier on a modified 360/40. Also, I believe that the University of Michigan had MTS working first. Shmuel (Seymour J.) Metz Username:Chatul (talk) 22:06, 21 December 2015 (UTC)
Subchannels and Unit Control Words?
Would a brief discussion of subchannels and Unit Control Words be TMI? A recent update had an incorrect reference to the term, but the concept is helpful in understanding the block multiplexer channel.Shmuel (Seymour J.) Metz Username:Chatul (talk) 01:19, 22 December 2015 (UTC)
- I've added a brief explanation of subchannels to IBM System/360 architecture#Input/Output . Does Count key data need more than a link to it? Shmuel (Seymour J.) Metz Username:Chatul (talk) 22:31, 22 December 2015 (UTC)
Who uses the count?
Does the hardware actually use the count field(s) to know how many bytes to read?
- Yes, but truncation is allowed. The Count field is used for many other thing Tom94022 (talk) 07:02, 26 June 2015 (UTC)
Or, for a slightly different question, what would the 3330 hardware do with an RP06 disk pack? The block header is there, but won't have the same data. Will a READ CCW still read the whole data block? Gah4 (talk) 00:43, 26 June 2015 (UTC)
- It would probably fail for a whole bunch of reasons including lack of address mark, possibly different ECC, different gap lengths, etc. BTW there is no "Read CCW." There are several read CCWs such as Read Count which reads the count field, Read Data which reads the data but is preceded by some sort of alignment CCW such as Search ID Equal. Tom94022 (talk) 07:02, 26 June 2015 (UTC)
- Yes, I did wonder about address marks. I wasn't so worried about ECC. I didn't find a description of the sync byte, so that might be different. Gap lengths aren't usually a problem for reading, sometimes for writing, other than it might not be able to read consecutive blocks on one rotation. I didn't see anything in the description to say how it recognizes HA and R0, separate from R1..Rn. But in any case, we don't have any 3330-11 drives. Gah4 (talk) 17:35, 26 June 2015 (UTC)
- It's not so much the drive as it is the controller. The 3330-11 really doesn't care so long as the servo pattern is unchanged (and I believe it was not changed). In the IBM world most things are timed, so if the sync byte isn't in exactly the right window the access fails. There are maybe ways a clever IBM Channel Programmer might pick out sectors of an RP06 disk pack using special CCWs like "Space Count" and maybe the DEC controller could read a fixed block formatted IBM disk pack. But mount and play no way. Do u have RP06s? Best disk drive DEC ever bought :-) Tom94022 (talk) 21:19, 26 June 2015 (UTC)
- The question came up in the context of PDP-10 vs PDP-11. The PDP-10 writes 576 byte blocks, and the PDP-11 512 bytes, and their controllers have the block size fixed in hardware. Someone mentioned that the IBM drive/controller should be able to read them. We do have RP06 disks and drives, but no 3330 drives. Still, it seemed an interesting question. Yes, the question is about a special channel program, such that one might use for extracting data from a disk for archival use, if, for example, one had disks but not the appropriate DEC drive and controller. Gah4 (talk) 23:14, 26 June 2015 (UTC)
- The RP06 is a Memorex 675 (OEM version of 3330-11) with a bolt on DEC controller that presents DEC's proprietary Massbus interface to the host controller. I think the Massbus interface doesn't vary by DEC host, just the host controller. As such I would guess the host controller would deal with the different host block sizes, probably by filling in zeros on the shorter PDP-11 block although maybe the drive side Massbus controller did the magic. So u ought to be able to read one pack on the other system. I can ask some DEC friends if this is really important. BTW, where are u operating these RP06s - they are amongst the oldest operational disk drives in the world (along with perhaps some Diablo 30s and RK05s) :-) Tom94022 (talk) 22:17, 27 June 2015 (UTC)
- The question came up in the context of PDP-10 vs PDP-11. The PDP-10 writes 576 byte blocks, and the PDP-11 512 bytes, and their controllers have the block size fixed in hardware. Someone mentioned that the IBM drive/controller should be able to read them. We do have RP06 disks and drives, but no 3330 drives. Still, it seemed an interesting question. Yes, the question is about a special channel program, such that one might use for extracting data from a disk for archival use, if, for example, one had disks but not the appropriate DEC drive and controller. Gah4 (talk) 23:14, 26 June 2015 (UTC)
- It's not so much the drive as it is the controller. The 3330-11 really doesn't care so long as the servo pattern is unchanged (and I believe it was not changed). In the IBM world most things are timed, so if the sync byte isn't in exactly the right window the access fails. There are maybe ways a clever IBM Channel Programmer might pick out sectors of an RP06 disk pack using special CCWs like "Space Count" and maybe the DEC controller could read a fixed block formatted IBM disk pack. But mount and play no way. Do u have RP06s? Best disk drive DEC ever bought :-) Tom94022 (talk) 21:19, 26 June 2015 (UTC)
- Yes, I did wonder about address marks. I wasn't so worried about ECC. I didn't find a description of the sync byte, so that might be different. Gap lengths aren't usually a problem for reading, sometimes for writing, other than it might not be able to read consecutive blocks on one rotation. I didn't see anything in the description to say how it recognizes HA and R0, separate from R1..Rn. But in any case, we don't have any 3330-11 drives. Gah4 (talk) 17:35, 26 June 2015 (UTC)
- The DASD subsystem always uses the count field when reading or writing the key and data fields, but where in the logic depends on the particular subsystem. More recent DASD subsystems read a track at a time into a cache and it is program logic that uses the count field to truncate long transfers, Note that from the perspective of the host it is a black box; differences in implementation are invisible. All DASD subsystems must indicate Data End if the count is exhausted, whether or not the CCW count is exhausted.
- Different DASD subsystems may have different capabilities, and those are visible to the host, but not the implementation. Shmuel (Seymour J.) Metz Username:Chatul (talk) 20:09, 28 June 2015
(UTC)
- Reading GA26-1592-2 while looking for something else, it does seem that "Space Count" is the CCW specifically for reading key and data when the count field is wrong. Mostly for data recovery, but it might allow reading RP-06 disks. I don't have to documentation for the Sync byte, but then again, no 3330-11 drives, either. — Preceding unsigned comment added by Gah4 (talk • contribs) 10:30, 15 September 2015 (UTC)
Cache Section
I've been trying to figure out the CCWs associated with cache management and the additional subsystem features using cache. As near as I can discover:
- Cached 3880s used Sense Subsystem Status, /54 and Set Subsystem Mode, /87 for a fairly simple control set. I don't know if pinning was supported. It doesn't appear that any subsystem features such as Dual Copy were supported.
- Cached
3390s3990s added Perform Subsystem Function /27, Read Subsystem Data , /3E and Read Message ID /4E for more complex control (pinning supported) and subsystem features like Dual Copy and Fast DASD Write. There is some evidence that there is at least one "proprietary" CCW associated with Concurent Copy.
The problem is the lack of a reference manual for the cached 3380s 3880s (-11, -13, -21 and -23). The 3390 3990 reference manual is pretty clear. Anyone have a reliable source for the 3880 cached directors so we can finish the section? Tom94022 (talk) 07:48, 1 September 2015 (UTC)
FWIW Computerworld's September 7, 1987, article on the announcement of the "third generation" 3380 (K series) states, "However, the upgraded 3880 will not support Dual Copy, DASD Fast Write or the larger cache" The 3880 upgrade included 4.5 MB/sec channels but 3990 would not be available until 3Q88 with Dual Copy, DASD Fast Write and/or the larger cache. Tom94022 (talk) 17:43, 1 September 2015 (UTC)
- The 3880 cache management was primit8ive coomparee to the 3990 and later controllers. If you can find copies you might check whether anything changed on the models 21 and 23. Also, note that each of Models 1-4, Model 11 ane Model 13 had its own repertoire of CCW copcodes. Shmuel (Seymour J.) Metz Username:Chatul (talk) 14:46, 2 September 2015 (UTC)
- The cached 3380 CCWs were far more consistent than you imply. See footnotes on p. 8 of GX20-1850-3, System/370 reference summary. FWIW, note that in this case IBM has six generic categories for CKD DASD CCWs. As near as I can tell not much changed on the -21 abd -23 other than bigger caches (up to 32 MB) and perhaps a microprocessor controlling the cache. Tom94022 (talk) 20:13, 2 September 2015 (UTC)
- The reference card is intended to be a broad summary of information available from other publications. In this case the grouping of, e.g., DASD opcodes seems to be strictly for presentation, while the I/O command codes at the top of p. 7 are architected and match what it says in PoOps. Note, however, the I did have an error; the search are writes rather than control.
- If you compare the opcodes added on the 3880 with SMB (Speed Matching Buffer), the 3880-11 and te 3880-13, you will see that they are very different from each other. As far as I know the -21 and -23 were the ends of their respective lines. Shmuel (Seymour J.) Metz Username:Chatul (talk) 16:10, 8 September 2015 (UTC)
- Pardon my editing yr text above but I found it hard to follow yr thoughts until I figured them out.Tom94022 (talk) 18:28, 8 September 2015 (UTC)
- Thank you for catching and fixing my typo. I'm winding up a regime of chemotherapy, which adds to my original dyslexia. Shmuel (Seymour J.) Metz Username:Chatul (talk) 22:52, 9 September 2015 (UTC)
- Pardon my editing yr text above but I found it hard to follow yr thoughts until I figured them out.Tom94022 (talk) 18:28, 8 September 2015 (UTC)
- If you compare the opcodes added on the 3880 with SMB (Speed Matching Buffer), the 3880-11 and te 3880-13, you will see that they are very different from each other. As far as I know the -21 and -23 were the ends of their respective lines. Shmuel (Seymour J.) Metz Username:Chatul (talk) 16:10, 8 September 2015 (UTC)
- I think the CCW distinctions between the -11 and -13 has to do with the distinction between a paging 3880 Dirctor and a caching 3880 Director and that caries forward to the -21 and -23 respectively. Look carefully at page 31 of the reference. the caching 3880 have three sets of CCW, columns 2, 3 and 5. Col 5 for the 3380-13, 3380-23 and the 3990-1,2,3. If u then look at the actual CCWs of cols 2, 3 and 5 you should agree that col 3 is unusual and it is strictly using the 3880-11,-21 with the 3350 as a Paging Director in a Paging Mode. That appears to be pretty clear in the summary and sufficient for our article absent caching/paging 3880 reference manuals.
- I suggest presentation is more significant for this article than the technical detail that the last two bits of sense command generically make them write commands. They are not literally write commands since in executing these commands the system writes from memory and reads from the disk, as it does with SCAN. Every DASD CCW presentation by IBM separates Sense from Write and so should this article. Tom94022 (talk) 18:28, 8 September 2015 (UTC)
- The 3880-11 and 3880-13 both have caching directors and both use the terms cache and cache index. The difference is in the intended application and the supporting features, e.g., multiple exposures for paging. Note: at this point we have PDF manuals for the 3880-1x but not for 3880-2x, Do you want me to track down manuals for, e.g., 2105? Shmuel (Seymour J.) Metz Username:Chatul (talk) 22:52, 9 September 2015 (UTC)
ESA/390 Common I/O Device Commands
As part of ESA/390, IBM defined a standard set of commands that new devices aree expected to support. I've added a table to that article, and I'm wondering whether to add it to Count key data, since all modern CKD subsystems support them. 23:03, 1 December 2015 (UTC)
- Thanks, this question pointed out a improvement that can be made to the lede.
- Off the top of my head not too relevant to this article. As I understand it "modern CKD subsystems" emulate the CKD track format and emulate the s/370 CKD channel programs. Several of the "standard set of commands" do not exist (or conflict) with S/370 CKD DASD CCWs so that might add confusion to the article or a lot of words. As I understand it even the I/O instructions are different. Perhaps a sentance or two in Beyond System/370 would be appropriate. Tom94022 (talk) 18:26, 2 December 2015 (UTC)
- All of the ESA/390 standard I/O commands exist on modern DASD subsystems, and I know of no conflict with older equipment. Don't confuse CPU instructions with channel commands.
- As of System/370 Extended Architecture (S/370-XA), none of the old I/O instructions exist, but that has no effect on what CCW opcodes exist. I believe that User:Chatul/Sandbox/Count key data#Technical details, "Note that while there are significant differences between S/360 I/O and the I/O subsystems starting from Sysem/370 Extended Architecture (XA), they do not significantly affect the programming of CKD DASD." says all that is necessary. Shmuel (Seymour J.) Metz Username:Chatul (talk) 20:59, 4 December 2015 (UTC)