Popcorn qed jiżviluppa sistema ta 'eżekuzzjoni ta' ħajta distribwita għall-qalba tal-Linux.

Virginia Tech propost għad-diskussjoni mill-iżviluppaturi tal-qalba tal-Linux, sett ta 'garża bl-implimentazzjoni ta' sistema ta 'eżekuzzjoni ta' thread distribwit Popcorn (Distributed Thread Execution), li jippermettilek torganizza l-eżekuzzjoni ta 'applikazzjonijiet fuq diversi kompjuters b'distribuzzjoni u migrazzjoni trasparenti ta' ħjut bejn hosts. Bil-Popcorn, l-applikazzjonijiet jistgħu jiġu mnedija fuq host wieħed u mbagħad jitmexxew għal host ieħor mingħajr interruzzjoni. Fi programmi b'ħafna ħjut, il-migrazzjoni ta' ħjut individwali għal hosts oħra hija permessa.

B'differenza mill-proġett CRIUBilli jippermetti li l-istat tal-proċess jiġi ffrankat u l-eżekuzzjoni terġa 'tibda fuq sistema oħra, Popcorn jipprovdi migrazzjoni bla xkiel u dinamika bejn l-hosts waqt l-eżekuzzjoni tal-applikazzjoni, li ma teħtieġ l-ebda azzjoni tal-utent u tiżgura konsistenza tal-memorja virtwali fl-hosts kollha li jħaddmu ħjut konkorrenti.

Forma tal-munzell tas-softwer tal-popcorn irqajja għall-qalba tal-Linux u librerija b'testijiet li juru kif is-sejħiet tas-sistema Popcorn jistgħu jintużaw biex jemigraw il-ħjut f'applikazzjonijiet distribwiti. Fil-livell tal-qalba, ġew proposti estensjonijiet għas-subsistema tal-memorja virtwali bl-implimentazzjoni ta 'memorja kondiviża distribwita, li tippermetti li proċessi fuq hosts differenti jaċċessaw spazju ta' indirizz virtwali komuni u konsistenti. Il-koerenza tal-paġna tal-memorja virtwali hija żgurata minn protokoll li jirreplika l-paġni tal-memorja lill-host meta jinqraw u jinvalida l-paġni tal-memorja meta jinkitbu.

L-interazzjoni bejn il-hosts titwettaq bl-użu ta' handler fil-livell tal-kernel għal messaġġi trażmessi permezz ta' socket TCP. Huwa nnutat li TCP/IP jintuża biex jissimplifika d-debugging u l-ittestjar matul il-proċess ta 'żvilupp. L-iżviluppaturi jifhmu li, mill-perspettiva tas-sigurtà u l-prestazzjoni, TCP/IP mhuwiex l-aħjar mod biex jittrasferixxi l-kontenut tal-istrutturi tal-kernel u l-paġni tal-memorja bejn l-hosts. L-hosts kollha li jmexxu applikazzjonijiet distribwiti għandu jkollhom l-istess livell ta’ fiduċja. Wara l-istabbilizzazzjoni tal-algoritmi ewlenin, se jintuża mod ta 'trasport aktar effiċjenti.

Il-popcorn ilu jiżviluppa mill-2014 bħala proġett ta’ riċerka biex jistudja l-possibbiltajiet li jinħolqu applikazzjonijiet distribwiti, li l-ħjut tagħhom jistgħu jiġu eżegwiti fuq nodi differenti f’ eteroġenja sistemi tal-kompjuters li jistgħu jgħaqqdu qlub ibbażati fuq arkitetturi differenti ta 'sett ta' struzzjonijiet (Xeon/Xeon-Phi, ARM/x86, CPU/GPU/FPGA). Is-sett ta 'garża proposti lill-iżviluppaturi tal-qalba tal-Linux jappoġġja biss l-eżekuzzjoni fuq hosts b'CPU x86, iżda hemm ukoll verżjoni aktar funzjonali ta' Popcorn Linux, li tippermetti li l-applikazzjonijiet jaħdmu fuq hosts b'arkitetturi CPU differenti (x86 u ARM). Biex tuża Popcorn f'ambjenti eteroġeni, trid tuża speċjali kompilatur ibbażat fuq LLVM. Meta taħdem b'mod distribwit fuq hosts bl-istess arkitettura, il-bini mill-ġdid b'kompilatur separat mhuwiex meħtieġ.

Popcorn qed jiżviluppa sistema ta 'eżekuzzjoni ta' ħajta distribwita għall-qalba tal-Linux.

Barra minn hekk, jista 'jiġi nnotat tħabbira proġett kemmxejn simili Telefork bl-implimentazzjoni ta 'API prototip inizjali għat-tnedija ta' proċessi tfal fuq kompjuters oħra fil-cluster (bħal furketta (), iżda tittrasferixxi l-proċess bil-furketta għal kompjuter ieħor).
Il-kodiċi huwa miktub f'Rut u s'issa jippermetti biss il-klonazzjoni ta 'proċessi sempliċi ħafna li ma jużawx riżorsi tas-sistema bħal fajls. Meta ssir sejħa telefork, il-memorja u l-istrutturi relatati mal-proċess jiġu kklonati lil host ieħor li jħaddem is-server handler (telepad). Bl-użu ta 'ptrace, ir-riflessjoni tal-memorja ta' proċess hija serializzata u, flimkien mal-istat tal-proċess u r-reġistri, trasferita għal ospitanti ieħor. L-API jippermettilek ukoll li tissejvja l-istat tal-proċess f'fajl u tirrestawrah permezz tiegħu.

Sors: opennet.ru

Żid kumment