Fuchsia OS arbejder på support til at køre umodificerede Linux-programmer

Google-udviklere annonceret for et par dage siden en plan om at implementere en mekanisme til at køre umodificerede programmer kompileret til Linux på Operativsystemet "Fuchsia".

For at køre Linux-programmer i brugerrummet, det er planlagt at give et "starnix"-lag for kompatibilitet med Linux ABI. I byggelaget er Linux-kernesystemets grænseflader implementeret i en driver, der lanceres som en proces for Fuchsia-operativsystemet, som kører i brugerrummet og oversætter anmodninger fra Linux-programmer til opkald til de tilsvarende Fuchsia-undersystemer.

Det observeres hvade Under udviklingen af ​​projektet vil mange Fuchsia-undersystemer skulle modificeres at implementere alle systemgrænseflader, der er tilgængelige i Linux. Starnix-arkitekturen er stort set den samme som Windows-undersystemet til Linux, som Windows bruger til at oversætte Linux-systemkald til Windows-systemkald.

Starnix-koden er planlagt til at blive implementeret i Rust for at minimere potentielle sårbarhedsvektorer.s, der potentielt kan bruges til at ophøje privilegierne for en Linux-proces til starnix-processen.

For at sikre sikkerheden i starnix, vil standard Fuchsia beskyttelsesmekanismer blive brugt, når det er muligt.

For eksempel, når du får adgang til systemtjenester såsom filsystemet, netværksstakken eller grafikundersystemet, vil starnix kun oversætte anmodninger, konvertere Linux ABI til Fuchsia-systemet ABI, hvilket tillader de samme begrænsninger, som gælder for de sædvanlige Fuchsia-processer.

Dette vil også implementere Linux-specifikke autorisationsmekanismer, for eksempel at definere, i hvilke situationer en Linux-proces har ret til at dræbe en anden.

Fuchsia-udviklerne har tidligere udviklet support til lancering af Linux-apps, men de eksperimenterede med en implementering, der fungerer analogt med, hvordan Linux-applanceringer er organiseret på Chrome OS.

For Linux-kompatibilitet tilbød Fuchsia Machina-biblioteket., som tillod Linux-programmer at køre i en speciel isoleret virtuel maskine dannet ved hjælp af en hypervisor baseret på Zircon-kernen og Virtio-specifikationerne.

Brugen af ​​virtualisering er ikke udelukket, da den komplette implementering af Linux-systemgrænsefladen ikke er en triviel opgave.

Ud over starnix-kappen, det er muligt at oprette en mekanisme til at køre linux-eksekverbare filer ved hjælp af en linux-kerne, der kører i en separat virtuel maskine. Denne metode anses for at være den nemmeste at implementere, men også den mest ressourcekrævende.

På et tidspunkt begyndte Microsoft at bygge sit Linux-kompatibilitetslag omkring oversætteren, men skiftede til sidst til at bruge den oprindelige Linux-kerne i Windows Subsystem til Linux 2.

Derudover Fuchsia har allerede et POSIX Lite-kompatibilitetslag som kører oven på Fuchsia System ABI. POSIX Lite giver dig mulighed for at køre nogle Linux-programmer, men kræver omkompilering af applikationskoden og i nogle tilfælde ændring af kildekoden.

Et af problemerne med POSIX Lite er den ufuldstændige implementering af alle POSIX-funktioner, herunder opfordringer til at ændre den globale tilstand af processer (for eksempel dræbefunktionen), som er i modstrid med sikkerhedskoncepter i Fuchsia, som forbyder at ændre den globale tilstand af processer. Express.

Brugen af ​​POSIX Lite er berettiget i processen med portering af åbne applikationers, men det løser ikke problemer med at starte programmer, for hvilke der ikke er adgang til koden (det er for eksempel umuligt at opnå kompatibilitet med Android-applikationer, der indeholder kompilerede native inserts).

Husk på, at inden for rammerne af Fuchsia-projektet udvikler Google et universelt operativsystem, der er i stand til at fungere på enhver type enhed, fra arbejdsstationer og smartphones til indlejret teknologi og forbrugerteknologi. Udviklingen er baseret på erfaringerne med at skabe Android-platformen og tager højde for manglerne inden for skalering og sikkerhed.

Systemet er baseret på Zircon-mikrokernen, baseret på udviklingen af ​​LK-projektet, udvidet til brug i forskellige klasser af enheder, herunder smartphones og personlige computere.

kilde: https://fuchsia.googlesource.com


Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for data: AB Internet Networks 2008 SL
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.