> On Sep 11, 2015, at 11:41 AM, Johnny Billquist <[email protected]> wrote:
>
> ...
> Overlays were a way to try getting around the address space limitations. I
> still would not consider overlays as any part of the PDP-11 architecture. But
> maybe that is just me.
I agree. You can use overlays on any hardware platform that has random access
secondary storage. You need it if your programs are larger than your primary
memory. It's found on many machines prior to the arrival of really large
memories and address spaces. And you could use it even there -- there's
nothing that prevents the use of overlays on a VAX, for example, though in
practice I doubt it has been done.
The main alternative is paging, which is easier to use at the expense of lower
performance. That follows from the fact that paging is done by an automatic
mechanism that isn't aware of what the application is doing, while overlays are
designed by a programmer who is (usually) smarter than the paging automaton.
There are in-between approaches, where code and data are broken into fixed size
pages that are paged in and out automatically, but the assignment of bits of
code or data to pages is optimized by the programmer to improve performance.
The THE operating system is a nice early (mid 1960s) example of this.
paul