概述:
VirtualBox是一个功能强大的基于x86平台的虚拟化产品,VirtualBox可以运行在Windows,linux,mac和OpenSolaris系统上,并且支持大量的客户操作系统,包括windows,Linux,Solaris和OpenSolaris还有FreeBSD。
VirtualBox采用全虚拟化技术,就是模拟操作系统所需的所有硬件,这样操作系统可以不经修改运行于硬件平台之上。这种方法也常常叫做“本地虚拟化”,它是不同于仅仅模仿的。这种方法中,客户代码是不允许直接运行与宿主计算机上的。相反的,每一条机器指令都被翻译(“模拟”)。
VirtualBox是一个开源源码软件,发布在GNU GPL下。
特点:
模块化:VirtualBox有非常好的模块化设计,以及定义好的编程接口、C/S设计。这使得控制VirtualBox变得很容易:例如,你可以启动在一个虚拟机的GUI环境下启动一个虚拟机,然后通过命令行来控制它;或者远程地控制。VirtualBox还有一套完成的SDK。
XML描述虚拟机:虚拟机的配置完全通过XML文件完成,虚拟机的定义可以很容易的在不同计算机之间移植。
对于Windows和Linux的客户附件:VirtualBox有提供特殊的软件套件可以安装在Windows和Linux下来改善其性能以及集成。
VirtualBox进程:
当启动VirtualBoxGUI时,一个额外进程VBoxSVC开始启动。一旦从GUI启动一个虚拟机(VM),这时将会有两个window(一个主窗口,一个虚拟机窗口),有三个进程在运行。一个是对应主窗口,一个对应于所启动的VM,一个是一个服务Daemon进程。对于host操作系统,所启动的VM就是一个进程。
有两种封装对于VirtualBox的文件和进程:
1. Client/Server 架构。正在运行的VirtualBox和VM的各个方面可以通过一个简单而且功能强大的COM/XPCOM API来控制。例如,有一个叫做VboxManage的命令行工具,可以想GUI一样控制所有的VM
2. 前台/后台 架构。在Linux上的VBoxVMM.so是VirtualBox的核心部件。
虚拟机内部:
从宿主操作系统的角度看,一个虚拟机只是一个进程。宿主操作系统不需要太多的特殊支持针对虚拟化。VirtualBox会有一个Ring0级别的驱动需要装载在host OS中,来支持VirtualBox的工作,它只是负责给VM分配物理内存;处理CPU寄存器等。
在虚拟机启动之后,宿主计算机可以运行在几个不同的状态下:
1. CPU在执行host Ring-3代码,或者host Ring-0代码(就像在没有运行VirtualBox的状态下)
2. CPU模拟客户代码(Ring-3的宿主VM进程)。基本上,VirtualBox尽量以本地的方式运行guest code。VirtualBox的虚拟器(src/emulator)是基于QEMU项目的。
3. CPU本地运行客户Ring-3代码。
4. 本地运行客户Ring-0代码。
分享到:
相关推荐
【VirtualBox介绍】 VirtualBox是一款强大的开源虚拟机软件,由德国Innotek公司起初开发,后被Sun Microsystems收购,现在归属甲骨文公司。这款软件是用Qt编程语言编写的,遵循GNU General Public License(GPL)...
1. 虚拟机概念与VirtualBox介绍 虚拟机是一种通过软件模拟完整硬件系统的解决方案,它为每个操作系统实例提供了独立的运行环境。VirtualBox 是由 Oracle 公司开发的一款跨平台虚拟化软件,它支持多种操作系统,包括 ...
VirtualBox SDK是由Oracle公司提供的官方文档,版本号为5.2.8,内容涵盖了对VirtualBox软件开发工具包(Software Development Kit)的介绍和使用指南。VirtualBox是Oracle公司出品的一款虚拟机软件,广泛应用于...
本教程将详细介绍如何利用Vagrant和VirtualBox来搭建和管理虚拟机,解决VirtualBox运行慢的问题。 1. **Vagrant的优势** - 可移植性:Vagrant通过Vagrantfile统一管理和配置虚拟机环境,使得开发环境可以在任何...
本教程将详细介绍如何在Fedora Core 5 (kernel: 2.6.20) 中安装并使用VirtualBox,并通过图文形式展示安装Windows XP的过程。 #### 二、安装准备 **1. 更新内核** 为了确保VirtualBox能够正常运行,首先需要确保...
本次介绍的版本是"VirtualBox-5.1.26-117224-Win.zip",它包含了一个适用于Windows操作系统的VirtualBox安装文件"VirtualBox-5.1.26-117224-Win.exe"。 虚拟化技术的核心在于,它能够将一台物理计算机的硬件资源...
通过上述知识点的详细介绍,我们可以了解到VirtualBox不仅提供了强大的虚拟化能力,还为开发者提供了丰富的API和工具,以实现更高级的功能定制。这对于那些希望进一步挖掘VirtualBox潜力的开发者来说是非常宝贵的...
在Windows中构建VirtualBox介绍提供了一组脚本,可以帮助您轻松地编译VirtualBox。 您可以从找到用于在Windows中编译VirtualBox的官方手册,但是现在已经过时了。 因此,我们编写了python脚本,这些脚本准备了进行...
- **关于 Web 服务的一般性介绍** Web 服务是一种通过 HTTP 协议在网络上提供服务的技术,它可以跨平台工作,支持多种数据格式,如 XML 和 JSON 等。VirtualBox 的 Web 服务提供了对虚拟机的操作支持,如启动、...
下面将详细介绍如何在VirtualBox中设置虚拟声卡和网卡驱动。 首先,让我们关注虚拟声卡驱动。在VirtualBox中,虚拟声卡的设置位于“设置”->“硬件”->“音频”部分。VirtualBox提供了多种音频设备模型供选择,如...
在本文中,我们将详细介绍如何将 VirtualBox 虚拟机设置为连接外网。通过设置 VirtualBox 虚拟机的网络连接、桥接方式和网卡信息,我们可以使虚拟机 ping 通外网,并轻松地进行在线安装各种软件。 标题解释 ...
本文将围绕“VirtualBox-6.0.4-128413-Win.rar”这个压缩包,详细介绍VirtualBox的相关知识点。 首先,VirtualBox 6.0.4-128413-Win是VirtualBox的一个特定版本,适用于Windows操作系统。这个版本包含了所有的基本...
4. 支持的主机操作系统:这部分内容会介绍哪些操作系统平台支持运行VirtualBox虚拟机软件,如Windows、Mac OS X、Linux以及Solaris。 5. VirtualBox的安装和扩展包安装:详细步骤包括检查先决条件、执行安装程序、...
通过以上步骤,我们不仅成功地在Windows下安装了VirtualBox,还详细介绍了如何配置虚拟机网络,使之能够访问外网。此外,还简要介绍了如何实例化多台虚拟机构建一个简单的集群环境。这些知识对于开发者、系统管理员...
这份文档详细介绍了如何使用VirtualBox的软件开发工具包(SDK),以便开发者可以编写能够与VirtualBox交互的应用程序。本指南中涉及的主要知识点包括VirtualBox的模块化架构、主要API的两种表现形式(Web服务和...
下面将详细介绍这两个工具及其联合使用的方法。 **VirtualBox** VirtualBox是由德国公司Oracle开发的一款免费且开源的虚拟化软件。它可以在多种操作系统上运行,包括Windows、macOS、Linux和Solaris。VirtualBox...
以下将详细介绍VirtualBox 4.2.16的一些关键特性: 1. **多操作系统支持**:VirtualBox 支持创建和管理各种操作系统类型,包括32位和64位系统,用户可以在同一台电脑上运行Windows、Linux、macOS、FreeBSD等多种...
#### 一、背景介绍 在IT行业中,虚拟化技术的应用越来越广泛。其中,HMC (Hardware Management Console) 是IBM Power Systems中用于管理和监控硬件的重要工具。通常情况下,用户可能会选择使用VMWare进行HMC的安装...
这篇指南将详细介绍如何在MacBook上,特别是那些搭载M1或M2芯片的型号,正确安装并使用VirtualBox。 首先,理解问题的根源至关重要。M1和M2芯片是Apple基于Arm架构设计的新一代处理器,与之前使用的Intel x86架构...