Prototîpa OS Phantom a navxweyî ya li ser bingeha Genode-ê dê beriya dawiya salê amade bibe

Dmitry Zavalishin li ser projeyek ji bo veguheztina makîneyek virtual ya pergala xebitandinê Phantom ku di hawîrdora OS-ya mîkrokernel Genode de bixebite axivî. Hevpeyvîn destnîşan dike ku guhertoya sereke ya Phantom jixwe ji bo projeyên pîlot amade ye, û guhertoya bingehîn a Genode dê di dawiya salê de ji bo karanîna amade be. Di heman demê de, li ser malpera projeyê tenê prototîpek têgihîştî ya bikêrhatî hatiye ragihandin, ku aramî û fonksiyona wê ji bo karanîna pîşesazî negihîştiye astek guncaw, û di nav planên bilez de avakirina guhertoyek alpha ya ku ji bo ceribandinan maqûl e. ji hêla pêşdebirên partiya sêyemîn ve tê gotin.

Koda projeyê di bin lîsansa LGPL de tê belav kirin, lê guherîna paşîn a di depoya sereke de di Mijdara 2019-an de bû. Çalakiya gelemperî ya têkildarî projeyê di depoyek bi qalikek ji bo Genode, ku ji Kanûna Pêşîn a 2020-an vir ve ji hêla Anton Antonov, xwendekarek ji Zanîngeha Innopolis ve hatî domandin, tê berhev kirin.

Ji destpêka salên 2000-an vir ve, pergala xebitandina Phantom wekî projeyek kesane ya Dmitry Zavalishin pêşve diçe, û ji sala 2010-an vir ve ew di bin baskê pargîdaniya Digital Zone ya ku ji hêla Dmitry ve hatî afirandin ve hatî veguheztin. Pergal bi baldariya xwe ya li ser pêbaweriya bilind û karanîna têgeha "her tişt tiştek e" li şûna "her tişt pelek e", ku dihêle hûn bêyî karanîna pelan bikin ji ber parastina rewşa bîranînê û çerxa xebatê ya berdewam. Serlêdanên li Phantom nayên qedandin, lê tenê têne sekinandin û ji xala qutkirî ji nû ve têne destpêkirin. Hemî guhêrbar û strukturên daneyê heya ku hewcedariya serîlêdanê heye dikarin werin hilanîn, û bernamenûs ne hewce ye ku bi taybetî ji hilanîna daneyan xeman bike.

Serlêdanên li Phantom di nav bytecode de têne berhev kirin, ku di makîneyek virtual-based stack-ê de, mîna makîneya virtual Java-yê dimeşîne. Makîneya virtual domdariya bîranîna serîlêdanê misoger dike - perîyodîk dîmenên rewşa makîneya virtual li medyaya daîmî vedigire. Piştî ragirtin an şikestinekê, kar dikare ji wêneya bîranîna paşîn a tomarkirî dest pê bike berdewam bike. Snapshot di moda asynchronous de û bêyî sekinandina xebata makîneya virtual têne çêkirin, lê perçeyek yek-carî di wêneyê de tê tomar kirin, mîna ku makîneya virtual hate sekinandin, li ser dîskê hate hilanîn û ji nû ve dest pê kir.

Hemî serîlêdan di cîhek navnîşek gerdûnî ya hevpar de têne xebitandin, ku hewcedariya guheztina kontekstê di navbera kernel û serîlêdanan de ji holê radike, û di heman demê de bi girîngî têkiliya di navbera sepanên ku di makîneya virtual de dixebitin hêsan dike û bileztir dike, ku dikare tiştan bi derbasbûna referansê biguhezîne. Veqetandina gihîştinê di asta tiştan de pêk tê, referansên ku tenê bi gazîkirina rêbazên guncan têne peyda kirin (hejmarek nîşanker tune). Her dane, tevî nirxên hejmarî, wekî tiştên cuda têne hilberandin.

Ji bo serîlêdanê, kar domdar xuya dike û bi ji nû ve destpêkirina OS-ê, têkçûn û qutkirina komputerê ve ne girêdayî ye. Modela bernamekirinê ji bo Phantom bi xebitandina serverek serîlêdanê ya ku ji bo zimanek bernamesaziya objeyê nayê rawestan tê berhev kirin. Veguheztina bernameyên Java ji Phantom re yek ji awayên sereke yên pêşkeftina serîlêdanê tête hesibandin, ku ji hêla wekheviya makîneya virtual Phantom bi JVM-ê re hêsan dibe. Ji bilî berhevkarê bytecode ji bo zimanê Java, proje plan dike ku berhevkeran ji bo Python û C# biafirîne, û hem jî wergerek ji koda navberê WebAssembly bicîh bîne.

