A virtual machine is an emulation layer between a program and the OS that presents to the application a specialized environment to run in, than the raw environment that the OS provides.

learn more… | top users | synonyms (1)

49
votes
17answers
12k views

Thoughts on Development using Virtual Machines [closed]

I'll be working as a development lead for a startup and I've suggested that we use VMs for development. I'm not talking about each developer having a desktop with VMs for testing/development, I mean ...
39
votes
11answers
3k views

Are there any reasons not to accept a software deliverable as a virtual machine?

This is a question about logistics, not a technical question. My company has outsourced some embedded software work. Specifically, we have payed a contractor to develop an embedded system for us ...
25
votes
4answers
3k views

Why aren't there other programming languages that compile to Python bytecode?

In Java, there are multiple languages that compile to Java bytecode and can run on the JVM -- Clojure, Groovy, and Scala being the main ones I can remember off the top of my head. However, Python ...
16
votes
7answers
5k views

Java IDE written in pure Java? [closed]

Is there a Java IDE written in Java? I just got my year 9 DET laptop today at school, and there are all sorts of restrictions set in place. Somewhat annoyingly, you cannot run any executable other ...
16
votes
3answers
1k views

Why do VMs need to be “stack machines” or “register machines” etc.?

(This is an extremely newbie-ish question). I've been studying a little about Virtual Machines. Turns out a lot of them are designed very similarly to physical or theoretical computers. I read that ...
15
votes
11answers
4k views

Reasons to Use a VM For Development [duplicate]

