Popcorn ikupanga njira yogawa ulusi wa Linux kernel.

Virginia Tech analimbikitsa zokambilana ndi opanga ma kernel a Linux, seti ya zigamba zokhala ndi kukhazikitsidwa kwa ulusi wogawa. Mbuliwuli (Distributed Thread Execution), yomwe imakulolani kuti mukonzekere kuchitidwa kwa mapulogalamu pamakompyuta angapo ndi kugawa ndi kusamuka kowonekera kwa ulusi pakati pa makamu. Ndi Popcorn, mapulogalamu amatha kukhazikitsidwa pagulu limodzi kenako ndikusamukira ku gulu lina popanda kusokonezedwa. M'mapulogalamu amitundu yambiri, kusamuka kwa ulusi wina kupita ku makamu ena kumaloledwa.

Mosiyana ndi polojekitiyi CRIUPolola kuti ndondomeko ipulumutsidwe ndikuyambiranso kuyambiranso pa makina ena, Popcorn imapereka kusamuka kosasunthika komanso kosunthika pakati pa makamu panthawi yogwiritsira ntchito, zomwe sizikusowa kuti munthu achitepo kanthu ndikuwonetsetsa kuti kukumbukira sikufanana pamagulu onse omwe akuyendetsa ulusi nthawi imodzi.

Pulogalamu ya popcorn stack fomu zigamba ku Linux kernel ndi laibulale ndi mayeso owonetsa momwe mafoni a Popcorn angagwiritsidwire ntchito kusamutsa ulusi pamapulogalamu omwe amagawidwa. Pamlingo wa kernel, zowonjezera kuzinthu zokumbukira zokumbukira zaperekedwa ndikukhazikitsa kukumbukira komwe kugawidwa, komwe kumalola njira zamakasitomala osiyanasiyana kuti apeze malo omwe ali ofanana komanso osasinthasintha. Kugwirizana kwa tsamba la chikumbutso kumatsimikiziridwa ndi ndondomeko yomwe imabwereza masamba a kukumbukira kwa wolandirayo pamene awerengedwa ndi kulepheretsa masamba a kukumbukira pamene alembedwa.

Kuyanjana pakati pa makamu kumachitika pogwiritsa ntchito kernel-level handler kwa mauthenga omwe amafalitsidwa kudzera pa socket ya TCP. Zimadziwika kuti TCP/IP imagwiritsidwa ntchito kuti muchepetse zolakwika ndi kuyesa panthawi yachitukuko. Madivelopa amamvetsetsa kuti, kuchokera pachitetezo ndi magwiridwe antchito, TCP/IP si njira yabwino yosamutsira zomwe zili mumagulu a kernel ndi masamba amakumbukiro pakati pa makamu. Onse omwe ali ndi mapulogalamu omwe amagawidwa ayenera kukhala ndi mulingo wodalirika wofanana. Pambuyo pa kukhazikika kwa ma algorithms akuluakulu, njira yoyendetsera bwino idzagwiritsidwa ntchito.

Popcorn yakhala ikukula kuyambira 2014 ngati kafukufuku wofufuza kuthekera kopanga mapulogalamu omwe amagawidwa, ulusi wake womwe ukhoza kuchitidwa pamanode osiyanasiyana zosasinthika makina apakompyuta omwe amatha kuphatikiza ma cores kutengera kapangidwe kake kosiyanasiyana (Xeon/Xeon-Phi, ARM/x86, CPU/GPU/FPGA). Magulu a zigamba omwe amapangidwira opanga ma kernel a Linux amangothandizira kuphedwa kwa makamu omwe ali ndi x86 CPU, koma palinso mtundu wa Popcorn Linux, womwe umalola kuti mapulogalamu azigwira ntchito pa makamu okhala ndi ma CPU osiyanasiyana (x86 ndi ARM). Kuti mugwiritse ntchito Popcorn m'malo osiyanasiyana, muyenera kugwiritsa ntchito yapadera wopanga zochokera ku LLVM. Kwa kuphedwa kogawidwa kwa makamu omwe ali ndi zomanga zomwezo, kumanganso ndi compiler yosiyana sikofunikira.

Popcorn ikupanga njira yogawa ulusi wa Linux kernel.

Komanso, tingadziŵike kulengeza pulojekiti yofanana Telefork ndikukhazikitsa API yachitsanzo choyambirira poyambitsa njira za ana pamakompyuta ena pagulu (monga foloko(), koma kusamutsa njira yofowoka ku kompyuta ina).
Khodiyo idalembedwa mu Rust ndipo mpaka pano imangolola kupanga njira zosavuta zomwe sizigwiritsa ntchito zida zamakina monga mafayilo. Kuyimba kwa telefork kukaitanitsidwa, kukumbukira ndi zomangira zokhudzana ndi ndondomeko zimapangidwira kwa wolandira wina yemwe akuyendetsa seva wothandizira (telepad). Pogwiritsa ntchito ptrace, kukumbukira kukumbukira kwa njirayo kumasinthidwa ndipo, pamodzi ndi chikhalidwe cha ndondomekoyi ndi zolembera, zimasamutsidwa kwa wina wolandira. API imakulolani kuti musunge ndondomeko ku fayilo ndikuyibwezeretsanso.

Source: opennet.ru

Kuwonjezera ndemanga