Mac 的虚拟技术 xhyve

BSD
C/C++
OS X
2015-08-10
红薯

FreeBSD 下的虚拟技术 bhyve (The BSD Hypervisor) 包含在了 FreeBSD 10.0 发行版中。而这个 xhyve 是基于 bhyve 的 Mac OS X 移植版本,也就是说我们想在 Mac 上运行 Linux 的话除了 VirtualBox, VMware Fusion 外,现在有了第三种选择。

xhyve 超级小,只有 230 KB,不依赖其他软件或库。下面的步骤基本按照 xhyve 作者的文档 xhyve – Lightweight Virtualization on OS X Based on bhyve 实现,不过跟着别人的文档并不总会一帆风顺,虽然文档已经很详细,总有碰到自己的问题的时候,有人报告说在自己的 Macbook (OS X 10.10.3) 上运行不成功。我在测试的过程中遇到的一个问题是硬盘分区问题,稍后会提到。我的编译和测试环境是 OS X Yosemite 10.10.4 + Xcode 6.3.2.

xhyve 发布的是源代码,需要编译后运行,所以 Mac 上没有安装 Xcode 的话需要先到 App Store 安装。

使用 git 下载源码后编译,运行 xhyverun.sh 后会启动一个简单的 Tiny Core Linux 虚拟机:

$ git clone https://github.com/mist64/xhyve.git
$ cd xhyve
$ make
$ ./xhyverun.sh

架构:

    +----------------------------------------------------------+
    | xhyve                                                    |
    |                                                          |
    |                            I/O                           |
    |                                                          |
    |                                                          |
    |                                                          |
    |+--------------------------------------------------------+|
    ||  vmm                   VMX guest                       ||
    ||                          Timers                        ||
    ||                        Interrupts                      ||
    |+--------------------------------------------------------+|
    +----------------------------------------------------------+
    +----------------------------------------------------------+
    |                   Hypervisor.framework                   |
    +----------------------------------------------------------+
                                  A
                                  |                         user
    ------------------------------┼------------------------------
                                  |syscall            xnu kernel
                                  V

                               VMX host
                           VMX nested paging
加载中

评论(0)

暂无评论

暂无资讯

1
回答
Mac OS X 上基于 FreeBSD/bhyve 的虚拟技术 xhyve

FreeBSD 下的虚拟技术 bhyve (The BSD Hypervisor) 是去年1月份正式发布的,包含在了 FreeBSD 10.0 发行版中。...

2015/08/10 07:07

没有更多内容

加载失败,请刷新页面

没有更多内容

Docker启动容器时的port公开方式,破除一些含糊的地方

在细看Docker的网络时推测,如果什么都port公开选项都不指定(包括Dockerfile里的EXPOSE),那么容器里侦听port的服务,也能够从Docker主机内或者其他容器里访问得到,结果的确如此,这和网上各...

2016/07/08 13:07
237
0
搭建OpenShift单机集群 —— Minishift 安装指南

minishift是一个通过虚拟机模拟OpenShift集群的工具,可用于日常开发和测试

2016/12/28 23:47
1K
1
Debugging is Easier with Docker for Mac and Weave

Debugging and testing containerized applications from a Mac can be fiddly, (because you’re running containers inside a Host, which itself is running inside the OS), especially...

2016/11/08 20:24
14
0

没有更多内容

加载失败,请刷新页面

没有更多内容

返回顶部
顶部