Background: I work at a start-up company, where one team uses Virtual Machines to connect to a remote server to do their development, and another team (the team I'm on) uses local IIS/SQL Server ...
13
votes
3answers
10k views

Why would more CPU cores on virtual machine slow compile times?

[edit#2] If anyone from VMWare can hit me up with a copy of VMWare Fusion, I'd be more than happy to do the same as a VirtualBox vs VMWare comparison. Somehow I suspect the VMWare hypervisor will be ...
10
votes
3answers
559 views

Which are the alternatives to using a stack to represent function call semantics?

We all know and love that function calls are usually implemented using the stack; there are frames, return addresses, parameters, the whole lot. However, the stack is an implementation detail: ...
8
votes
1answer
264 views

What's the relationship between meta-circular interpreters, virtual machines and increased performance?

I've read about meta-circular interpreters on the web (including SICP) and I've looked into the code of some implementations (such as PyPy and Narcissus). I've read quite a bit about two languages ...
7
votes
4answers
653 views

Why not free memory as soon as its reference counter hits zero [duplicate]

A lot of languages like Java and C# have garbage collectors that free memory when that memory no longer has any reference. Yet they don't immediately free it after the reference counter hits zero but ...
7
votes
4answers
1k views

How do I explain to my boss what a 'Virtual Machine' means? [closed]

Most probably my boss didn't write a single word on a keyboard in his entire life. He saw computers and he has a cell phone. He is a smart man. How can I explain to him what a 'virtual machine' is? ...
6
votes
1answer
576 views

What language is the CLR written in?

Just out of curiosity, what language is the CLR written in? I read on the Java Virtual Machine wikipedia entry that it is programmed in C++; is this the same for the CLR? Sorry if this is off-topic, ...
6
votes
1answer
287 views

Difference between language virtual machine and emulating vm?

I'm having a hard time understanding the difference between an emulation virtual machine and a language vm. I started with the research and implementation of an emulation virtual machine. Primarily ...
5
votes
8answers
718 views

Slow developer machines - approach with vmware good?

we are using slow developer notebooks. They come equipped with vista and 2 gb rams, which slows down everything. Someone decided a good resolution would be to use vmware clients instead of faster pc ...
5
votes
6answers
404 views

Are there issues with learning to program on a Virtual Machine?

I'm not a programmer, but financial analyst by profession who is learning how to code (Python, Django, C w/ ctypes when I need something to go really fast) in a virtual Ubuntu setup on my work laptop. ...
5
votes
3answers
246 views

What would the register-machine bytecode for this code look like?

I hope this kind of question isn't off-topic on this site. I'm finally getting the hang of what a stack based machine is, and how to compile code for it. For example, the following code: 2 * 5 + 1 ...
5
votes
2answers
507 views

If statements in “generic” assembly?

I'm reading a relatively 'friendly' and simple book about compilers named "Let's Build A Compiler" (originally a series of articles). The compiler written in the book generates instructions in some ...
5
votes
2answers
295 views

Isolated environment for software stacks

I was sure that I would find this question, but I couldn't. How to create an isolated development environment? It other words, a sandbox, where I can install different combinations of web servers, ...
5
votes
1answer
666 views

Setting up a development environment in the cloud? [closed]

I'm interested in transitioning my development environment onto the cloud. I currently use VirtualBox with Vagrant to manage separate virtual machines for each individual project. What would be the ...
4
votes
6answers
5k views

Best solution to run a Linux sandbox on my Windows machine? [closed]

I'd like to develop some node.js on my windows machine by using a virtual linux server that runs as a program and that I would access through ssh. I'd like this virtual linux instance to access the ...
4
votes
4answers
5k views

Recommendations on running Visual Studio inside a VMWare VDI environment?

Does anyone have experience running Visual Studio inside a VDI environment? Would you recommend it? Would you advise against it? Our Background Our department is one of the few in the ...
4
votes
2answers
543 views

What do you think of an interpreter written in Java? [closed]

I am currently working on the implementation of a new programming language, for fun. I realize that most languages never become popular, but I still want the language to have a high-quality ...
4
votes
1answer
430 views

Is there any license restriction to avoid binary translation of CIL to custom bytecode?

Prior to actual question, let me summarize what I'm trying to do. I plan to implement a small, JIT-enabled, register-based VM runtime. Instead of making a proper compiler (which is hard IMO) for a ...
3
votes
4answers
667 views

Why do VMs not execute the assembly directly?

Many VMs execute a language of binary form, knows as 'bytecode', which is assembled down from a human readable 'assembly' language. For example the assembly instructions push 1 push 2 add are ...
3
votes
5answers
368 views

Virtual machine for a high level programming language vs an operating system

It struck me recently that a virtual machine for a high level programming language is very much like an OS. It manages resources, e.g. stack, heap, etc. similar to how an operating system manages ...
3
votes
2answers
277 views

Speed difference between VM-based and compiled code [closed]

Not so long ago I was told by a senior academic that, these days, VM-based code could run nearly as fast as compiled code, but my own experience is that compiled code runs several orders of time ...
3
votes
2answers
507 views

Which are the fundamental stack manipulation operations?

I'm creating a stack oriented virtual machine, and so I started learning Forth for a general understanding about how it would work. Then I shortlisted the essential stack manipulation operations I ...
3
votes
2answers
402 views

How did the term “hypervisor” come into use?

I've read about the "hypervisor" in hardware virtualization. VMs are not my area, so I can't quite see where the term came from. THe wikipedia article talks about how "the hardware's supervisor ...
3
votes
2answers
294 views

What is the best way to maintain software tool chains?

Short Question What is the best way to create, maintain, and distribute software development tool chains? Background I am trying to develop a workflow / process to create an isolated environment in ...
3
votes
3answers
400 views

What is the job of a language virtual machine, and creating one [closed]

Recently I have become incredibly interested in language development. The past few weeks I have written many language front ends (lexer, parser) including a calculator language/expression parser and ...
3
votes
1answer
656 views

Distributing my Application inside a Debian Virtual Machine Image— How to meet GPL obligations?

I have a Linux application I've developed, and I have created a standalone VMWare Image that people can download to try out the application without needing to install and configure a Linux Server. I ...
3
votes
1answer
220 views

Architectural considerations for a new black box program

I see an emerging trend in "cloud" computing to move work load to a third-party server and get charged pennies for amount of work done in this way. This could be anything from file hosting to user ...
2
votes
2answers
226 views

What is the advantage of a programmers VM apart from portability [duplicate]

I can understand the benefits of Java running on a JVM. Portability. Nice simple reason. But I have always been puzzled as to why Microsoft brought out their own version of a JVM - .NET. C# is ...
2
votes
3answers
398 views

Interpreter or virtual machine that does not execute bytecode

The developers of the Dart language tell that there is a virtual machine that executes statements written in Dart language. What is the difference between an interpreter and a virtual machine that ...
2
votes
1answer
280 views

Is there a way to get the version of Ubuntu that Google uses for development? [closed]

Is there a way to get the version of Ubuntu that Google uses for development? Even better would be a full up VMWare or Virtual Box Virtual Machine image that might include a full complement of ...
2
votes
1answer
101 views

Is the JVM “heap” inside the JVM software, or inside the physical computer?

I wanted to as this question about VMs in general, but focused it to JVM implementations only so this doesn't get closed as too broad. The JVM has a concept of a "heap". If my understanding is ...
2
votes
1answer
184 views

Representing floating-point numbers in bytecode

How do interpreted languages typically go about representing floating-point numbers in their bytecode? For example, suppose I've got a Java program with the line double a = 3.0; What does 3.0 look ...
2
votes
2answers
354 views

How to devise instruction set of a stack based machine?

Stack based virtual machines like CLR and JVM has different set of instructions. Is there any theory behind devising the instruction set while creating a virtual machine? e.g. there are JVM ...
2
votes
2answers
216 views

Is virtual machine image a good protection for source code?

We have developed an application that is sold as an online service. After some time we realized that some of customers would need/prefer/require to have it installed locally on their intranet. However ...
2
votes
2answers
149 views

Does a vm implemented in garbage collected language need a garbage collector?

This is more of a theoretical question. If jvm is implemented in go which itself is a garbage collected language, then does that jvm need a separate garbage collector to be implemented for its own ...
2
votes
1answer
106 views

How do VMs implement function calling?

I'm reading a compiler textbook that compiles to some form of assembly. Since I don't know this assembly language I decided to invent my own simple "assembly language" and implement a basic "virtual ...
2
votes
1answer
311 views

Virtual Machines And Unit/Integration Testing Web Application

I am in the process of adding unit testing to a project I am working on at work and a suggestion came up that I should use VMs to populate the database with good data. This was suggested as an ...
1
vote
2answers
118 views

Why does a bytecode VM use stack or registers opposed to direct operations? [duplicate]

I'm working on a simple bytecode interpreter to learn how virtual machines work. I've read about VMs and it seems that all of them are either stack based or register based. At the time it made sense, ...
1
vote
2answers
98 views

Prevent product key from being used on multiple virtual machines

I have a software product. it will probably run on VMs that have no network connection at all. I want the user to pay for each VM the user runs. I thought to ask the user for some kind of hardware ...
1
vote
2answers
135 views

Do VMs use one stack for everything? [duplicate]

Most VMs have a "call stack" to keep track of where to return from each function that was called. This is often simply regarded as "the stack". However often a stack is needed for operations that ...
1
vote
2answers
158 views

Developing a virtual machine / sandbox

I'm interested in learning how a virtual machine/sandbox actually works. I have developed an 8051 emulator and also wrote a dissassembler for x86, so this part of a virtual machine is not really the ...
1
vote
3answers
804 views

Does it violate the license to use Windows XP Mode with Virtual Box?

I am working on a team developing a client-side application. We work in a Linux environment, but the server we work with can only be run from a Windows environment. As such, each developer is being ...
1
vote
1answer
405 views

what programming languages and skills are necessary to learn hypervisor development?

I would like to know the skills and programming languages necessary to learn hypervisor development and any good resource to start learning?
0
votes
4answers
231 views

What exactly is Virtual Machine Bytecode? [closed]

I want to work on a very simple compiler for a very simple language. The compiler will compile the code to some basic bytecode. Later, a virtual machine program will run the bytecode, and execute the ...
0
votes
3answers
109 views

Would this interpreter be considered a Virtual Machine? [closed]

(I reworded my question to make it more specific). Consider a programming language, that it's programs may only be run inside a specific program that serves as an interpreter. The interpreter scans ...