V rámci projektu ARCVM (ARC Virtual Machine), Google vyvíjí una nová verze střední vrstva pro spuštění aplikací pro Android pro Chrome OS.
Klíčový rozdíl oproti současné vrstvě ARC ++ (Android Runtime pro Chrome) navrhuje se použití celého virtuálního stroje místo kontejneru. Technologie zabudované do ARCVM se již používají v subsystému Crostini, který je určen ke spouštění aplikací založených na systému Linux v systému Chrome OS.
Crostini navrhuje jakousi bezproblémovou virtualizaci Debianu pomocí kterého je možné překonat omezení desktopu určeného pro cloudové služby vašeho systému.
LXD tato funkce umožňuje uživateli systému Chrome OS instalovat aplikace z úložišť Debianu a nechte je integrovat do hlavního operačního systému. V nové položce Graber vysvětluje, jak to všechno funguje.
Aby bylo možné používat aplikace pro Linux, bude nutné mít Chromebook, který bude nadále oficiálně podporován společností Google. Také potřebujete hardware, aby měl dostatečnou kapacitu pro provoz virtuálního stroje.
Pro použití virtuálního stroje bylo několik důvodů, ale největším bylo zabezpečení. Přímý přístup k linuxovému jádru ze systému Chrome OS by vytvořil více příležitostí pro škodlivý kód nebo dokonce i viry.
U Androidu Google ovládá ekosystém aplikací prostřednictvím Obchodu Play, což obecně znamená, že aplikacím lze důvěřovat. A pokud si chcete stáhnout aplikace pro Android, musíte zařízení přepnout do vývojářského režimu, který vám umožní dělat potenciálně nebezpečné věci.
Proto místo izolované nádoby Pomocí jmenných prostorů, Seccomp, systémového volání, SELinuxu a cgroups pro implementaci Androidu v ARCVM se používá virtuální strojový monitor CrosVM založený na hypervisoru KVM a upravený na úrovni obrazu tuningového systému Termina, včetně minimalizovaného jádra a minima systémové prostředí.
V systému Linux, kde Google tuto úroveň kontroly nemá, neexistoval způsob, jak se omezit pouze na důvěryhodné aplikace. Tento problém vyřeší použití virtuálního počítače, protože pokud si nainstalujete škodlivou aplikaci, můžete jednoduše vypnout virtuální počítač, odstranit jej a začít znovu, aniž by to mělo obecně dopad na Chrome OS.
Vstup a výstup na obrazovku je organizován spuštěním prostředního složeného serveru ve virtuálním stroji, který přeposílá výstup, vstupní události a operace schránky mezi virtuálním a primárním prostředím (v ARC ++ byla na DRM použita zkratka vrstva přes uzel Render).
Integrace virtuálního počítače s operačním systémem Chrome OS tak, aby se aplikace Linuxu v Chromebookech cítily jako doma, nebyla bez problémů. Například velká část nedávné práce byla věnována vytvoření podpory GPU, která by umožnila graficky náročnější aplikace pro Linux (a potenciálně hry).
V blízké budoucnosti, Google neplánuje nahradit současný subsystém ARC ++ za ARCVM, ale z dlouhodobého hlediska je ARCVM zajímavý z hlediska sjednocení se subsystémem spouštět aplikace Linux a poskytovat přísnější izolaci z prostředí Android.
Stejně jako přímý přístup k systémovým voláním a rozhraním jádra, zranitelnost, ve které může být použita ke kompromisu z celého kontejneru systému).
Používání ARCVM také umožní uživatelům instalovat libovolné aplikace pro Android, neomezuje se pouze na propojení s katalogem Google Play a nevyžaduje přepnutí zařízení do vývojářského režimu (v normálním režimu jsou povoleny pouze selektivní aplikace z Google Play).
Tato funkce je nutná pro organizaci vývoje aplikací pro Android v systému Chrome OS. V současné době je již možné nainstalovat Android Studio na Chrome OS, ale pro testování vyvíjených aplikací je nutné zahrnout režim vývojáře.
zdroj: https://9to5google.com/