[virtmach] Definition a virtual machine ?
James Powell
james@advancedsw.com
Tue, 16 Nov 1999 11:00:09 -0700 (MST)
Laurent Martelli writes:
> >>>>> "James" == James Powell <james@advancedsw.com> writes:
>
> > John Morrison writes:
> >>
> >> Can anybody point me at information, specifications, or
> >> implementations for virtual machines that enable OS-level
> >> programs to be written/run?
>
> James> I think that the Mach microkernel at least partially solves
> James> this problem.
>
> James> It isn't really a virtual machine as Mach has no instruction
> James> set, only a C API.
>
> How would you define a virtual machine ?
>
> I'd say that any API can be considered a virtual machine. Having
> byte-coded instructions is just an implementation issue of the VM
> after all.
I agree that byte-coded instructions are an implementation issue, but
I would disagree that any API can be considered a virtual machine in
the conventional sense of the term. As far as I know, virtual
machines implemented in software always support general-purpose
programming (they are Turing machines).
I would agree that any API can be viewed as a virtual state machine,
but I think that `virtual machine' on its own implies support for
general purpose programming.
James