HP-UX Reference (11i v1 00/12) - 4 File Formats (vol 8)
__________________________________________________________________________________________________________________________________________________________________________________________________
__________________________________________________________________________________________________________________________________________________________________________________________________
STANDARD Printed by: Nora Chuang [nchuang] STANDARD
/build/1111/BRICK/man4/!!!intro.4
________________________________________________________________
___ ___
c
cdrom(4) cdrom(4)
standards. The ISO standard allows for one additional optional copy of each type of path table, while the
HSG standard allows for up to three additional optional copies of each type. Additional copies of path
tables are useful for redundancy or seek time minimization.
Extended Attribute Records
An extended attribute record (abbreviated XAR ) is a data structure specifying additional information
about the file or directory with which the XAR is associated. An XAR contains the following information:
owner id;
group id;
permissions;
creation date and time;
modification date and time;
expiration date and time;
effective date and time;
record information;
application use area.
If an XAR is recorded, the XAR is written beginning at the first block of the file or directory. The actual
data for the file or directory is written beginning at the next block after the block in which the XAR ends.
Where possible, XAR information is mapped into the stat structure by the stat() system call (see
stat(2)). However, many items do not map very well due to lack of appropriate fields in the stat structure
for information provided by the XAR. To preserve backward compatibility of the stat structure, such infor-
mation is discarded by
stat(). The fsctl() system call can be used to obtain the XAR for a particular
file or directory (see fsctl(2)).
Interleaving
For performance reasons, data in a file can be interleaved when recorded on the volume. This is accom-
plished by dividing the file into pieces called file units. The size of each file unit (in logical blocks) is called
the file unit size. The interleaved file is then recorded onto the volume by writing a file unit, skipping one
or more blocks, writing another file unit, skipping more blocks, and so on until the entire file is recorded.
The number of blocks to skip between file units is called the interleave gap size. Blocks making up the
interleave gap are available for assignment to other files.
File unit and interleave gap sizes are kept in the directory record for each file. Thus, the file unit and
interleave gap sizes may change from file to file, but cannot change within the same file (unless the file is
written in sections − see below).
Directories cannot be interleaved.
File Sections
In order to be able to share data between files, a file can be broken up into file sections. File sections for a
particular file are not necessarily all the same size.
Each file section is treated like a separate file in that each section gets its own directory record. This
implies that each file section has its own size, its own XAR, and its own unique file unit and interleave gap
sizes. However, all file sections for the same file must all share the same file name. The order of the file
sections in the file is determined by the order of the directory records for each section. A bit in each direc-
tory record determines whether or not that record is the last record for the file.
A file section can appear more than once in a single file, or appear many times in many different files. A
file section in one volume can also be claimed by a file in a subsequent volume in a volume set (this is how
updates are accomplished).
Each file section can have its own XAR. However, if the final file section of a file has no associated XAR,
the entire file is treated as if it has no XAR. This is done to make updates work sensibly.
Directories must always consist of a single section.
Implementation and Interchange Levels
CD-ROM standards define two levels of implementation and three levels of interchange. implementation
levels provide a way for receiving systems that support CD-ROM to specify their level of support. The
implementation levels are:
Level 1 The system is permitted to ignore supplementary volume descriptors, their associated
path tables, and all directory and file data associated with them.
HP-UX Release 11i: December 2000 − 3 − Section 4−−35
___
___