QEMU እና FFmpeg መስራች QuickJS JavaScript Engineን አሳትመዋል

የQEMU እና FFmpeg ፕሮጄክቶችን የመሰረተው ፈረንሳዊው የሂሳብ ሊቅ ፋብሪስ ቤላርድ ፓይ ቁጥርን ለማስላት በጣም ፈጣኑን ቀመር ፈጠረ እና የምስል ቅርፀቱን አዘጋጅቷል። ቢ.ፒ.ጂ.፣ የአዲሱን ጃቫ ስክሪፕት ሞተር የመጀመሪያ ልቀት አሳተመ QuickJS. ሞተሩ የታመቀ እና ከሌሎች ስርዓቶች ጋር ለመዋሃድ የተቀየሰ ነው። የፕሮጀክት ኮድ በ C የተፃፈ እና በ MIT ፍቃድ ስር ይሰራጫል. Emscripten ን በመጠቀም ወደ WebAssembly የተጠናቀረ እና በአሳሾች ውስጥ ለመስራት ተስማሚ የሆነ የሞተር ግንባታም አለ።

የጃቫስክሪፕት አተገባበር ድጋፎች የES2019 ዝርዝር መግለጫ፣ ሞጁሎችን፣ ያልተመሳሰሉ አመንጪዎችን እና ፕሮክሲዎችን ጨምሮ። መደበኛ ያልሆነ ሂሳብ እንደ አማራጭ ይደገፋል ማስፋፋት ለጃቫ ስክሪፕት፣ እንደ BigInt እና BigFloat አይነቶች፣ እንዲሁም ኦፕሬተር ከመጠን በላይ መጫን. የQuickJS አፈጻጸም ጉልህ ነው። የላቀ የሚገኙ አናሎግ ለምሳሌ በፈተና ውስጥ
ቤንች-v8 ከኤንጂኑ ቀድሟል XS በ 35%፣ ዱክታፔ ከሁለት ጊዜ በላይ ጄሪ ስክሪፕት ሶስት ጊዜ እና ሙጄ.ኤስ ሰባት ጊዜ.

ሞተሩን ወደ አፕሊኬሽኖች ከሚያስገባው ቤተ-መጽሐፍት በተጨማሪ፣ ፕሮጀክቱ የqjs አስተርጓሚ ይሰጣል፣ ይህም የጃቫ ስክሪፕት ኮድን ከትዕዛዝ መስመሩ ለማስኬድ ሊያገለግል ይችላል። ከዚህም በላይ የqjsc ማጠናከሪያው አለ፣ ውጫዊ ጥገኝነቶችን የማይፈልጉ ለብቻው አፈጻጸም ተስማሚ የሆኑ የውጤት ተፈፃሚ ፋይሎችን ማመንጨት ይችላል።

ቁልፍ ባህሪያት:

  • ከሌሎች ፕሮጀክቶች ጋር ለመዋሃድ የታመቀ እና ቀላል። ኮዱ ለስብሰባ ውጫዊ ጥገኞችን የማይፈልጉ ጥቂት C ፋይሎችን ብቻ ያካትታል። በጣም ቀላሉ የተጠናቀረ መተግበሪያ ወደ 190 ኪ.ባ.
  • በጣም ከፍተኛ አፈፃፀም እና አጭር የጅምር ጊዜ። 56ሺህ የECMAScript ተኳኋኝነት ፈተናዎችን ማለፍ በአንድ ኮር የመደበኛ ዴስክቶፕ ፒሲ ላይ ሲፈፀም 100 ሰከንድ ያህል ይወስዳል። የሩጫ ጊዜ ማስጀመር ከ300 ማይክሮ ሰከንድ ያነሰ ጊዜ ይወስዳል።
  • ለ ES2019 ዝርዝር መግለጫ ሙሉ ድጋፍ እና ሙሉ ድጋፍ ለ አባሪ B፣ ከቆዩ የድር መተግበሪያዎች ጋር ተኳሃኝነት ክፍሎችን ይገልጻል።
  • ሁሉንም ፈተናዎች ከ ECMAScript Test Suite ሙሉ በሙሉ ማለፍ;
  • የጃቫ ስክሪፕት ኮድን ያለ ውጫዊ ጥገኛ ወደ ተፈጻሚነት ያላቸውን ፋይሎች ለማጠናቀር ድጋፍ;
  • ያለሳይክል ማጽዳት በማጣቀሻ ቆጠራ ላይ የተመሰረተ የቆሻሻ ማጠራቀሚያ, ይህም ሊተነበይ የሚችል ባህሪን እንድናገኝ እና የማስታወስ ፍጆታን እንድንቀንስ አስችሎናል;
  • በጃቫስክሪፕት ውስጥ ለሂሳብ ስሌት የቅጥያዎች ስብስብ;
  • ኮድን በትእዛዝ መስመር ሁነታ ለማስፈጸም ሼል፣ የአውድ ኮድ ማድመቅን የሚደግፍ፣
  • የታመቀ መደበኛ ቤተ-መጽሐፍት በሲ ቤተ-መጽሐፍት ላይ ከማሸጊያዎች ጋር።

ፕሮጀክቱ በQuickJS ውስጥ የሚሳተፉ እና ለግለሰብ አገልግሎት ተስማሚ የሆኑ ሶስት ተጓዳኝ ሲ ቤተ-መጽሐፍቶችን በማዘጋጀት ላይ ነው።

  • ሊብሬግክስክስ - ከጃቫስክሪፕት ES 2019 ዝርዝር መግለጫ ጋር ሙሉ በሙሉ የሚስማማ የመደበኛ አገላለጾችን ፈጣን ትግበራ;
  • ሊቡኒኮድ - ከዩኒኮድ ጋር ለመስራት የታመቀ ቤተ-መጽሐፍት;
  • libbf - የዘፈቀደ ትክክለኛነት ተንሳፋፊ ነጥብ ስራዎችን እና ተሻጋሪ ተግባራትን ከትክክለኛ ክብ ጋር መተግበር።

ምንጭ: opennet.ru

አስተያየት ያክሉ