เฟรมเวิร์กการจำลองการทำงานแบบเสมือนของ Android (AVF) มีสภาพแวดล้อมการดำเนินการที่ปลอดภัยและเป็นส่วนตัว สำหรับการดำเนินการโค้ด AVF เหมาะสำหรับกรณีการใช้งานที่เน้นความปลอดภัย ซึ่งต้องมีการรับประกันการแยกที่เข้มงวดกว่าหรือแม้แต่ได้รับการยืนยันอย่างเป็นทางการ มากกว่าที่แซนด์บ็อกซ์ของแอป Android มีให้ Android มีการใช้งานอ้างอิง ของคอมโพเนนต์ทั้งหมดที่จำเป็นต่อการใช้งาน AVF AVF รองรับเฉพาะ ในอุปกรณ์ ARM64 รูปที่ 1 แสดงสถาปัตยกรรมของ AVF
 
รูปที่ 1 สถาปัตยกรรม AVF
คำจำกัดความของคำศัพท์ที่สำคัญที่สุดจากรูปที่ 1 มีดังนี้
- apexd และ zipfuse
- ติดตั้ง APEX และ APK ที่นำเข้าจากโฮสต์อย่างปลอดภัย
- authfs
- ระบบไฟล์ FUSE สำหรับแชร์ไฟล์หลายไฟล์ระหว่าง Android กับ pVM (โฮสต์และแขกรับเชิญ) อย่างปลอดภัย
- binder
- วิธีการหลักในการสื่อสารระหว่าง VM
- crosvm
- โปรแกรมตรวจสอบเครื่องเสมือนที่เขียนด้วย Rust โดย crosvm จะจัดสรรหน่วยความจำ VM สร้างเธรด CPU เสมือน และใช้แบ็กเอนด์ของอุปกรณ์เสมือน
- Generic Kernel Image (GKI)
- อิมเมจการบูตที่ได้รับการรับรองจาก Google ซึ่งมีเคอร์เนล GKI ที่สร้างจาก โครงสร้างแหล่งที่มาของ Android Common Kernel (ACK) และเหมาะที่จะแฟลชไปยัง พาร์ติชันการบูตของอุปกรณ์ Android ดูข้อมูลเพิ่มเติมได้ที่ภาพรวมของเคอร์เนล
- ไฮเปอร์ไวเซอร์
- เทคโนโลยีการจำลองเสมือนที่ AVF ใช้ หรือที่เรียกว่า pKVM ไฮเปอร์ไวเซอร์จะรักษาความสมบูรณ์ของโค้ดที่ดำเนินการและความลับของ ชิ้นงานของ pVM แม้ว่า Android ของโฮสต์หรือ pVM อื่นๆ จะถูกบุกรุกก็ตาม
- Java API
- Java API ของ VirtualizationService ซึ่งมีอยู่ในอุปกรณ์ที่รองรับ AVF เท่านั้น
 API เหล่านี้เป็นตัวเลือกและไม่ได้เป็นส่วนหนึ่งของ thebootclasspath
- Microdroid
- ระบบปฏิบัติการ Android ขนาดเล็กที่ Google จัดหาให้ซึ่งทำงานใน pVM
- Microdroid Manager
- จัดการวงจรของ pVM ภายใน pVM และดิสก์อินสแตนซ์
- API ดั้งเดิม
- ชุดย่อยของ Android Native Developers Kit (NDK)
- เครื่องเสมือนที่ใช้เคอร์เนลที่ได้รับการปกป้อง (pKVM)
- ดู Hypervisor
- เฟิร์มแวร์ pVM (pvmfw)
- โค้ดแรกที่ทำงานใน pVM pvmfwจะยืนยันเพย์โหลดและสร้าง ข้อมูลลับต่อ VM
- เครื่องเสมือนที่ได้รับการปกป้อง (pVM)
- สภาพแวดล้อมการดำเนินการที่แยกจากกันซึ่งไม่น่าเชื่อถือ (แขกรับเชิญ) ที่ทำงาน ควบคู่ไปกับระบบปฏิบัติการ Android หลัก (โฮสต์) แง่มุมที่สำคัญอย่างหนึ่งของการรักษาความปลอดภัย pVM คือแม้ว่าโฮสต์จะถูกบุกรุก แต่โฮสต์ก็ไม่มีสิทธิ์เข้าถึงหน่วยความจำของ pVM pKVM เป็นไฮเปอร์ไวเซอร์มาตรฐานสำหรับการเรียกใช้ pVM - เมื่อเทียบกับสภาพแวดล้อมการดำเนินการที่เชื่อถือได้ (TEE) ที่มีอยู่ pVM มี สภาพแวดล้อมที่สมบูรณ์ยิ่งขึ้น รวมถึงความสามารถในการเรียกใช้การกระจาย Android ขนาดเล็ก ที่เรียกว่า Microdroid (แม้ว่า Microdroid จะเรียกใช้ใน VM ที่ไม่มีการป้องกันได้ด้วย) คุณใช้ pVM แบบไดนามิกได้ และมี ชุด API มาตรฐานในสภาพแวดล้อมที่เชื่อถือได้ซึ่งพร้อมใช้งานในอุปกรณ์ทั้งหมด ที่รองรับ 
- VirtualizationService
- บริการ Android ที่จัดการวงจรของ pVM 
สิ่งต่อไปที่ควรทำ
- หากต้องการทำความเข้าใจความจำเป็นของ AVF ให้ดียิ่งขึ้น โปรดดูเหตุใดจึงต้องมี AVF
- หากต้องการอ่านเกี่ยวกับวิธีใช้ AVF สำหรับการคอมไพล์แบบแยก ให้ไปที่กรณีการใช้งาน
- หากต้องการคำอธิบายเชิงลึกเพิ่มเติมเกี่ยวกับสถาปัตยกรรมของการใช้งานอ้างอิง AVF โปรดดูสถาปัตยกรรม AVF
- หากต้องการดูข้อมูลเกี่ยวกับ Microdroid โปรดดูที่ Microdroid
- หากสนใจวิธีที่ AVF จัดการด้านความปลอดภัย โปรดดูความปลอดภัย
- หากต้องการทำความเข้าใจบทบาทของบริการการจำลองเสมือน โปรดดูที่ VirtualizationService
- สำหรับซอร์สโค้ดของ AVF หรือคำอธิบายเชิงลึกเกี่ยวกับคอมโพเนนต์แต่ละรายการ โปรดดูที่เก็บ AOSP