Ji bo pêkanîna operasyonên ku performansa bilind hewce dike, wek pêvajoyek vîdyoyî û bihîstwerî, gengaz e ku meriv tiştên binary bi koda xwemalî di mijarên cihêreng de bimeşîne (LLVM ji bo berhevkirina tiştên binary tê bikar anîn). Ji bo gihîştina karûbarên kernel-asta nizm, hin dersên VM (dersên "navxweyî") di asta kernel OS-ê de têne bicîh kirin. Ji bo xebitandina serîlêdanên Linux, qatek POSIX tê peyda kirin ku bangên ku ji bo xebata pêvajoyên Unix hewce ne dişibînin (berdewamiya serîlêdanên di qata POSIX de hîn nehatiye peyda kirin).

Prototîpa OS Phantom a navxweyî ya li ser bingeha Genode-ê dê beriya dawiya salê amade bibe

Phantom OS-ya kevneşopî, ji bilî makîneya virtual, kernela xwe ya bi cîbicîkirina mijaran, rêveberek bîranînê, berhevkarek çopê, mekanîzmayên hevdengkirinê, pergalek têketin / derketinê û ajokarên ji bo xebata bi hardware re vedihewîne, ku bi girîngî anîna projeyê tevlihev dike. amadebûna ji bo karanîna berfireh. Ji hev veqetandî, pêkhateyên bi stûnek torê, binepergalek grafîkî û navgînek bikarhêner têne pêşve xistin. Hêjayî balkişandinê ye ku jêrpergala grafîkê û rêveberê pencereyê di asta kernelê de dixebitin.

Ji bo zêdekirina aramî, veguheztin û ewlehiya projeyê, hewl hat dayîn ku makîneya virtual Phantom bi karanîna pêkhateyên pergala xebitandina mîkrokernelê ya vekirî Genode bixebite, ku pêşkeftina wê ji hêla pargîdaniya Almanî Genode Labs ve tê çavdêr kirin. Ji bo kesên ku dixwazin bi Phantom-ê li ser bingeha Genode ceribandinê bikin, hawîrdorek avahiyek taybetî ya Docker-ê hatî amadekirin.

Bikaranîna Genode dê gengaz bike ku meriv mîkrokernel û ajokarên jixwe îsbatkirî bikar bîne, û hem jî ajokaran biguhezîne cîhê bikarhêner (di forma xweya heyî de, ajokar bi C têne nivîsandin û di asta kernel Phantom de têne darve kirin). Bi taybetî, dê mimkun be ku meriv mîkrokernelê seL4 bikar bîne, ku ji verastkirina pêbaweriya matematîkî derbas bûye, piştrast dike ku pêkanîn bi tevahî bi taybetmendiyên ku di zimanê fermî de hatine destnîşan kirin re têkildar e. Ihtîmala amadekirina delîlek pêbaweriyê ya ji bo makîneya virtual Phantom tête hesibandin, ku dê rê bide verastkirina tevahiya hawîrdora OS-ê.

Qada serîlêdanê ya sereke ji bo bendera-based Genode pêşkeftina serîlêdanên ji bo amûrên cihêreng ên pîşesazî û pêvekirî ye. Heya nuha, komek guheztinên ji bo makîneya virtual jixwe hatine amade kirin û girêdan hatine zêdekirin ku li ser Genode dixebitin da ku domdariya pêkhateyên kernel û pêwendiyên bingehîn ên asta nizm misoger bikin. Tê destnîşan kirin ku makîneya virtual Phantom jixwe dikare di hawîrdora 64-bit Genode de bixebite, lê dîsa jî pêdivî ye ku VM-ê di moda domdariyê de bicîh bike, binepergala ajokerê ji nû ve bixebite û hêmanan bi stûnek torê û binepergalek grafîkî ji bo Genode re adapte bike.

Prototîpa OS Phantom a navxweyî ya li ser bingeha Genode-ê dê beriya dawiya salê amade bibe
Prototîpa OS Phantom a navxweyî ya li ser bingeha Genode-ê dê beriya dawiya salê amade bibe
Prototîpa OS Phantom a navxweyî ya li ser bingeha Genode-ê dê beriya dawiya salê amade bibe


Source: opennet.ru

Add a comment