A Fuchsia OS a nem módosított Linux programok futtatásán dolgozik

Google fejlesztők néhány napja megjelent terv a Linux számára összeállított, módosítatlan programok futtatására szolgáló mechanizmus megvalósítására Az operációs rendszer Fukszia.

Linux programok futtatásához a felhasználói térben, "starnix" réteg biztosítását tervezi a Linux ABI támogatására. A kifejlesztett rétegben a Linux kernel rendszer interfészei egy olyan illesztőprogramban valósulnak meg, amelyet a Fuchsia operációs rendszer folyamataként indítanak el, amely a felhasználói térben fut, és a Linux programokból érkező kéréseket hívássá alakítja a megfelelő Fuchsia alrendszerekre.

Megfigyelhető, hogyA projektfejlesztés során sok fukszia alrendszert módosítani kell a Linuxban elérhető összes rendszerinterfész megvalósításához. A starnix architektúrája nagyrészt megegyezik a Windows alrendszerével a Linux számára, amely a Windows segítségével fordítja le a Linux rendszer hívásait Windows rendszer hívásokra.

A tervek szerint a starnix kódot a Rust-ban kell megvalósítani, hogy minimalizálják a lehetséges sebezhetőségi vektorokatamelyek potenciálisan felhasználhatók a Linux-folyamat jogosultságainak a starnix-folyamatra történő emelésére.

A Starnix biztonságának biztosítása érdekében, amikor csak lehetséges, szabványos fukszia védelmi mechanizmusokat kell használni.

Például, amikor olyan rendszerszolgáltatásokhoz fér hozzá, mint a fájlrendszer, a hálózati verem vagy a grafikus alrendszer, a starnix csak a kérelmeket fordítja le, átalakítva a Linux ABI-t a Fuchsia rendszer ABI-jévé, ugyanazokat a korlátozásokat engedélyezve, mint a közös fukszia-folyamatokra.

Ez egyúttal Linux-specifikus engedélyezési mechanizmusokat is megvalósít, például meghatározza, hogy az egyik Linux-folyamatnak milyen jogai vannak a másik megszüntetésére.

A Fuchsia fejlesztői a múltban fejlesztettek támogatást a Linux alkalmazások elindításához, de kísérleteztek egy olyan megvalósítással, amely analóg módon működik a Linux alkalmazás indításának a Chrome OS-en való megszervezésével.

A Linux kompatibilitás érdekében a Fuchsia felajánlotta a Machina könyvtárat, amely lehetővé tette a Linux programok futtatását egy speciális, virtuális gépben, amelyet a Zircon kernel és a Virtio specifikációi alapján hipervizor segítségével alakítottak ki.

A virtualizáció használata nem kizárt, mivel a Linux rendszer interfész teljes megvalósítása nem triviális feladat.

A starnix köpeny mellett létrehozhatunk egy mechanizmust a Linux futtatható fájlok futtatásához egy külön virtuális gépben futó Linux kernel segítségével. Ezt a módszert tartják a legkönnyebben megvalósíthatónak, ugyanakkor a legtöbb erőforrást is felemésztik.

Egy ponton a Microsoft a fordítótól kezdte fejleszteni Linux kompatibilitási rétegét, de végül átállt a natív Linux kernel használatára a Windows 2 Linux alrendszerén.

Ezen túlmenően, A Fuchsia már rendelkezik egy POSIX Lite kompatibilitási réteggel amely a Fuchsia System ABI tetején fut. A POSIX Lite lehetővé teszi néhány Linux program futtatását, de megköveteli az alkalmazás kódjának újrafordítását és bizonyos esetekben a forráskód módosítását.

Az egyik probléma a POSIX Lite programmal az összes POSIX funkció hiányos megvalósítása, beleértve a folyamatok globális állapotának megváltoztatására irányuló felhívásokat (például a kill funkciót), amelyek ellentmondanak a fuksziai biztonsági koncepcióknak, amelyek tiltják a folyamatok globális állapotának megváltoztatását. Expressz.

A POSIX Lite használata indokolt a nyitott alkalmazások portolásának folyamatábans, de nem oldja meg a programok indításával kapcsolatos problémákat, amelyekhez nincs hozzáférés a kódhoz (például lehetetlen kompatibilitást elérni a lefordított natív betéteket tartalmazó Android-alkalmazásokkal).

Ne feledjük, hogy a Fuchsia projekt keretében a Google olyan univerzális operációs rendszert fejleszt, amely bármilyen típusú eszközön képes működni, a munkaállomásoktól és az okostelefonoktól kezdve a beágyazott és a fogyasztói technológiáig. A fejlesztés az Android platform létrehozásának tapasztalataira épül, és figyelembe veszi a méretezés és a biztonság terén mutatkozó hiányosságokat.

A rendszer az LK projekt fejlesztésein alapuló Zircon mikrokernelen alapul, amelyet az eszközök különböző osztályaiban, beleértve az okostelefonokat és a személyi számítógépeket is használnak.

forrás: https://fuchsia.googlesource.com


Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

*

*

  1. Az adatokért felelős: AB Internet Networks 2008 SL
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.