Home

Awesome

rcore-vmm

CI

VMM (Virtual Machine Monitor) app for rCore OS runs on top of RVM.

Can run the unmodified ucore_os_lab as a guest OS in rCore:

Run uCore in rCore

Build

Install prebuilt musl toolchain from musl.cc.

Then, build userspace VMM app for rCore:

$ make [ARCH=x86_64]

How to run in rCore

Clone rCore recursively with rcore-user, rcore-vmm and ucore_os_lab:

$ git clone https://github.com/rcore-os/rCore.git --recursive

Build rcore-user with EN_VMM=y:

$ cd rCore/user
$ make sfsimg ARCH=x86_64 EN_VMM=y

Build and run rCore with HYPERVISOR=on:

$ cd ../kernel
$ make run mode=release ARCH=x86_64 HYPERVISOR=on

Run the vmm app in rCore shell:

Hello world! from CPU 0!
/ # cd vmm
/vmm # ./vmm
rvm fd = 3
vmid = 1
UCORE_BIOS_ENTRY = 0x9000
[INFO] success to map ucore.img to ide base:disk = 0:0
[INFO] success to add empty disk 134217728 bytes, base:disk = 0:1
[INFO] success to map sfs.img to ide base:disk = 1:0
vcpu_id = 1

(THU.CST) os is loading ...

Now uCore is booting and your can get uCore's shell soon.