I have VirtualBox on my Windows 7 machine, and recently installed a Redhat linux VM. I'm planning to learn linux programming with some low-level stuff, such as kernel function calls and assembly.
My question is: is my Redhat VM a "real" linux environment for my purpose? I guess that whatever I do in the VM is done in a "linux simulator" in VirtualBox, and under the hood the "linux simulator" still does its job using functionalities provided by the Windows host (e.g. Windows function calls). Is this true?
VirtualBox is not a "Linux simulator", it is a "computer simulator". OS selections within such an simulator are for the purpose of deciding which virtual devices to make visible, and not for running a different simulator "core".
I think you should dual boot linux instead of VM because not only it saves resources ("Prevent Computer from going slow") But also give you better functionality and hardware support
Edit:
and you can also use Live Cd(also usb)
Related
There are a few notable virtualized solutions available to host virtual machines. For example, VMWare Workstation, vSphere ESXi and Virtual Box.
Please suggest which one of these to use for creating a freeBSD MIPS virtual machine?
Also, provide any specific h/w requirement for the host running the virtualized solution mentioned above to support MIPS.
Just wanted to share the answer I got from another channel. May it could help others. Quoting from the link "https://www.reddit.com/r/freebsd/comments/4o8cyc/which_vm_solution_and_hw_to_use_for_creating_a/"
"VMWare and Virtual Box don't run on MIPS or emulate MIPS so that's not even an option.
If you want to run this on x86 and emulate MIPS you can use QEMU or GXemul. There are others but those are probably the most popular/supported. If you had a MIPS machine I'm guessing you wouldn't be asking this question."
Hello Stackoverflow community,
I don't know if it's possible but I would like to have a portable linux Ubuntu OS on my USB stick:
wich I can lauch from any windows PC where I don't have administrator right
without having to "boot on it" but with launching it as an "application" in the windows OS (as MS excel for example and probably with virtualbox, vmware, or others)
without installing anything on the windows host PC
which keep the persistence (I want to work on this portable OS, install things, and find them again at the next start.)
Is that possible?
I'v found many things on the net but each time and for what I understood:
either you need the admistrator right (portable virtualbox)
or it cannot keep the persistence (live linux) so I have no choice to boot on the portable linux OS (wich I don't want)
or it's not portable so I have to install things on the PC I'm trying to work on
Any suggestion, idea, workaround would be strongly appreciated.
Thanks in advance,
Mat
I am aware that qemu does not require administrator rights. The problem is all virtualisation solutions require administrator rights either at installation time or in the case of portability beginning of runtime.
Qemu is not virtualisation, it is emulation so would be slower than virtualisation. It does run Linux, have persistance and is portable.
On the plus side, you can run amd64 on 32 bit machines (even slower), mips, arm and other architectures also.
I'm looking to make the switch from windows 7 to linux mint, but I'm still in school so I still want to be able to use some of my windows features. I plan to use Mint more often than windows.
Which would be a more "efficient" use of the virtualbox:
Putting VBox on Windows 7 and running Mint from it or
Putting VBox on Mint and running a system image of my Windows 7?
I have tried dual booting in the past but it was honestly just a nightmare, and twice I almost wiped my hard drive, so I'm very hesitant to try that again.
In terms of your preferences for "efficiency", i would say:
Native install of Windows 7 and run Linux via VirtualBox. Because Linux has a much lower resource footprint than Windows running on VirtualBox and would run quicker than windows.
If it were my preference, and this is what I setup to transition from Windows 7 to Linux Mint, I would run dual boot. As they both run natively, they both run fast. Also just setup a generic NTFS "shared" partition that you can access on both Linux and Windows for the purposes of using documents on both systems.
I actually found the Mint dual boot install quite painless and automatic. I still swap back and forth for convenience but use Mint primarily now.
It's really hard to predict performance wise which setting would be more "efficient". The best way to be sure is to try both settings and measure.
Installing VirtualBox on Windows would be the easiest step from your current setup.
In my honest opinion, because you want to get used to Linux Mint environment, so you have to use Linux Mint as your host machine, and then install virtual box in it.
It will make you to do more on Linux Mint instead of windows.
I want to be able to distribute a Linux running inside my application. The reason is that I need to add software functionality which is most easily added inside a Linux container and distributed with the application.
Is there any way to run a VM inside a C/C++ application on Windows, OSX, Linux?
VirtualBox has an API for creating/running VMs. The program Vagrant uses this to give developers a simple cross-platform way to develop. You can run vagrant up from Windows, Linux or Windows, and it does the same thing.
You can also script adding ports to your VM, so your C++ program could say "VirtualBox, boot me this image", then just connect to a TCP port to talk to the "Linux program". But debugging problems will be hard.
But if your goal is to sell a Linux program to non-Linux desktop people, it's probably best for you and your sanity to bite the bullet and port it to Windows/Mac. (Or go Cloud and sell it as a service.)
Two frameworks come to mind:
User mode Linux runs the Linux kernel as an application. This give you ultimate control over launching and managing the virtual machine from within a Linux application.
libvirt provides a toolkit for programmatically managing all manner of virtual machines.
These may both requires a Linux host. For other host operating systems, it may be necessary to manage the virtual machine manually -- or using ad hoc scripting.
QEMU can run a VM and it can be compiled on Windows and Linux and OSX. http://wiki.qemu.org/Main_Page
QEMU can be compiled as it is written in C++.
So in theory, QEMU could be embedded in a C++ program and used to run a Linux VM.
An example QEMU running Puppy Linux http://www.erikveen.dds.nl/qemupuppy/
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
What VM technologies exist for Linux, their pros and cons, and which is recommended for which application?
Since this kind of question can be asked for X other than "VM technologies for Linux", and since the answer changes with progress, I suggest to define a template for this kind of pages. Those pages will have the tag 'stateoftheart' and they will be revisited each month and each month there will be up-to-date list of technologies, up-to-date reviews and up-to-date recommendations.
This is a job for ... Wikipedia!
Types of Virtualization
Platform Virtualization
Comparison of Virtual Machines
Now that the obvious stuff is out of the way...
Linux runs fine as a guest on every VM host I've used, so I'm going to assume that you're referring to Linux as the host operating system. I'm also going to assume x86 or amd64 hardware.
Platform virtualization breaks down into two major forms: Desktop virtualization and Server virtualization. Both types will allow you to load and run multiple OS instances as guests that virtualize their I/O through the host OS. Desktop virtualization concentrates on providing a highly interactive console experience for each of the guest VMs, while Server virtualization concentrates on maximizing computing performance, generally while sacrificing console services and more exotic devices (Sound cards, USB, etc.) Server virtualization implementations typically include either RDP or VNC for remote access to a virtual console.
On Linux, your choices for Desktop Virtualization include:
VMware Workstation -- it's commercial, somewhat expensive, mature, and provides the most hardware, device, and guest OS support of any solution.
VMware Player -- it's commercial (freeware) and only supports VMs that were created elsewhere. Available with Ubuntu.
Parallels Workstation -- it's commercial, somewhat expensive, and not up to par with VMware. Doesn't support 64-bit guests.
VirtualBox -- available in commercial (freeware) and community versions (GPL). Fedora's preferred solution.
On Linux, your choices for Server Virtualization include:
VMware Server -- it's commercial (freeware), mature, and provides the most hardware, device, and guest OS support of any solution. Available with Ubuntu.
Xen -- it's open source. A para-virtualization solution, it has only recently added hardware-virtualization, so Windows guest support depends upon specific CPU support.
Virtual Iron -- a commercialized version of Xen that adds native virtualization.
KVM -- it's open source. It depends upon QEMU for the last mile. Ubuntu's preferred solution.
Linux-VServer -- it's open source. It provides virtual jails based on the host OS kernel, so no Windows guests.
For myself, I stick with VMware Workstation (7+ years) and VMware Server for my Linux-hosted virtualization needs. At work, it's VMware Workstation (on Windows), VMware Server (on Windows), and VMware ESX (on bare metal). I'll probably have another look at Xen, KVM, and VirtualBox at some point, but for right now compatibility between work and home is paramount.
2008 Oct
To be filled in at October to reflect the market status then.
2008 Sept
Products/services/technologies currently existing
VMware
Xen
VirtualBox
VServer
???
Comparisons
???
Recommendations for particular application areas
Home multi-boot replacement
Small business which has MS-Windows legacy applications
Datacenter of multinational corporation
???
W Craig Trader answer is great, but just to add there is also User-mode Linux (UML) which has been around for a while - it has been in the mainline kernel tree since 2.6.0 . Note that I haven't used it myself.
Ubuntu prefers KVM, and I believe Red Hat is moving to it over Xen now as well. Both KVM and Xen can be managed by libvirt, optionally through the virtual machine manager GUI. The virtual machine manager can manage remote instances through ssh connections.
In addition, a good comparison can be found here (pdf). Lots of performance tests done. The short version is that xen and linux-vserver were generally the best on performance grounds.