> On Sep 17, 2020, at 1:29 AM, shadoooo via cctalk <[email protected]>
> wrote:
>
> Hello,
> I have a question about 9 track tapes and block sizes.
> What I know is that tape is subdivided in files by means of marks, and each
> file is subdivided in blocks of equal size.
As others have said, no, "equal size" is not a valid assumption.
Even for operating systems that use constant data block sizes, the file labels
have a different block size. Consider DEC DOS-11 format, which is used by a
number of PDP-11 operating systems. That has a 14 byte file label followed by
(usually) 512 byte data records.
A very common format is ANSI labeled files. These have several 80 byte file
labels, a tape mark, data records that can be any size up to "very large" and
may or may not be all the same, then another tape mark and another set of 80
byte labels.
Other operating systems may be much stranger. Looking at a CDC 6000 series NOS
"deadstart" (system boot") tape, the record sizes of the first 12 records are
486, 930, 936, 825, 945, 960, 930, 951, 141, 486, 1266, 3816. And the largest
record size is 3846; the shortest is 6 bytes. Yes, that goes against the
"rule" which is really just an IBM convention that blocks smaller than 18 bytes
are "noise".
CDC also supports "long blocks" in which the I/O for a single block is done in
pieces, so blocks can be read or written that are longer than what you would
think is the limit from the device limits. I'm not sure how long the longest
"long block" is.
paul