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)

0
votes
1answer
25 views

Proper way to test software on Mac OS X

I am new to Mac OS developing. I have an application that I want to test deployment on. Essentially the app will download dependencies and setup the app. If I need to make changes to the deployment I ...
24
votes
8answers
3k views

Is overriding Object.finalize() really bad?

The main two arguments against overriding Object.finalize() is that: You don't get to decide when it's called. It may not get called at all. If I understand this correctly, I don't think those are ...
1
vote
1answer
43 views

Virtualization vs Container

Most of cloud computing technologies are based on virtualization. The advertisement of cloud computing technologies often refers reliability and reduction of costs. But when compared with container ...
1
vote
2answers
134 views

Difference between PyPy and JVM

From my understanding the default Python interpreter(CPython) compiles source code into bytecode and then interprets the bytecode into machine code. PyPy on the other hand makes use of JIT to optimize ...
1
vote
2answers
76 views

Is ART an installation process? Or an OS? Or a virtual Machine?

When attempting to understand Android Runtime, I came across the wikipedia page. The graphic shown there adds to my confusion. If .dex is getting converted entirely to ELF, why is ART needed anymore? ...
3
votes
3answers
247 views

How can I implement an 'if' statement in an interpreter?

If I were writing a compiler (say for a stack-based VM), the code for an if statement: if (<some_expression>) { <some_instructions> } Would be translated to the following ...
1
vote
2answers
106 views

Virtual machines versus containers, what use cases are suited to each? [closed]

I hear a fair amount of people using Docker these days, and I am wondering where they execl compared to virtual machines, and when a virtual machine would be a more suitable choice.
1
vote
1answer
93 views

Paravirtualization and process virtualization: with or without hardware support?

In Tanenbaum's Modern Operating Systems, fourth edition, about virtualization: Are Virtualization without HW support, Virtualization with HW support, Paravirtualization, and Process virtualization ...
-2
votes
1answer
88 views

VCS a Vagrant box [closed]

I have two computers (1 Laptop with Ubuntu that I use for development in 99% of my time but I also have a pretty much unused PC with Windows. I also have an unused server machine at home. I would like ...
2
votes
1answer
107 views

If using a VM as a development environment, should tooling live inside the VM or on the host?

There are a couple of questions already here for whether or not a VM should be used as a development environment. I don't wish to answer that question here but I'm assuming that a VM should be used as ...
-2
votes
2answers
160 views

Creating a language for the virtual machine of another language: compile to that language or compile to the byte code? [closed]

I want to create a compiler for language - Call the language, "A". I want my compiler to compile code, capable of running on language B's virtual machine. Would it be a better choice to compile ...
2
votes
1answer
118 views

Unique_ptr to hold memory for custom VM

I work for a company that use a custom DSL and my job is to port the VM to C++. I'm trying to do this in compliance with the C++11 standard so i use auto when appropriate, the new for syntax, etc. ...
1
vote
2answers
384 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, ...
2
votes
1answer
144 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 ...
1
vote
0answers
41 views

how to combine logs coming from multiple virtual machines for processing?

Scenario: Two virtual machines produce logs. I want these logs to be sent to a central server for processing (as soon as a line of these logs is generated-->streaming ). The condition here is that I ...
1
vote
2answers
195 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 ...
3
votes
4answers
809 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 ...
0
votes
1answer
121 views

Is my 'variable-storing area' basically a 'heap'?

I'm planning to implement a simple VM/interpreter kind of thing for a simple language I'm making. The compiler of the language emits mostly stack-oriented instructions to be executed by the VM. The ...
0
votes
1answer
126 views

How does a stack VM manage with only one stack?

Lately I've been asking a lot of questions here about VMs. Here's another one: I understand that often stack based VMs use only one stack - the call stack - for everything. E.g. it is also used for ...
5
votes
3answers
351 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 ...
1
vote
2answers
145 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 ...
2
votes
1answer
278 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 ...
5
votes
2answers
580 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 ...
1
vote
2answers
494 views

Flaws in my PHP development setup - sharing sources causing lags

I have following development setup for my PHP projects: Working station running on Windows 7 with PhpStorm IDE. GIT for version controlling. CentOS on virtual machine (VirtualBox) with Apache and ...
6
votes
2answers
597 views

Modern.IE VM license

Microsoft provides some VMs for testing purposes (advertised on Stack Overflow) and I'm trying to understand the license terms. The one I don't really understand is 1.b. You may use the software ...
17
votes
3answers
2k 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 ...
1
vote
0answers
53 views

Auto Create VM and display IE

I have just acciquired an old Dell Poweredge SC1425 from an old friend, this server will act as a development box for web based applications. All has been going well, I have installed the following ...
2
votes
2answers
207 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 ...
0
votes
2answers
243 views

What happened to VM based deployments?

Watched some MountainWest RubyConf 2014 talks and noticed an interesting theme. Many dynamic programming environments back in the old days used to be self-contained VM images, e.g. SmallTalk, ...
1
vote
2answers
231 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 ...
-2
votes
3answers
170 views

Why don't interpreters interpret bytecode (like VMs) - instead of source code? [closed]

Edited the question to be more clear: It is known that interpreting bytecode is much faster than interpreting source code or some IL version of the source code. The interpreter has a much easier time ...
-2
votes
3answers
436 views

Are there programming languages that their programs don't run on a VM or natively, but rather on an interpreter? [closed]

In this question I presented an idea I have for a simple programming language. The way programs written in this language will be run, is inside an interpreter written in Java, which will interpret the ...
0
votes
3answers
132 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 ...
3
votes
5answers
645 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 ...
0
votes
4answers
338 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 ...
3
votes
2answers
407 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 ...
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? ...
0
votes
1answer
476 views

Limitations of using Hyper-V Virtual Machine as .NET Development enviroment

I've been thinking of using a Hyper-V Machine as instead of physical computer for installing my .NET / Azure / Xamarin / ASP.NET / Windows Phone development tools. That way I could easily move from my ...
2
votes
2answers
322 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 ...
7
votes
4answers
758 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 ...
2
votes
3answers
637 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
2answers
235 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 ...
8
votes
1answer
309 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 ...
3
votes
3answers
652 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 ...
-4
votes
1answer
304 views

Are there any flaws in this Programming Language / Virtual Machine design? [closed]

I am building a Virtual Machine and I think I have a perfect program design but I am worried as I don't have too much experience on this field there might be flaws. Before I'll tell you how it'll ...
2
votes
1answer
242 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 ...
12
votes
3answers
863 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: ...
3
votes
2answers
709 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 ...
40
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 ...
6
votes
1answer
914 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 ...