Systém paralelizace skriptů shellu PaSh spadá pod křídla Linux Foundation

Projekt PaSh, který vyvíjí nástroje pro paralelní spouštění shell skriptů, oznámil, že přechází pod záštitu Linux Foundation, která bude poskytovat infrastrukturu a služby nezbytné pro pokračování vývoje. Kód projektu je distribuován pod licencí MIT a zahrnuje komponenty v Pythonu, Shell, C a OCaml.

PaSh obsahuje JIT kompilátor, runtime a knihovnu anotací:

  • Runtime poskytuje sadu primitiv pro podporu paralelního provádění skriptů.
  • Knihovna anotací definuje sadu vlastností, které popisují situace, ve kterých je povolena paralelizace jednotlivých příkazů POSIX a GNU Coreutils.
  • Kompilátor za běhu analyzuje navrhovaný skript Shell do abstraktního syntaktického stromu (AST), rozbije jej na fragmenty vhodné pro paralelní provádění a na jejich základě vytvoří novou verzi skriptu, jejíž části lze spouštět současně. Informace o příkazech, které umožňují paralelizaci, přebírá kompilátor z knihovny anotací. V procesu generování paralelně běžící verze skriptu jsou do kódu vloženy další konstrukce z Runtime.

Systém paralelizace skriptů shellu PaSh spadá pod křídla Linux Foundation

Například skript, který zpracovává dva soubory f1.md a f2.md cat f1.md f2.md | tr AZ az | tr -cs A-Za-z '\n' | seřadit | jedinečný | comm -13 dict.txt — > out cat out | wc -l | sed 's/$/ chybně napsaná slova!/' normálně zpracuje dva soubory postupně:

Systém paralelizace skriptů shellu PaSh spadá pod křídla Linux Foundation
a po spuštění pod kontrolou PaSh bude rozdělen do dvou současně spouštěných vláken, z nichž každé zpracovává svůj vlastní soubor:
Systém paralelizace skriptů shellu PaSh spadá pod křídla Linux Foundation


Zdroj: opennet.ru

Přidat komentář