Amazon ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π° Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π° ΡΠ²ΠΎΡ Virtual Machine Monitor (VMM), Firecracker 1.0.0, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΎ Π΄Π° ΡΠΏΡΠ°Π²Π»ΡΠ²Π° Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈ ΡΠ°Π·Ρ ΠΎΠ΄ΠΈ. Firecracker Π΅ ΡΠ°Π·ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° CrosVM, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ ΠΎΡ Google Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Linux ΠΈ Android ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ChromeOS. Firecracker ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π° ΠΎΡ Amazon Web Services Π·Π° ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΈ Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΡΠ° Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈΡΠ΅ AWS Lambda ΠΈ AWS Fargate. ΠΠΎΠ΄ΡΡ Π½Π° Firecracker Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Rust ΠΈ Π΅ Π»ΠΈΡΠ΅Π½Π·ΠΈΡΠ°Π½ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·Π° Apache 2.0.
Firecracker ΠΏΡΠ΅Π΄Π»Π°Π³Π° Π»Π΅ΠΊΠΈ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ, Π½Π°ΡΠ΅ΡΠ΅Π½ΠΈ microVM. ΠΠ° ΠΏΡΠ»Π½Π° ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡ Π½Π° microVM ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π·Π° Ρ Π°ΡΠ΄ΡΠ΅ΡΠ½Π° Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° KVM Ρ ΠΈΠΏΠ΅ΡΠ²Π°ΠΉΠ·ΠΎΡ, Π½ΠΎ Π² ΡΡΡΠΎΡΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° ΠΈ Π³ΡΠ²ΠΊΠ°Π²ΠΎΡΡΡΠ° ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Ρ Π½Π° Π½ΠΈΠ²ΠΎΡΠΎ Π½Π° ΠΊΠΎΠ½Π²Π΅Π½ΡΠΈΠΎΠ½Π°Π»Π½ΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ. Π‘ΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π΅ Π΄ΠΎΡΡΡΠΏΠ½Π° Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ x86_64 ΠΈ ARM64 ΠΈ Π΅ ΡΠ΅ΡΡΠ²Π°Π½Π° Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈ ΠΎΡ ΡΠ°ΠΌΠΈΠ»ΠΈΡΡΠ° Intel Skylake, Intel Cascade Lake, AMD Zen2 ΠΈ ARM64 Neoverse N1. ΠΡΠΈΠ³ΡΡΠ΅Π½ΠΈ ΡΠ° ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½Π΅ Π½Π° Firecracker Π² ΡΠΈΡΡΠ΅ΠΌΠΈ Π·Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅, ΠΊΠ°ΡΠΎ Kata Containers, Weaveworks Ignite ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ (ΠΎΡΠΈΠ³ΡΡΠ΅Π½ ΠΎΡ runtime firecracker-containerd).
Π‘ΠΎΡΡΡΠ΅ΡΠ½Π°ΡΠ° ΡΡΠ΅Π΄Π°, ΡΠ°Π±ΠΎΡΠ΅ΡΠ° Π²ΡΠ² Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ, Π΅ ΡΡΠΊΡΠ°ΡΠ΅Π½Π° ΠΈ ΡΡΠ΄ΡΡΠΆΠ° ΡΠ°ΠΌΠΎ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π΅Π½ Π½Π°Π±ΠΎΡ ΠΎΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ. ΠΠ° Π΄Π° ΡΠ΅ ΡΠΏΠ΅ΡΡΠΈ ΠΏΠ°ΠΌΠ΅Ρ, Π΄Π° ΡΠ΅ Π½Π°ΠΌΠ°Π»ΠΈ Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ ΠΈ Π΄Π° ΡΠ΅ ΡΠ²Π΅Π»ΠΈΡΠΈ ΡΠΈΠ³ΡΡΠ½ΠΎΡΡΡΠ° Π² ΡΡΠ΅Π΄ΠΈΡΠ΅, ΡΠ΅ ΡΡΠ°ΡΡΠΈΡΠ° ΡΡΠΊΡΠ°ΡΠ΅Π½ΠΎ ΡΠ΄ΡΠΎ ββΠ½Π° Linux (ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΡΠ΅ ΡΠ΄ΡΠ° 4.14 ΠΈ 5.10), ΠΎΡ ΠΊΠΎΠ΅ΡΠΎ Π΅ ΠΈΠ·ΠΊΠ»ΡΡΠ΅Π½ΠΎ Π²ΡΠΈΡΠΊΠΎ Π½Π΅Π½ΡΠΆΠ½ΠΎ, Π²ΠΊΠ»ΡΡΠΈΡΠ΅Π»Π½ΠΎ Π½Π°ΠΌΠ°Π»Π΅Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ ΠΈ ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π°ΡΠ° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π°.
ΠΠΎΠ³Π°ΡΠΎ ΡΠ°Π±ΠΎΡΠΈΡΠ΅ Ρ ΠΈΠ·ΡΠΈΡΡΠ΅Π½ΠΎ ΡΠ΄ΡΠΎ, Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½Π°ΡΠ° ΠΊΠΎΠ½ΡΡΠΌΠ°ΡΠΈΡ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ Π² ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Π΅ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΎΡ 5 MB. ΠΠ°Π±Π°Π²ΡΠ½Π΅ΡΠΎ ΠΎΡ ΠΌΠΎΠΌΠ΅Π½ΡΠ° Π½Π° ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ Π½Π° microVM Π΄ΠΎ Π½Π°ΡΠ°Π»ΠΎΡΠΎ Π½Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΡΠΎ Π΅ ΠΏΠΎΡΠΎΡΠ΅Π½ΠΎ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΎΡ 6 Π΄ΠΎ 60 ms (ΡΡΠ΅Π΄Π½ΠΎ 12 ms), ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ΡΠΎ Π½Π° Π½ΠΎΠ²ΠΈ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ Ρ ΠΈΠ½ΡΠ΅Π½Π·ΠΈΠ²Π½ΠΎΡΡ Π΄ΠΎ 180 ΡΡΠ΅Π΄ΠΈ Π² ΡΠ΅ΠΊΡΠ½Π΄Π° Π½Π° Ρ ΠΎΡΡ Ρ 36 ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ½ΠΈ ΡΠ΄ΡΠ°.
ΠΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΡΡΠ΅Π΄ΠΈ Π² ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΎΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ ΡΠ΅ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° ΡΠΎΠ½ΠΎΠ²ΠΈΡΡ ΠΏΡΠΎΡΠ΅Ρ Virtual Machine Manager, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡ RESTful API, ΠΊΠΎΠΉΡΠΎ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΈ ΠΊΠ°ΡΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅, ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ ΠΈ ΡΠΏΠΈΡΠ°Π½Π΅ Π½Π° microVM, ΠΈΠ·Π±ΠΎΡ Π½Π° CPU ΡΠ°Π±Π»ΠΎΠ½ΠΈ (C3 ΠΈΠ»ΠΈ T2), ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° Π±ΡΠΎΡ Π½Π° Π²ΠΈΡΡΡΠ°Π»Π½ΠΈΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΠΎΡΠΈ (vCPU) ΠΈ ΡΠ°Π·ΠΌΠ΅Ρ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ°, Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΈ ΠΈ Π΄ΠΈΡΠΊΠΎΠ²ΠΈ Π΄ΡΠ»ΠΎΠ²Π΅, Π·Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ Π·Π° ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΠ΅Π»Π½Π° ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ ΠΈ ΠΈΠ½ΡΠ΅Π½Π·ΠΈΠ²Π½ΠΎΡΡ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅, ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Π½Π΅ Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½Π° ΠΏΠ°ΠΌΠ΅Ρ ΠΈ ΠΌΠΎΡΠ½ΠΎΡΡ Π½Π° ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ° Π² ΡΠ»ΡΡΠ°ΠΉ Π½Π° Π½Π΅Π΄ΠΎΡΡΠ°ΡΡΡΠ½ΠΈ ΡΠ΅ΡΡΡΡΠΈ.
ΠΡΠ²Π΅Π½ ΡΠ΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΊΠ°ΡΠΎ ΠΏΠΎ-Π΄ΡΠ»Π±ΠΎΠΊ ΠΈΠ·ΠΎΠ»Π°ΡΠΈΠΎΠ½Π΅Π½ ΡΠ»ΠΎΠΉ Π·Π° ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ, Firecracker Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ ΠΈ Π·Π° Π·Π°Ρ ΡΠ°Π½Π²Π°Π½Π΅ Π½Π° FaaS (ΡΡΠ½ΠΊΡΠΈΡ ΠΊΠ°ΡΠΎ ΡΡΠ»ΡΠ³Π°) ΡΠΈΡΡΠ΅ΠΌΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ ΠΈΠ·ΡΠΈΡΠ»ΠΈΡΠ΅Π»Π΅Π½ ΠΌΠΎΠ΄Π΅Π» Π±Π΅Π· ΡΡΡΠ²ΡΡ, Π² ΠΊΠΎΠΉΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°ΡΠ° ΡΠ΅ ΠΈΠ·Π²ΡΡΡΠ²Π° Π½Π° Π΅ΡΠ°ΠΏΠ° Π½Π° ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° Π½Π° Π½Π°Π±ΠΎΡ ΠΎΡ ΠΌΠ°Π»ΠΊΠΈ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ, Π²ΡΡΠΊΠ° ΠΎΡ ΠΊΠΎΠΈΡΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ²Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎ ΡΡΠ±ΠΈΡΠΈΠ΅ ΠΈ Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ°Π½Π° Π·Π° ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½Π° ΡΠ°Π±ΠΎΡΠ° Π±Π΅Π· Π²ΡΡΠ·ΠΊΠ° ΡΡΡ ΡΡΠ΅Π΄Π°ΡΠ° (Π±Π΅Π· ΡΡΡΡΠΎΡΠ½ΠΈΠ΅, ΡΠ΅Π·ΡΠ»ΡΠ°ΡΡΡ Π½Π΅ Π·Π°Π²ΠΈΡΠΈ ΠΎΡ ΠΏΡΠ΅Π΄ΠΈΡΠ½ΠΎΡΠΎ ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ²Π°ΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ°). Π€ΡΠ½ΠΊΡΠΈΠΈΡΠ΅ ΡΠ΅ ΡΡΠ°ΡΡΠΈΡΠ°Ρ ΡΠ°ΠΌΠΎ ΠΊΠΎΠ³Π°ΡΠΎ Π²ΡΠ·Π½ΠΈΠΊΠ½Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡ ΠΈ Π²Π΅Π΄Π½Π°Π³Π° ΡΠ»Π΅Π΄ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΡΡΠ±ΠΈΡΠΈΠ΅ΡΠΎ ΠΏΡΠΈΠΊΠ»ΡΡΠ²Π°Ρ ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΡΠΈ. Π‘Π°ΠΌΠ°ΡΠ° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° FaaS Ρ ΠΎΡΡΠ²Π° ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΠΌΠ°ΡΠ°Π±ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ΅Π΄ΠΈΡΠ΅, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΠΎΠ΄Π³ΠΎΡΠ²Π΅Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈΠΌ ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π°Π½Π΅ΡΠΎ ΠΎΡ Intel Π½Π° Ρ ΠΈΠΏΠ΅ΡΠ²Π°ΠΉΠ·ΠΎΡ Cloud Hypervisor 21.0, ΠΈΠ·Π³ΡΠ°Π΄Π΅Π½ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ Π½Π° ΡΡΠ²ΠΌΠ΅ΡΡΠ½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡ Rust-VMM, Π² ΠΊΠΎΠΉΡΠΎ ΠΎΡΠ²Π΅Π½ Intel ΡΡΠ°ΡΡΠ²Π°Ρ ΠΎΡΠ΅ Alibaba, Amazon, Google ΠΈ Red Hat. Rust-VMM Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Π΅Π·ΠΈΠΊΠ° Rust ΠΈ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΡΠ·Π΄Π°Π²Π°ΡΠ΅ Ρ ΠΈΠΏΠ΅ΡΠ²Π°ΠΉΠ·ΠΎΡΠΈ Π·Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΈ Π·Π°Π΄Π°ΡΠΈ. Cloud Hypervisor Π΅ Π΅Π΄ΠΈΠ½ ΡΠ°ΠΊΡΠ² Ρ ΠΈΠΏΠ΅ΡΠ²Π°ΠΉΠ·ΠΎΡ, ΠΊΠΎΠΉΡΠΎ ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΠΌΠΎΠ½ΠΈΡΠΎΡ Π½Π° Π²ΠΈΡΡΡΠ°Π»Π½Π° ΠΌΠ°ΡΠΈΠ½Π° Π½Π° Π²ΠΈΡΠΎΠΊΠΎ Π½ΠΈΠ²ΠΎ (VMM), ΡΠ°Π±ΠΎΡΠ΅Ρ Π²ΡΡΡ Ρ KVM ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠ°Π½ Π·Π° Π·Π°Π΄Π°ΡΠΈ, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° ΠΎΠ±Π»Π°ΠΊ. ΠΠΎΠ΄ΡΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΅ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π· Apache 2.0.
Cloud Hypervisor Π΅ ΡΠΎΠΊΡΡΠΈΡΠ°Π½ Π²ΡΡΡ Ρ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Linux, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠΈ ΠΏΠ°ΡΠ°Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° virtio. Π‘ΡΠ΅Π΄ ΡΠΏΠΎΠΌΠ΅Π½Π°ΡΠΈΡΠ΅ ΠΊΠ»ΡΡΠΎΠ²ΠΈ ΡΠ΅Π»ΠΈ ΡΠ°: Π²ΠΈΡΠΎΠΊΠ° ΠΎΡΠ·ΠΈΠ²ΡΠΈΠ²ΠΎΡΡ, Π½ΠΈΡΠΊΠ° ΠΊΠΎΠ½ΡΡΠΌΠ°ΡΠΈΡ Π½Π° ΠΏΠ°ΠΌΠ΅Ρ, Π²ΠΈΡΠΎΠΊΠ° ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡ, ΠΎΠΏΡΠΎΡΡΠ΅Π½Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΈ Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΈΡΠ΅ Π²Π΅ΠΊΡΠΎΡΠΈ Π½Π° Π°ΡΠ°ΠΊΠ°. ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° Π΅ΠΌΡΠ»Π°ΡΠΈΡ Π΅ ΡΠ²Π΅Π΄Π΅Π½Π° Π΄ΠΎ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΠΈ ΡΠΎΠΊΡΡΡΡ Π΅ Π²ΡΡΡ Ρ ΠΏΠ°ΡΠ°Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ°. ΠΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΡΠ΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΈ x86_64 ΠΈ AArch64. ΠΠ° ΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ Π·Π° Π³ΠΎΡΡΠΈ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΡΠ°ΠΌΠΎ 64-Π±ΠΈΡΠΎΠ²ΠΈ Π²Π΅ΡΡΠΈΠΈ Π½Π° Linux. ΠΡΠΎΡΠ΅ΡΠΎΡΡΡ, ΠΏΠ°ΠΌΠ΅ΡΡΠ°, PCI ΠΈ NVDIMM ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Ρ Π½Π° Π΅ΡΠ°ΠΏΠ° Π½Π° ΡΠ³Π»ΠΎΠ±ΡΠ²Π°Π½Π΅. ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ Π΄Π° ΠΌΠΈΠ³ΡΠΈΡΠ°ΡΠ΅ Π²ΠΈΡΡΡΠ°Π»Π½ΠΈ ΠΌΠ°ΡΠΈΠ½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΡΠ²ΡΡΠΈ.
ΠΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π½Π° Cloud Hypervisor Π²ΠΊΠ»ΡΡΠ²Π° ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡΠ° Π·Π° ΠΈΠ·Π²ΡΡΡΠ²Π°Π½Π΅ Π½Π° Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½Π° Π»ΠΎΠΊΠ°Π»Π½Π° ΠΌΠΈΠ³ΡΠ°ΡΠΈΡ Π½Π° ΠΆΠΈΠ²ΠΎ, ΠΊΠΎΡΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ΅Π΄ΠΈ Π² Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ (Live Upgrade). ΠΠΎΠ²ΠΈΡΡ ΡΠ΅ΠΆΠΈΠΌ ΡΠ΅ ΠΎΡΠ»ΠΈΡΠ°Π²Π° Ρ Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΠΏΠ°ΠΌΠ΅ΡΡΠ° Π½Π° ΠΈΠ·Ρ
ΠΎΠ΄Π½Π°ΡΠ° ΠΈ ΡΠ΅Π»Π΅Π²Π°ΡΠ° ΡΡΠ΅Π΄Π°, ΠΊΠΎΠ΅ΡΠΎ Π½Π°ΠΌΠ°Π»ΡΠ²Π° Π²ΡΠ΅ΠΌΠ΅ΡΠΎ Π·Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π·Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π² Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡ 3 ΡΠ΅ΠΊΡΠ½Π΄ΠΈ Π½Π° 50 ms. ΠΡΠ΅ΠΏΠΎΡΡΡΠΈΡΠ΅Π»Π½ΠΎΡΠΎ Linux ΡΠ΄ΡΠΎ ββΠ΅ 5.15 (5.14 ΠΈΠΌΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈ Ρ virtio-net).
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru