When did Memory- and IO Protection Emerge (Esp. in Minis)?
mattislind at gmail.com
Thu May 5 03:41:32 CDT 2016
2016-05-03 17:52 GMT+02:00 Erik Baigar <erik at baigar.de>:
> Dear Experts,
> during discussing the Rolms I came accross the following question:
> What was the first (Minicomputer) architecture which offered
> memory- and IO protection? I'd define the minimum requirements as:
> - Existence of a superuser mode (Rolm calls this Executive mode)
> - Existence of a user mode (With at least two users, Rolm offers 4)
> - In superuser mode, IO and memory protection for each user can be
> set up individually.
> - Any access violation is trapped and handeled by superuser code.
> - Of course commands for mode switching and setting up the
> memory and IO ranges must exist.
> I have got a real machine (Rolm 1602) having this implemented
> and dating from 1975. A document on this "Access Protection Module" as
> Rolm calls it also is dated 1975. It consists of a microcode module
> which realizes an extension of the 16 bit Nova instruction set and an
> additinoal CPU module, taking care of the new modes and supervising
> the IO- and memory accesses.
> My question is not regarding virtual memory memory, but regarding
> protection (IO and memory) to ensure capsulation of indivitual
> processes - not necessarily for multi user environments but e.g.
> for safety critical applications...
> Probably OS/2 in 1987 was one of the first home computer OSes to
> support memory protection (how about IO protection?), BSD on some
> Digital PDP-* was earlier (1977?) but still after the 1602.
> Any hints out there on other "Mini" architectures of that era having
> someting similar?
What about the Norsk Data series of machines, NORD-1, NORD-10 etc.
The NORD-10 had memory protection and paging. Circa 1973. According to the
wiki page the NORD-1 had an option to provide virtual memory. The wiki page
claim the NORD-1 to be the first mini to have virtual memory (1969). I
cannot really tell if this is true. https://en.wikipedia.org/wiki/Nord-1
More information about the cctalk