Popcorn entwéckelt e verdeelt thread Ausféierungssystem fir de Linux Kernel.

Virginia Tech proposéiert fir Diskussioun vu Linux Kernel Entwéckler, eng Rei vu Patches mat der Implementatioun vun engem verdeelt thread Ausféierung System Popcorn (Distributed Thread Execution), wat Iech erlaabt d'Ausféierung vun Uwendungen op verschiddene Computeren mat Verdeelung an transparenter Migratioun vun Threads tëscht Hosten ze organiséieren. Mat Popcorn kënnen Uwendungen op engem Host gestart ginn an dann ouni Ënnerbriechung op en aneren Host geplënnert ginn. A Multi-threaded Programmer ass d'Migratioun vun eenzelne Threads op aner Hosten erlaabt.

Am Géigesaz zum Projet CRIUAndeems de Prozesszoustand gespäichert gëtt an d'Ausféierung op engem anere System erëmfonnt gëtt, bitt Popcorn eng nahtlos an dynamesch Migratioun tëscht Hosten während der Ausféierung vun der Applikatioun, erfuerdert keng Benotzeraktioun an assuréiert virtuell Erënnerungskonsistenz iwwer all Hosten déi gläichzäiteg Threads lafen.

Popcorn Software Stack Form Flecken op de Linux Kernel an Bibliothéik mat Tester déi weisen wéi Popcorn System Uriff kënne benotzt ginn fir Threads a verdeelt Uwendungen ze migréieren. Um Kernel-Niveau goufen Extensiounen zum virtuelle Gedächtnis-Subsystem proposéiert mat der Ëmsetzung vu verdeelt gedeelt Erënnerung, wat Prozesser op verschiddene Hosten erlaabt Zougang zu engem gemeinsamen a konsequente virtuelle Adressraum. Virtuell Erënnerung Säit Kohärenz assuréiert duerch e Protokoll deen Erënnerung Säiten un den Host replizéiert wann se gelies ginn an Erënnerung Säiten ongëlteg wann geschriwen.

Interaktioun tëscht Hosten gëtt mat engem Kernel-Niveau Handler fir Messagen iwwer eng TCP Socket iwwerdroen. Et gëtt bemierkt datt TCP / IP benotzt gëtt fir Debugging an Testen während dem Entwécklungsprozess ze vereinfachen. D'Entwéckler verstinn datt, aus enger Sécherheets- a Performance Perspektiv, TCP / IP net de beschte Wee ass fir den Inhalt vu Kernelstrukturen an Erënnerungssäiten tëscht Hosten ze transferéieren. All Hosten, déi verdeelt Uwendungen lafen, mussen deeselwechte Vertrauensniveau hunn. No der Stabiliséierung vun den Haaptalgorithmen gëtt e méi effizienten Transportmodus benotzt.

Popcorn huet sech zënter 2014 als Fuerschungsprojet entwéckelt fir d'Méiglechkeeten ze studéieren fir verdeelt Uwendungen ze kreéieren, d'Threads vun deenen op verschidden Noden ausgefouert kënne ginn heterogen Rechensystemer déi Cores kombinéiere kënnen op Basis vu verschiddenen Instruktiounssetarchitekturen (Xeon / Xeon-Phi, ARM / x86, CPU / GPU / FPGA). De Set vu Patches proposéiert fir Linux Kernel Entwéckler ënnerstëtzt nëmmen Ausféierung op Hosten mat enger x86 CPU, awer et gëtt och eng méi funktionell Versioun vu Popcorn Linux, déi Applikatiounen erlaabt op Hosten mat verschiddene CPU Architekturen (x86 an ARM) ze lafen. Fir Popcorn an heterogenen Ëmfeld ze benotzen, musst Dir e spezielle benotzen compiler baséiert op LLVM. Wann Dir verdeelt op Hosten mat der selwechter Architektur leeft, ass d'Opbau mat engem separaten Compiler net erfuerderlech.

Popcorn entwéckelt e verdeelt thread Ausféierungssystem fir de Linux Kernel.

Zousätzlech kann et bemierkt ginn Annonce e bëssen ähnleche Projet Telefork mat der Ëmsetzung vun engem initialen Prototyp API fir e Start Kand Prozesser op anere Computeren am Stärekoup (wéi fork (), mee Transfert der forked Prozess zu engem anere Computer).
De Code ass a Rust geschriwwen an erlaabt bis elo nëmmen Klonen vu ganz einfache Prozesser déi keng Systemressourcen wéi Dateien benotzen. Wann en Telefork Uruff gemaach gëtt, ginn d'Erënnerung a Prozessbezunnen Strukturen op en aneren Host gekloont, deen de Serverhandler (Telepad) leeft. Mat Ptrace gëtt d'Erënnerungsreflexioun vun engem Prozess serialiséiert an, zesumme mam Zoustand vum Prozess a Registere, op en aneren Host transferéiert. D'API erlaabt Iech och de Prozesszoustand op eng Datei ze späicheren an et duerch ze restauréieren.

Source: opennet.ru

Setzt e Commentaire