Frumgerð innlenda OS Phantom sem byggir á Genode verður tilbúin fyrir áramót

Dmitry Zavalishin talaði um verkefni til að flytja sýndarvél Phantom stýrikerfisins til að vinna í Genode microkernel OS umhverfinu. Í viðtalinu kemur fram að aðalútgáfan af Phantom er þegar tilbúin fyrir tilraunaverkefni og útgáfan sem byggir á Genode verður tilbúin til notkunar í lok árs. Á sama tíma hefur aðeins verið tilkynnt um framkvæmanlega hugmyndafræðilega frumgerð á vefsíðu verkefnisins, þar sem stöðugleiki og virkni hefur ekki verið færð í það horf sem hentar til iðnaðarnota, og meðal bráðaáætlana um myndun alfaútgáfu sem hentar fyrir tilraunir af þriðja aðila verktaki er getið.

Verkefniskóðanum er dreift undir LGPL leyfinu, en síðasta breyting á aðalgeymslunni var dagsett í nóvember 2019. Opinber starfsemi tengd verkefninu er einbeitt í geymslu með gaffli fyrir Genode, sem hefur verið viðhaldið síðan í desember 2020 af Anton Antonov, nemanda frá Innopolis háskóla.

Frá því snemma á 2000. áratugnum hefur Phantom stýrikerfið verið að þróast sem persónulegt verkefni Dmitry Zavalishin og síðan 2010 hefur það verið flutt undir væng Digital Zone fyrirtækisins sem Dmitry bjó til. Kerfið er þekkt fyrir áherslu sína á mikla áreiðanleika og notkun hugtaksins „allt er hlutur“ í stað „allt er skrá“, sem gerir þér kleift að vera án þess að nota skrár vegna varðveislu minnisstöðu og samfelld hringrás vinnu. Umsóknum í Phantom er ekki hætt, heldur er þeim aðeins frestað og haldið áfram frá þeim stað sem var rofin. Hægt er að geyma allar breytur og gagnaskipulag eins lengi og forritið þarfnast og forritarinn þarf ekki að hafa sérstakar áhyggjur af því að vista gögnin.

Forrit í Phantom eru sett saman í bætikóða, sem keyrir í sýndarvél sem byggir á stafla, svipað og Java sýndarvélin. Sýndarvélin tryggir viðvarandi minni forritaminni - kerfið endurstillir reglulega skyndimyndir af ástandi sýndarvélarinnar á varanlegan miðil. Eftir lokun eða hrun getur vinnan haldið áfram frá síðustu vistuðu minnismynd. Skyndimyndir eru búnar til í ósamstilltum ham og án þess að gera hlé á virkni sýndarvélarinnar, en einskiptissneið er skráð í skyndimyndina, eins og sýndarvélin hafi verið stöðvuð, vistuð á disk og ræst aftur.

Öll forrit keyra á sameiginlegu alheimsvistfangarými, sem útilokar þörfina fyrir samhengisskipti á milli kjarnans og forrita, og einnig einfaldar og flýtir verulega fyrir samspili forrita sem keyra í sýndarvélinni, sem getur skipt á hlutum með tilvísunarsendingum. Aðskilnaður aðgengis fer fram á vettvangi hluta, sem aðeins er hægt að fá tilvísanir í með því að kalla á viðeigandi aðferðir (það er enginn bendireikningur). Öll gögn, þar með talið tölugildi, eru unnin sem aðskildir hlutir.

Fyrir forritið virðist vinnan vera samfelld og er ekki háð endurræsingu stýrikerfisins, hrun og tölvulokun. Forritunarlíkanið fyrir Phantom er borið saman við að keyra óstöðvandi forritaþjón fyrir forritunarmál hluta. Flutningur Java forrita til Phantom er talin ein helsta aðferðin við þróun forrita, sem er auðveldað af líkingu Phantom sýndarvélarinnar og JVM. Auk bæklakóðaþýðanda fyrir Java tungumálið, ætlar verkefnið að búa til þýðendur fyrir Python og C#, auk þess að innleiða þýðanda úr WebAssembly millikóðanum.

Til að framkvæma aðgerðir sem krefjast mikillar afkasta, eins og mynd- og hljóðvinnslu, er hægt að keyra tvöfalda hluti með innfæddum kóða í aðskildum þráðum (LLVM er notað til að setja saman tvöfalda hluti). Til að fá aðgang að kjarnaþjónustu á lágu stigi eru sumir VM flokkar („innri“ flokkar) útfærðir á OS kjarnastigi. Til að keyra Linux forrit er POSIX lag sem líkir eftir símtölum sem eru nauðsynleg fyrir rekstur Unix ferla (viðhald fyrir forrit í POSIX laginu er ekki enn veitt).

Frumgerð innlenda OS Phantom sem byggir á Genode verður tilbúin fyrir áramót

Hefðbundið Phantom OS, auk sýndarvélarinnar, inniheldur sinn eigin kjarna með útfærslu þráða, minnisstjóra, sorphirðu, samstillingarkerfi, inntaks-/úttakskerfi og rekla til að vinna með vélbúnað, sem flækir verulega að koma verkefninu til reiðubúnings fyrir víðtæka notkun. Sérstaklega er verið að þróa íhluti með netstafla, grafísku undirkerfi og notendaviðmóti. Það er athyglisvert að grafíkundirkerfið og gluggastjórinn starfa á kjarnastigi.

Til að auka stöðugleika, færanleika og öryggi verkefnisins var reynt að flytja Phantom sýndarvélina til að virka með íhlutum í opna örkjarna stýrikerfinu Genode, en þróun þess er í umsjón þýska fyrirtækisins Genode Labs. Fyrir þá sem vilja gera tilraunir með Phantom byggt á Genode hefur sérstakt Docker byggt byggingarumhverfi verið útbúið.

Notkun Genode mun gera það mögulegt að nota þegar sannaða örkjarna og rekla, auk þess að færa reklana inn í notendarými (í núverandi mynd eru reklarnir skrifaðir í C ​​og keyrðir á Phantom kjarnastigi). Sérstaklega verður hægt að nota seL4 örkjarna, sem hefur gengist undir stærðfræðilega áreiðanleikasannprófun, sem staðfestir að útfærslan uppfylli að fullu þær forskriftir sem tilgreindar eru á formlegu tungumáli. Verið er að skoða möguleikann á að útbúa svipaða sönnun á áreiðanleika fyrir Phantom sýndarvélina, sem mun leyfa sannprófun á öllu stýrikerfisumhverfinu.

Helsta notkunarsvæði fyrir höfnina sem byggir á Genode er þróun forrita fyrir ýmis iðnaðar- og innbyggð tæki. Eins og er, hefur sett af breytingum fyrir sýndarvélina þegar verið undirbúið og bindingum hefur verið bætt við sem vinna ofan á Genode til að tryggja viðvarandi kjarnahluta og helstu lágstigsviðmót. Það er tekið fram að Phantom sýndarvélin getur nú þegar unnið í 64-bita Genode umhverfinu, en það er samt nauðsynlegt að innleiða VM í þrautseigju ham, endurvinna ökumanns undirkerfið og laga íhluti með netstafla og grafík undirkerfi fyrir Genode.

Frumgerð innlenda OS Phantom sem byggir á Genode verður tilbúin fyrir áramót
Frumgerð innlenda OS Phantom sem byggir á Genode verður tilbúin fyrir áramót
Frumgerð innlenda OS Phantom sem byggir á Genode verður tilbúin fyrir áramót


Heimild: opennet.ru

Bæta við athugasemd