La prototipo de la hejma OS Phantom bazita sur Genode estos preta antaŭ la fino de la jaro

Dmitry Zavalishin parolis pri projekto por porti virtualan maŝinon de la mastruma sistemo Phantom por labori en la medio de Genode mikrokerno OS. La intervjuo notas, ke la ĉefa versio de Phantom jam pretas por pilotprojektoj, kaj la Genode-bazita versio estos preta por uzi fine de la jaro. En la sama tempo, nur realigebla koncipa prototipo estis anoncita en la retejo de la projekto, kies stabileco kaj funkcieco ne estis alportitaj al nivelo taŭga por industria uzo, kaj inter la tujaj planoj la formado de alfa versio taŭga por eksperimentoj. de triapartaj programistoj estas menciita.

La projektkodo estas distribuita sub la LGPL-licenco, sed la lasta ŝanĝo en la ĉefa deponejo estis datita de novembro 2019. Publika agado rilata al la projekto koncentriĝas en deponejo kun forko por Genode, kiu estas konservita ekde decembro 2020 de Anton Antonov, studento de Innopolis University.

Ekde la fruaj 2000-aj jaroj, la mastruma sistemo Phantom disvolviĝas kiel persona projekto de Dmitry Zavalishin, kaj ekde 2010 ĝi estas transdonita sub la flugilon de la kompanio Digital Zone kreita de Dmitry. La sistemo estas rimarkinda pro sia fokuso pri alta fidindeco kaj la uzo de la koncepto "ĉio estas objekto" anstataŭ "ĉio estas dosiero", kio ebligas al vi malhavi la uzadon de dosieroj pro la konservado de la memorstato kaj daŭra ciklo de laboro. Aplikoj en Phantom ne estas ĉesigitaj, sed estas nur suspenditaj kaj rekomencitaj de la interrompita punkto. Ĉiuj variabloj kaj datumstrukturoj povas esti konservitaj tiel longe kiel la aplikaĵo bezonas, kaj la programisto ne bezonas specife zorgi pri konservado de la datumoj.

Aplikoj en Phantom estas kompilitaj en bajtkodon, kiu funkcias en stak-bazita virtuala maŝino, simila al la Java virtuala maŝino. La virtuala maŝino certigas persiston de aplika memoro - la sistemo periode restarigas momentfotojn de la stato de la virtuala maŝino al permanenta amaskomunikilaro. Post ĉesigo aŭ kraŝo, laboro povas daŭri komencante de la lasta konservita memorfotofoto. Momentfotoj estas kreitaj en nesinkrona reĝimo kaj sen paŭzi la funkciadon de la virtuala maŝino, sed la momentfoto registras unufojan tranĉaĵon, kvazaŭ la virtuala maŝino estus haltigita, konservita al disko kaj komencita denove.

Ĉiuj aplikoj funkcias en ofta tutmonda adresspaco, kiu eliminas la bezonon de kuntekstoŝanĝoj inter la kerno kaj aplikoj, kaj ankaŭ signife simpligas kaj akcelas la interagadon inter aplikaĵoj kurantaj en la virtuala maŝino, kiu povas interŝanĝi objektojn per referencpaso. Alirdisigo estas efektivigita je la nivelo de objektoj, al kiuj referencoj povas esti akiritaj nur per vokado de la taŭgaj metodoj (ekzistas neniu puntera aritmetiko). Ĉiuj datumoj, inkluzive de nombraj valoroj, estas prilaboritaj kiel apartaj objektoj.

Por la aplikaĵo, laboro ŝajnas esti kontinua kaj ne dependas de OS-rekomencoj, kraŝoj kaj komputilaj haltoj. La programa modelo por Phantom estas komparita kun funkciado de senĉesa aplika servilo por objekta programlingvo. Porti Java-programojn al Phantom estas konsiderita unu el la ĉefaj metodoj de aplikaĵevoluo, kiu estas faciligita per la simileco de la Phantom virtuala maŝino al la JVM. Krom la bajtkoda kompililo por la Java lingvo, la projekto planas krei kompililojn por Python kaj C#, kaj ankaŭ efektivigi tradukilon de la intera kodo WebAssembly.

