WAITS on-disk file structure

From Computer History Wiki
Revision as of 19:33, 12 June 2023 by Larsbrinkhoff (talk | contribs) (HOM block.)
Jump to: navigation, search

This is a description of the WAITS' on-disk file structure; in particular the version used with RP06 and RP07 packs on a KL10 in 1988. There are differences against the KA10 1974 data structures. Much of this information comes from the last version of RSKINI, which is used to format a disk pack.

Disk area units and geometry

A disk sector of 128 words is often called record, especially if it's part of the disk structure. Addresses are usually linear record numbers. Some disk areas fall outside the usable range of sectors, and the record address does not take those into account.

Four records together make up a page, always 512 words. Some number of records, usually 9 or 10, grouped together is called a block. The this is the smallest unit of allocation. The bits in the SAT refer to blocks.

A disk is viewed as some number of cylinders, each comprising the sectors that can be accessed without a disk seek. Each cylinder has several tracks, and each track has several records. WAITS may elect to format the disk with some sectors left over per track. E.g. only 18 of the 20 sectors on a bootable RP06 track may be used, and the last two are invisible to the file system code.

The records of a cylinder are divided into pages. The logical end of the cylinder may have some left over records after the last page. The cylinder pages are divided into blocks; again there may be an unused remainder since pages might not divide blocks evenly.

A file structure may stretch across several disk packs, called units.

HOM blocks

There are two HOM blocks. They are both at the logical beginning of the disk, i.e. the first surface of the first cylinder. The first block is sector 1 (starting from 0), and the second is 10 (decimal).

The HOM block is one record, i.e. 128 words.

Offset Description
0 SIXBIT "HOM "
1 0
2 0
3 SIXBIT structure name.
4 Number of packs,,Unit number for this pack
5 Address of other HOM block,,Address of this block
6 Pages on this unit
7 First swapping cylinder
10 Address of MFD
11 Address of SAT
12 Size of SAT, in records
13 Number of records in this unit
14 Number of cylinders on all structure units
15 0
61 Address of front-end file system
62 Size of front-end file system
101 Address of bootstrap
102 Size of bootstrap
164 Processor serial number
165-167 Unit ID
170-172 Owner ID
173-175 File system ID
176 HOM magic number 0707070
177 This HOM block address

BAT block

The BAT block is after the first HOM block, and is optional.

SAT

The SAT is the Something... Allocation Table.

Swapping area

Retrieval record

All blocks start with a retrieval record. It's a record which holds information about which file the block belongs to.

MFD

The MFD is the Master File Directory.

UFD

A UFD is a User File Directory, corresponding to a user PPN, project-programmer number.

UDP

A UDP is a User Data Pack. This is a removable disk pack that holds data for a single user. WAITS will have at least one disk drive available for mounting UDPs.