vmbase

Para VMs em execução sob crosvm em aarch64, a biblioteca vmbase fornece um linker script e padrĂ”es Ășteis para as regras de compilação, juntamente com um ponto de entrada, logging de console UART e muito mais.

#![no_main]
#![no_std]

use vmbase::{main, println};

main!(main);

pub fn main(arg0: u64, arg1: u64, arg2: u64, arg3: u64) {
    println!("Hello world");
}
  • A macro main! marca sua função principal, para ser chamada a partir do ponto de entrada vmbase.
  • O ponto de entrada vmbase lida com a inicialização do console e emite um PSCI_SYSTEM_OFF para desligar a VM se sua função principal retornar.