[Info-vax] A portable VMS, was: Re: OS Ancestry
Simon Clubley
clubley at remove_me.eisner.decus.org-Earth.UFP
Tue May 18 14:43:39 EDT 2021
On 2021-05-17, John Dallman <jgd at cix.co.uk> wrote:
> In article <s7uf6n$l2m$1 at dont-email.me>,
> clubley at remove_me.eisner.decus.org-Earth.UFP (Simon Clubley) wrote:
>
>> If you were looking at a C machine model, that would also mean a
>> design where you were not tied to any architecture specific modes,
>> so VMS would have been designed around a 2-mode model in that case.
>
> I don't think it's quite that clear. The VAX hardware was designed in
> conjunction with VMS, I believe? And more than two modes was picked to
> allow the kernel to be protected from bad drivers? There's nothing about
> programming in C in itself that dictates a two-model model; UNIX always
> works that way, but that's because it evolved to that model.
>
Yes the hardware was designed in that way, but the point of the portable
VMS discussed in the linked article is that portable VMS would not use
any features that tied it to one specific architecture, such as 4 modes
when everyone else is using 2 modes.
BTW, the 4 modes in VMS was a missed opportunity. Unfortunately, the
drivers run in kernel mode along with the rest of the VMS kernel.
Executive mode is where RMS is located.
Supervisor mode is where DCL lives. (It cannot be in user mode because,
due to the design of VMS, DCL has access to the privileges of the
programs it runs).
User mode is where normal user applications run.
VMS as implemented only uses 3 inner modes to protect against
accidental damage. From a security point of view, there is only
one inner mode.
Unix works with only 2 modes because it was designed to be portable
and most of the architectures it runs on only have 2 modes.
Simon.
--
Simon Clubley, clubley at remove_me.eisner.decus.org-Earth.UFP
Walking destinations on a map are further away than they appear.
More information about the Info-vax
mailing list