Sistem paralelizacije PaSh shell skripta dolazi pod okriljem Linux fondacije

Projekt PaSh, koji razvija alate za paralelno izvršavanje shell skripti, najavio je da se kreće pod okrilje Linux fondacije, koja će obezbijediti infrastrukturu i usluge neophodne za nastavak razvoja. Projektni kod se distribuira pod MIT licencom i uključuje komponente u Python, Shell, C i OCaml.

PaSh uključuje JIT kompajler, runtime i biblioteku anotacija:

  • Runtime pruža skup primitiva koji podržavaju paralelno izvršavanje skripti.
  • Biblioteka anotacija definira skup svojstava koja opisuju situacije u kojima je dozvoljena paralelizacija pojedinačnih POSIX i GNU Coreutils komandi.
  • Kompajler u hodu analizira predloženi Shell skript u apstraktno sintaksno stablo (AST), razbija ga na fragmente pogodne za paralelno izvršavanje i na osnovu njih formira novu verziju skripte, čiji se dijelovi mogu izvršavati istovremeno. Informacije o komandama koje dozvoljavaju paralelizaciju preuzima kompajler iz biblioteke anotacija. U procesu generiranja paralelno pokrenute verzije skripte, dodatne konstrukcije iz Runtimea se ubacuju u kod.

Sistem paralelizacije PaSh shell skripta dolazi pod okriljem Linux fondacije

Na primjer, skripta koja obrađuje dvije datoteke f1.md i f2.md cat f1.md f2.md | tr AZ az | tr -cs A-Za-z '\n' | sortiraj | uniq | comm -13 dict.txt — > out cat out | wc -l | sed 's/$/ pogrešno napisane riječi!/' bi normalno obradio dva fajla uzastopno:

Sistem paralelizacije PaSh shell skripta dolazi pod okriljem Linux fondacije
a kada se pokrene pod kontrolom PaSh-a, bit će podijeljen u dvije istovremeno izvršavane niti, od kojih svaka obrađuje svoj vlastiti fajl:
Sistem paralelizacije PaSh shell skripta dolazi pod okriljem Linux fondacije


izvor: opennet.ru

Dodajte komentar