PaSh shell script parallelization systeem komt ûnder de wjuk fan de Linux Foundation

It PaSh-projekt, dat ark ûntwikkelet foar parallelle útfiering fan shell-skripts, hat oankundige dat it beweecht ûnder de auspysjes fan 'e Linux Foundation, dy't de ynfrastruktuer en tsjinsten leverje dy't nedich binne om ûntwikkeling troch te gean. De projektkoade wurdt ferspraat ûnder de MIT-lisinsje en omfettet komponinten yn Python, Shell, C en OCaml.

PaSh omfettet in JIT-kompiler, runtime en annotaasjebibleteek:

  • Runtime biedt in set primitives om parallelle útfiering fan skripts te stypjen.
  • De annotaasjebibleteek definiearret in set eigenskippen dy't situaasjes beskriuwe wêryn parallelisaasje fan yndividuele POSIX- en GNU Coreutils-kommando's tastien is.
  • De kompilator op 'e flecht parseart it foarstelde Shell-skript yn in abstrakte syntaksisbeam (AST), brekt it yn fragminten dy't geskikt binne foar parallelle útfiering, en op basis dêrfan foarmet in nije ferzje fan it skript, wêrfan dielen tagelyk kinne wurde útfierd. Ynformaasje oer kommando's dy't parallelisaasje tastean, wurdt troch de kompilator nommen út 'e annotaasjebibleteek. Yn it proses fan it generearjen fan in parallel rinnende ferzje fan it skript, wurde ekstra konstruksjes fan Runtime yn de koade ynfoege.

PaSh shell script parallelization systeem komt ûnder de wjuk fan de Linux Foundation

Bygelyks, in skript dat ferwurket twa triemmen f1.md en f2.md cat f1.md f2.md | tr AZ az | tr -cs A-Za-z '\n' | sortearje | unyk | comm -13 dict.txt -> út kat út | wc -l | sed 's/$/ ferkeard stavere wurden!/' soe normaal twa bestannen opfolgjend ferwurkje:

PaSh shell script parallelization systeem komt ûnder de wjuk fan de Linux Foundation
en as it wurdt lansearre ûnder de kontrôle fan PaSh, sil it wurde ferdield yn twa tagelyk útfierde threads, wêrfan elk syn eigen bestân ferwurket:
PaSh shell script parallelization systeem komt ûnder de wjuk fan de Linux Foundation


Boarne: opennet.ru

Add a comment