The VAX is running
Chuck Guzis
cclist at sydex.com
Mon Apr 6 12:34:35 CDT 2009
On 6 Apr 2009 at 10:04, Roger Holmes wrote:
> At the physical level, what really defines a block is that between
> blocks there are inter block gaps which gives the tape drive time to
> stop. If the CPU writes one block and then does calculations or (on a
> machine with a multi tasking OS), runs someone else's job, the drive
> must stop and wait for the next block to be written. Similarly on
> reading, but because the drive does not know what will happen on
> reading, then it has to provide inter-block gaps even when two block
> writes follow on immediately from each other.
Another way to think of it is that a block is to a tape what a sector
is to a disk. You can't read or write less than that unit. Unlike
most disks, there is no requirement for blocks on a tape to be the
same length--and there is an extra type of block, the tapemark that
allows for high-speed positioning between sections of tape.
Another aspect of tape operation is that a drive must get a running
start at reading or writing, which is where the gap/IRG comes in
(which is why you want to minimize the need for a tape to stop
motion). Streamers, (e.g. Cipher) when stopped back up quite a
distance before beginning a read or write. Vacuum-column tape drives
generally accelerate the tape quickly enough within the space of the
gap.
I don't know if it's true anymore, but in the EDP world, knowing how
to do an efficient external sort on tape (cf: oscillating merge,
polyphase merge, cascade merge, balanced merge) used to be a
requirement for a programmer. Now, it's probably a lost art.
--Chuck
More information about the cctalk
mailing list