[Sheet 01] contains no variable declarations, but many definitions for operating system constants and parameters, and the declarations for three simple structures. The convention will be noted of using “upper case only” for defined constants.
[Sheet 02; Chapter 19] consists entirely of declarations (with definitions of the structures “callout” and “mount” as side-effects). Note that none of the variables is initialised explicitly, and hence all are initialised to zero.
The dimensions for the first three arrays are parameters defined in param.h. Hence any file which “includes” “systm.h” must have previously included “param.h”.
[Sheet 03] contains a few definitions and one declaration, which are used for referencing the segmentation registers. This file could be absorbed into “param.h” and “systm.h” without any real loss.
[Sheet 03; Chapter 7] contains the important declaration for “proc” which is both a structure type and an array of such structures. Each element of the “proc” structure has a name which begins with “p_” and no other variable is so named. Similar conventions are used for naming the elements of the other structures.
The sets of values for the first two elements, “p_stat” and “p_flag” have individual names which are define.
[Sheet 04; Chapter 7] contains the declaration for the very important “user” structure, plus a set of defined values for “u_error”.
Only one instance of the “user” structure is ever accessible at one time. This is referenced under the name “u” and is in the low address part of a 1024 byte area known as the “per process data area”.
In general the complete “h” files are not analysed in detail later in this text. It is expected that the reader will refer to them from time to time (with increasing familiarity and understanding).