MPE/iX System Utilities Reference Manual (32650-90908)

Chapter 20
SAINT
164
file offset A byte offset relative to the beginning of the file.
virtual offset A byte offset relative to the beginning of the space.
space offset The same as virtual offset.
Preparation for use
To bring up the operating system, the START boot image contains the code that builds the required software
structures and initializes the various components of MPE/iX, such as the virtual space manager, memory
manager, IPC, compatibility mode emulator, and so forth.
The first code to be executed is in real addressing mode and builds the page table and hash table required to
use virtual addressing mode. It then transfers to virtual addressing mode during the call to the virtual entry
point.
When the operating system is running, some parts of it are required to be in main memory at all times. This
code is part of the system library, and is identified by the memory-resident bit in the librarys initialization
pointers and subspace dictionary entries. All code that is defined as being memory-resident is contained in
the start boot image.
The operating system code, which must reside in memory while the system is being initialized, must also be
contained in the boot image. This code is identified by the initially frozen bit contained in the initialization
pointers and subspace dictionary entries. All code read is defined as being initially resident and is also
contained in the start boot image. During system initialization, the initially frozen code is locked in memory
until the system library is fully mapped into virtual space. At that point, the code resets to allow the memory
manager to swap it out, if necessary.
Input files
The input files accepted by the SAINT utility consist of system library files, CME files, SXRT declaration files,
and millicode files. The MPE/iX system library contains MPE/iX system code and data structures. The system
millicode is also contained in a SOM, and the compatibility mode definition is contained in a CME file.
The input files required to build the boot image are all identified by one of the load commands (LOADCME,
LOADMILLI, LOADSXRT, or LOADSYSLIB).
SOMs and system libraries
The system library is the primary input file used by the SAINT utility to produce boot images. Libraries
contain SOM files, which are the primary output files of system compilers and assemblers, as well as the
system linker. Libraries are built by the link editor, which invokes the linker.
In addition to executable code, SOMs contain an initialization pointer area, which is used to define the page
allocation and access rights of both code and data. An initialization pointer record defines either the location
of code or data within the SOM, or the value and length of a data area required by the SOM. These records
are used to allocate pages within the boot image file and to build the page information table, or PIT, for the
boot image.
The library symbol table, or LST, contains records defining the location of procedures within the SOMs
contained in the library, and these records are copied directly over to the boot image for use by a symbolic
debugger when the system is being booted up.
The system object module ACD defines the format of the SOM and the system library.