PDP-11 tape question

Jon Elson elson at pico-systems.com
Wed Jun 24 15:23:04 CDT 2020

On 06/23/2020 09:09 PM, jim stephens via cctalk wrote:
> Short story of crashing the 360 MVT system.  We had IBM 
> reels we reused which IBM used for patches called DTRs.  
> they had 50 or 100' max length tape.  We had a guy muck up 
> a program to send a file off our system to the mainframe, 
> and he forgot to break up the file into records.  So he 
> ended up with an entire tape with one big physical record.
> what happened was our code didn't  properly terminate, so 
> when the IBM job was run with the tape as input it read 
> the entire tape and got a tape error.  then printed a spew 
> on the console.  repeat 10 times.
> Problem, tape drive and console was on the same channel.  
> With normal size records even up to 64k long the tape 
> didn't busy the channel up for very long.
The 1052 Selectric console on the 360's were not on a 
channel, but driven via direct I/O directly from the CPU 
microcode.  (Yes, the console has a pseudo channel address 
that made you THINK it was on a channel, but it actually 

I'm kind of surprised, as the tape controller had a record 
length count, and should just terminate with an error if the 
record was longer than the count specified.  You HAD to do 
that, as otherwise you could overrun the user's buffer and 
write tape data onto system control blocks or even another 
user's partition.
Exactly how the tape controller handled these insanely long 
records, however, is another matter, and I can imagine the 
controller might try to reach the end of the record before 
turning around to backspace over it so it didn't run over to 
another record.  And, that could tie up the channel for a 
minute or more.
Sharing devices, control units and channels on the 360 was 
NOT a really well thought-out mechanism.
Searching a data set of several cylinders for a specific key 
on a 2314 drive could bring the whole system to a halt for 
many seconds.


More information about the cctalk mailing list