Das System zur Parallelisierung von Shell-Skripten PaSh wurde unter das Dach der Linux Foundation gestellt

Das Projekt PaSh, das Werkzeuge fĂŒr die parallele AusfĂŒhrung von Shell-Skripten entwickelt, gab bekannt, dass es unter den Schutz der Organisation Linux Foundation wechselt, die die Infrastruktur und Dienstleistungen bereitstellen wird, die fĂŒr die Fortsetzung der Entwicklung erforderlich sind. Der Projektcode wird unter der MIT-Lizenz verbreitet und umfasst Komponenten in den Sprachen Python, Shell, C und OCaml.

PaSh umfasst einen JIT-Compiler, eine Laufzeitumgebung und eine Annotationsbibliothek:

  • Die Laufzeitumgebung bietet eine Sammlung von Primitiven zur UnterstĂŒtzung der parallelen AusfĂŒhrung von Skripten.
  • Die Annotationsbibliothek definiert eine Sammlung von Eigenschaften, die die Situationen beschreiben, in denen die Parallelisierung einzelner POSIX- und GNU Coreutils-Befehle zulĂ€ssig ist.
  • Der Just-in-Time-Compiler analysiert das vorgeschlagene Shell-Skript in einen Abstract Syntax Tree (AST), zerlegt es in Fragmente, die fĂŒr die parallele AusfĂŒhrung geeignet sind, und erstellt basierend darauf eine neue Version des Skripts, deren Teile gleichzeitig ausgefĂŒhrt werden können. Informationen ĂŒber Befehle, die eine Parallelisierung zulassen, werden vom Compiler aus der Annotationsbibliothek entnommen. WĂ€hrend der Erstellung der parallel ausfĂŒhrbaren Skriptversion werden zusĂ€tzliche Konstrukte aus der Laufzeitumgebung in den Code eingefĂŒgt.

Das System zur Parallelisierung von Shell-Skripten PaSh wurde unter das Dach der Linux Foundation gestellt

Zum Beispiel verarbeitet ein Skript, das zwei Dateien f1.md und f2.md bearbeitet cat f1.md f2.md | tr A-Z a-z | tr -cs A-Za-z ‘\n’ | sort | uniq | comm -13 dict.txt — > out cat out | wc -l | sed ‘s\/\$\/ misspelled words!\/’ unter normalen Bedingungen die beiden Dateien nacheinander:

Das System zur Parallelisierung von Shell-Skripten PaSh wurde unter das Dach der Linux Foundation gestellt
wird es jedoch unter der Kontrolle von PaSh in zwei gleichzeitig ausgefĂŒhrte StrĂ€nge aufgeteilt, von denen jeder seine Datei bearbeitet:
Das System zur Parallelisierung von Shell-Skripten PaSh wurde unter das Dach der Linux Foundation gestellt


Quelle: opennet.ru
60GB SSD 8Gb DDR4