Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

File set: several files on one tape

If several files are written on one tape, they form a file set. The special case “file set on volume set” (= MF/MV set) is described in section "MF/MV set: file set on volume set" and section "Processing of MF/MV sets").

Structure of a file set

A tape with standard labels starts with the volume header label VOL1, followed by the file header labels of the first file and a tape mark. Then come the data blocks of this first file, followed by a tape mark and the EOF labels.

As there are more files on the tape, the EOF labels are followed only by a single tape mark, which precedes the HDR labels of the next file, etc. The EOF labels of the last file are then followed by the double tape mark. The position of the file in the file set is recorded in the field “File sequence number” (FSEQ) in the HDR1 and EOF1 labels of each file.

Figure 9: File set
Creating a file set

By means of the operands DEVICE and VOLUME of the FILE macro and the DEVICE-TYPE and VOLUME operands of the CREATE-FILE command, the user specifies the volume on which he wants to store his file. If a tape is used for several files, each file is usually written from the beginning of the tape, which means that any file already on the tape is overwritten.

In order to create a file set, the files must be written one after the other on the tape. This is controlled by the FSEQ operand in the FILE or FCB macro and by the FILE-SEQUENCE operand of the ADD-FILE-LINK command. FSEQ and FILE-SEQUENCE, as appropriate, allocate a position in the file set to each file; the files must be numbered in ascending order without gaps in the sequence. This also makes it possible to write files with the same name on one tape, as they can be identified unambiguously by the operand.

If the user does not know the actual sequence number of a file, he can have the system search for an input file with FSEQ=UNK (= unknown) in the macro or FILE-SEQUENCE=UNKNOWN in the command or can write an output file at the end of the set by specifying FSEQ=NEW or FILE-SEQUENCE=NEW, as appropriate.