pvmfw: entry: Introduce start() & main_wrapper()

As the environment needs to be fully configured before Rust code can run
without taking particular care about the memory or MMIO it accesses and
as we want to take advantage of Rust error-handling (Result<>, ?, ...)
and borrow checker, introduce a 3-stage wrapping of the main() function
where resources are progressively configured (then dropped) before
main() gets run.

Test: atest MicrodroidTestApp
Change-Id: I3faaba0f481225ae90f07e1f7f1e0b1855a26bae
3 files changed
tree: c0c0a616e4d433a35d68250881867052784c9fec
  1. apex/
  2. apkdmverity/
  3. authfs/
  4. avmd/
  5. compos/
  6. demo/
  7. docs/
  8. javalib/
  9. launcher/
  10. libs/
  11. microdroid/
  12. microdroid_manager/
  13. pvmfw/
  14. rialto/
  15. tests/
  16. virtualizationservice/
  17. vm/
  18. vmbase/
  19. vmclient/
  20. zipfuse/
  21. .clang-format
  22. .gitignore
  23. Android.bp
  24. OWNERS
  25. PREUPLOAD.cfg
  26. README.md
  27. TEST_MAPPING
README.md

Virtualization

This repository contains userspace services related to running virtual machines on Android, especially protected virtual machines. See the getting started documentation and Microdroid README for more information.