Skip to content

calinyara/avisor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

aVisor Hypervisor

aVisor is a bare-metal hypervisor that runs on the Raspberry Pi 3. It can be used to learn about the basic concepts of ARM virtualization and the principles of hypervisors and operating systems.


Compilation and QEMU Simulation

./scripts/demo.sh		// Compile and run the demo
./scripts/clean.sh		// Clean the project

Operation In the Console

The above demo will run 4 Guest VMs on the Hypervisor. After startup, press Enter to go to the hypervisor's console.

  • echo: A baremetal binary that echoes keyboard input.
  • lrtos: A miniature operating system that runs two user mode processes after startup, one prints "12345" and the other prints "abcde". The lrtos kernel supports the process scheduling.
  • uboot: The standard Das U-Boot Bootloader.
  • FreeRTOS: The FreeRTOS VM runs two tasks, one prints "12345" and the other prints "ABCDE". The tasks are scheduled by FreeRTOS.

help			// Print the help
vml			// Display the current Guest VMs info
vmc <vm id>		// Switch from the hypervisor's console to a Guest VM's console
@+0			// Switch back to the hypervisor's console from a Guest VM's console
ls			// List all files (VM images)
vmld <images> <load addr> <entry addr>		// Load a VM image and run it