From: John Cowan
Rather than starting another process, the Multics
shell mapped the
executable program the user requested into its own space .. then jumped
into it. The equivalent of exit() simply jumped back to the shell code.
This is from memory, so apply the proverbial grain, but ISTR that the
original concept for the Multics shell was just like that for Unix - i.e.
each command would be a separte child process. This was given up when Multics
processes turned out to be so computationally expensive, and they went to
commands being subroutines that were dynamically linked in (very easy with
Multics, where dynamic linking was a fundamental system capability) and
called from the shell.
Noel