Por plenumi operaciojn, kiuj postulas altan rendimenton, kiel video- kaj audio-prilaborado, eblas ruli binarajn objektojn kun indiĝena kodo en apartaj fadenoj (LLVM estas uzata por kunveni binarajn objektojn). Por aliri malaltnivelajn kernservojn, kelkaj VM-klasoj ("internaj" klasoj) estas efektivigitaj ĉe la OS-kernnivelo. Por ruli Linuksajn aplikaĵojn, POSIX-tavolo estas provizita, kiu kopias alvokojn necesajn por la funkciado de Uniksaj procezoj (persisto por aplikoj en la POSIX-tavolo ankoraŭ ne estas disponigita).

La prototipo de la hejma OS Phantom bazita sur Genode estos preta antaŭ la fino de la jaro

Tradicia Phantom OS, krom la virtuala maŝino, inkluzivas sian propran kernon kun la efektivigo de fadenoj, memormanaĝero, rubokolektilo, sinkronigaj mekanismoj, enigo/eliga sistemo kaj ŝoforoj por labori kun aparataro, kio signife malfaciligas alporti la projekton. al preteco por ĝeneraligita uzo. Aparte, komponantoj kun reto stako, grafika subsistemo kaj uzantinterfaco estas evoluigitaj. Estas rimarkinde, ke la grafika subsistemo kaj fenestra administranto funkcias ĉe la kernnivelo.

Por pliigi la stabilecon, porteblon kaj sekurecon de la projekto, oni provis porti la virtualan maŝinon Phantom por labori uzante komponantojn de la malferma mikrokerna operaciumo Genode, kies evoluo estas kontrolita de la germana kompanio Genode Labs. Por tiuj, kiuj volas eksperimenti kun Phantom bazita sur Genode, speciala konstrua medio bazita en Docker estis preparita.

Uzado de Genode ebligos uzi jam pruvitajn mikrokernojn kaj ŝoforojn, kaj ankaŭ movi la ŝoforojn en uzantspacon (en sia nuna formo, la ŝoforoj estas skribitaj en C kaj ekzekutitaj ĉe la Phantom-kerno-nivelo). Precipe, eblos uzi la mikrokernon seL4, kiu spertis matematikan fidindeckonfirmon, konfirmante ke la efektivigo plene konformas al la specifoj specifitaj en la formala lingvo. Oni konsideras la eblecon prepari similan pruvon de fidindeco por la virtuala maŝino Phantom, kiu permesos kontroli la tutan OS-medion.

La ĉefa aplika areo por la haveno bazita en Genode estas la disvolviĝo de aplikoj por diversaj industriaj kaj enkonstruitaj aparatoj. Nuntempe, aro da ŝanĝoj por la virtuala maŝino jam estis preparita kaj ligoj estis aldonitaj kiuj funkcias aldone al Genode por certigi la persiston de kernaj komponantoj kaj la ĉefaj malaltnivelaj interfacoj. Oni rimarkas, ke la virtuala maŝino Phantom jam povas funkcii en la 64-bita Genode-medio, sed ankoraŭ necesas efektivigi la VM en persista reĝimo, reverki la ŝoforan subsistemon kaj adapti komponantojn kun reto-stako kaj grafika subsistemo por Genode.

La prototipo de la hejma OS Phantom bazita sur Genode estos preta antaŭ la fino de la jaro
La prototipo de la hejma OS Phantom bazita sur Genode estos preta antaŭ la fino de la jaro
La prototipo de la hejma OS Phantom bazita sur Genode estos preta antaŭ la fino de la jaro


fonto: opennet.ru

Aldoni komenton