l i n u x - u s e r s - g r o u p - o f - d a v i s
L U G O D
 
Next Meeting:
January 6: Social gathering
Next Installfest:
TBD
Latest News:
Nov. 18: Club officer elections
Page last updated:
2003 Mar 31 16:31

The following is an archive of a post made to our 'vox-tech mailing list' by one of its subscribers.

Report this post as spam:

(Enter your email address)
Re: [vox-tech] definition of a virtual machine
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [vox-tech] definition of a virtual machine



On Monday 31 March 2003 12:39 pm, Peter Jay Salzman wrote:
> can someone tell me if this is a formally correct explanation of what a
> virtual machine is?
>
> pete
>
>
> A "real computer" provides an operating system many things, including a
> CPU, I/O channels, memory, a BIOS to provide low level access to
> motherboard and I/O resources, etc.  When an operating system wants to
> write to a hard drive, it communicates through a device driver that
> interfaces directly with the hardware device memory.
>
> However, it's possible to give a program all the hardware resources it
> needs.  When it wants to access a hard drive, give it some memory to
> write to.  When it wants to set an IRQ, give it some bogus instructions
> that lets it think it set an IRQ.  If you do this correctly, then in
> principle, there's no way for the application to know whether it's
> really accessing hardware or tricked by being given resources which
> simulate hardware.  A virtual machine is the environment which tricks
> applications into believing they're running on a real computer.  It
> provides all the services that a real computer would provide.
>
> VM's were used initially in the 1960's to emulate time shared operating
> systems, but these days we use them to run software which was written
> for foreign operating systems, or more commonly, an entire operating
> system.  Because of the nature of the VM, the foreign OS can't tell the
> difference between operating in a VM or in a "real" machine.
> _______________________________________________
> vox-tech mailing list
> vox-tech@lists.lugod.org
> http://lists.lugod.org/mailman/listinfo/vox-tech


Well, I can't find my old CS book, but I prefer the Java definition for a 
VM: 

"An abstract specification for a computing device that can be implemented in 
different ways, in software or hardware. ..." 

It goes on to more java and jvm specific information.  I think the 
important keyword is abstract.  You're definition is more specific, but 
a VM can describe just about any computing device, and arguably 
every computing device may not have the components you listed.  

Mike

--
wenk@praxis.homedns.org
Mike Wenk
	
_______________________________________________
vox-tech mailing list
vox-tech@lists.lugod.org
http://lists.lugod.org/mailman/listinfo/vox-tech



LinkedIn
LUGOD Group on LinkedIn
Sign up for LUGOD event announcements
Your email address:
facebook
LUGOD Group on Facebook
'Like' LUGOD on Facebook:

Hosting provided by:
Sunset Systems
Sunset Systems offers preconfigured Linux systems, remote system administration and custom software development.

LUGOD: Linux Users' Group of Davis
PO Box 2082, Davis, CA 95617
Contact Us

LUGOD is a 501(c)7 non-profit organization
based in Davis, California
and serving the Sacramento area.
"Linux" is a trademark of Linus Torvalds.

Sponsored in part by:
EDGE Tech Corp.
For donating some give-aways for our meetings.