PDP-11 Unix overlays

From Computer History Wiki
Revision as of 01:33, 7 September 2026 by Jnc (talk | contribs) (A poorly documented corner of later PDP-11 Unixes)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

The small address space of the PDP-11 architecture meant that larger computations, both operating systems and applications, needed to make use of overlays.

Early versions of UNIX did not support them, but support for them was added in 2.9BSD: use-of/support-for overlays in processes, in user mode; and also for overlays in the kernel. This support was then taken up in V7M.

Running Large Text Processes on Small Unix System (below) says:

"We describe a set of simple modifications to the Unix system, which permit larger programs to be run than has previously been possible. In particular, the 'f77' and 'a68' compilers and version 2 of the 'ex' editor, which previously would not run on the non-separate I/D machines such as the 11/23, 11/34 and 11/40, may be run, without source code modification, using this scheme. This scheme will also allow processes larger than 65K bytes of instruction space to run on all 11/ cpu's with segmentation hardware."

V7M contains notes that more or less state that its use-of/support-for overlays in the kernel is based on the prior support for overlays in processes, done at Berkeley; and also that overlays were only used in the kernel:

"Covld is derived from Bill Joy's covld but several things (such as the format of thunks) have been changed .. The paper in ovpap.n describes the original Berkeley overlayed text scheme which was intended for use in user mode programs. I use overlays only for the kernel itself."

This is somewhat incorrect: BSD2.9 contained overlays both in the kernel, and in processes; and V7M seems to have supported use of overlays in processes.

External links