ويب أسمبلي

تَجْمِيعِ اَلْوِيب (بالإنجليزية: WebAssembly) (نقحرةً: ويب أسمبلي) اختصارًا بـ (وَازِمْ Wasm) هو معيار مفتوح يُّعرِّف صِيغة محمولة للترميز-الثنائي -(بايت كُودْ)- لتنفيذ برمجيةٍ ما[3]، وتهدف تقنية تجميع الويب إلى تمكين تنفيذ برامج عالية الأداء على صفحات الويب، صُمم تجميع الويب بشكل يجعله قابلة للتنفيذ ومتكامل مع بيئات العمل الأخرى كذلك وليس حصرًا على متصفحات الويب، يعني ذلك قابلية تنفيذ «برمجيات تجميع الويب» بحد ذاتها (standalone). كما يمكن لبعض بيئات تشغيل جافاسكربت مثل نود جي اس، ودينو تشغيل تجميع الويب.[4]

نظرة عامة

تجميع الويب هو صيغة بايت ناتجة من المحول البرمجي، بمقدور المتصفحات ومشغلات جافاسكربت -الداعمة لـوَازِمْ (Wasm)- فكه وتنفيذه مباشرةً، على عكس لغات البرمجة التي تمر بعدة مراحل خلال الترجمة وصولًا للغة يستطيع الحاسوب تنفيذها.

يستخدم تجميع الويب آلة فتراضية تعتمد مفهوم المُكدس ومكدس الإستدعاءات[5] ويعتبر ملف .wasm لغة وسيطة والتي تُحول من بايت-كود إلى تعليمات تفهمها الآلة، يتم تنفيذها في بيئة معزولة (Sandbox).

مخطط بياني يوضح آلية تنفيذ تجميع الويب

تم توفير الصيغة النصية المقروءة لتجميع الويب، لمساعدة المبرمجين على تتبع العلل والأخطاء وإصلاحها ويمكن تحويل ملفات .wat إلى .wasm والعكس.

اُعتمد تجميع الويب في 2019 الخامس من ديسبمبر من طرف رابطة الشبكة العالمية كمعيار في متصفحات الويب، بجانب جافاسكربت وCSS وHTML.[6] يُمكن تجميع الويب مطوري الويب من تنفيذ برمجيات غير مكتوبة بجافاسكربت على المتصفح بشكل مباشر.

ولا تهدف تجميع الويب إلى استبدال لغة جافاسكربت في المتصفحات، بل أن تعمل معها جنبًا إلى جنب في الأماكن التي تكون فيها جافاسكربت بطيئة أو غير مناسبة لأداء وظيفة معينة في تطبيق الويب.

تقدم حزمة Emscripten SDK إمكانية أن ترجمة البرمجيات المكتوبة بلغة السي أو التي تدعم LLVM IR إلى ملف بَايْنَرِي لتجميع الويب.

كما تقدم لغات مثل رست ولغة غو إمكانية الترجمة إلى تجميع الويب.

مصطلحات أساسية

قاموس لمجموعة مصطلحات إنجليزية تتعلق بويب أسمبلي مع تعريفها:

مصطلحات إنجليزية متعلقة ويب أسمبلي
المصطلح التّعريف ملاحظة
Virtual Machine (VM) الآلة الإفتراضية هي مُحاكاة لحاسوب يقوم بتنفيذ مجموعة تعليمات بسيطة (بايت كُودْ).[7]
Binary الشفرة الثنائية أو الترميز الثنائي (باينري)، هي شفرة تحمل المعلومات في مسلسلة رقمية تتكون من رمزين (0,1).
Bytecode بايت كود أو شيفرة بايت، هي مجموعة تعليمات مكتوبة على هيئة شفرة ثنائية.
Sandbox Environment البيئة المعزولة أو الملعب، مصطلح يقصد به أن تنفيذ البرمجية تحصل في بيئة ليس لها وصول مباشر إلى موارد نظام التشغيل.
wasm Format امتداد الملف .wasm عبارة عن ملف يحوي تعليمات ويب أسمبلي على هيئة شيفرة بايت.
wat Format امتداد الملف .wat هو صيغة لكتابة مجموعة تعليمات ويب أسمبلي على هيئة صيغة نصية تشبه لغة التجميع، وتهدف الصيغة إلى تسهيل اكتشاف وتصحيح الأخطاء على المطوريين، وبالإمكان تحويلها لاحقًا إلى صيغة شيفرة بايت .wasm

التاريخ

أُعلِنَ عن تجميع الويب لأول مرة في 2015 [8]، وقد أثبت المفهوم لأول مرة من خلال تنفيذ Unity's Angry Bots على متصفح فاير فوكس[9]، قوقل كروم،[10] مايكروسوفت إيدج[11]، وقد سبقتها بعض التقنيات لإجراء محاولات أولية مثل مشروع «آزِمْ» asm.js من موزيلا، ومشروع PNaCI من قوقل،[12][13] وقد استندت التجارب الأولية إلى نموذج asm.js من موزيلا.[14]

asm.js - آزِمْ.ج س

تفرع من لغة جافا سكرِبت، صُمِّمت لتكون قابلًا للتوليد من لغات أخرى كلغة سِي C على سبيل المثال، ويكمن الفرق الجوهريّ بينها وبين الجافا سكربت العادية أن «آزِمْ» asm.js ستحافظ على أداء أفضل من جافا سكربت العادية. لا تزال تُستخدم في المتصفحات التي لا تدعم تجميع الويب WebAssembly، أو المتعطِّلة فيها لأسباب أمنية.[15]

في فبراير 2018، قامت «مجموعة عمل تجميع الويب» WebAssembly Working Group بنشر ثلاث مسودات للعمل على توثيق كل من المواصفات والمعايير الأساسية [16][17]، وواجهة جافا سكربت JavaScript Interface[18] وكذلك Web API[19] التي يحتاج تجميع الويب لها.

وازي

مشروع الواجهة البرمجية لنظام تجميع الويب (بالإنجليزية: WebAssembly System Interface) ويشار إليه اختصارًا بـ (وَازِي Wasi)، يهدف إلى توحيد المعايير وطرق عمل كود تجميع الويب في البيئات خارج المتصفح.[20]

المميزات والأهداف

  • تمكين تنفيذ تطبيقات عالية الأداء ومقاربة إلى أداء التطبيقات الأصلية (Native Code).
  • توفير صيغة محمولة (Portable).
  • الحماية عن طريق العزل (Sandbox).
  • العمل في بيئات متعددة (Cross Platform).

مثال

شفرة برمجية بلغة السي، في مقابل شفرة تجميع الويب:

شفرة برمجية مكتوبة بلغة C صيغة .wat النصية لتجميع الويب صيغة .wasm الشفرة الثنائية لتجميع الويب
int factorial(int n) {
  if (n == 0)
    return 1;
  else
    return n * factorial(n-1);
}
(func (param i64) (result i64)
  local.get 0
  i64.eqz
  if (result i64)
      i64.const 1
  else
      local.get 0
      local.get 0
      i64.const 1
      i64.sub
      call 0
      i64.mul
  end)
00 61 73 6D 01 00 00 00
01 00 01 60 01 73 01 73 06
03 00 01 00 02
0A 00 01
00 00
20 00
50
04 7E
42 01
05
20 00
20 00
42 01
7D
10 00
7E
0B
0B 15 17

انظر أيضًا

المراجع

  1. ^ وصلة مرجع: http://webassembly.org/roadmap/. الوصول: 21 مايو 2017.
  2. ^ ا ب "Release 2.0". 1 يونيو 2022. اطلع عليه بتاريخ 2023-02-11.
  3. ^ "Understanding WebAssembly text format - WebAssembly | MDN". developer.mozilla.org (بالإنجليزية الأمريكية). Archived from the original on 2022-02-05. Retrieved 2022-03-12.
  4. ^ "Introduction — WebAssembly 1.1 (Draft 2021-11-22)". webassembly.github.io. مؤرشف من الأصل في 2021-11-22. اطلع عليه بتاريخ 2021-11-22.
  5. ^ "WebAssembly". webassembly.org. مؤرشف من الأصل في 2022-07-09. اطلع عليه بتاريخ 2022-07-10.
  6. ^ "WebAssembly 1.0 Becomes a W3C Recommendation and the Fourth Language to Run Natively in Browsers". InfoQ (بالإنجليزية). Archived from the original on 2021-11-25. Retrieved 2021-11-22.
  7. ^ Terence Parr (13 مايو 2014). "How to build a virtual machine". مؤرشف من الأصل في 2022-05-14. {{استشهاد بدورية محكمة}}: الاستشهاد بدورية محكمة يطلب |دورية محكمة= (مساعدة)
  8. ^ "Going public launch bug · Issue #150 · WebAssembly/design". GitHub (بالإنجليزية). Archived from the original on 2021-11-21. Retrieved 2021-12-04.
  9. ^ "A WebAssembly Milestone: Experimental Support in Multiple Browsers – Mozilla Hacks - the Web developer blog". Mozilla Hacks – the Web developer blog (بالإنجليزية الأمريكية). Archived from the original on 2021-01-28. Retrieved 2021-12-04.
  10. ^ "Experimental support for WebAssembly in V8 · V8". v8.dev. مؤرشف من الأصل في 2021-06-03. اطلع عليه بتاريخ 2021-12-04.
  11. ^ Blog, Microsoft Edge (15 Mar 2016). "Previewing WebAssembly experiments in Microsoft Edge". Microsoft Edge Blog (بالإنجليزية الأمريكية). Archived from the original on 2021-08-18. Retrieved 2021-12-04.
  12. ^ "Google Is to Remove Support for PNaCl". InfoQ (بالإنجليزية). Archived from the original on 2021-10-28. Retrieved 2021-12-04.
  13. ^ "Google, Microsoft, Mozilla And Others Team Up To Launch WebAssembly, A New Binary Format For The Web". TechCrunch (بالإنجليزية الأمريكية). Archived from the original on 2021-06-02. Retrieved 2021-12-04.
  14. ^ "WebAssembly: a binary format for the web". 2ality.com. مؤرشف من الأصل في 2021-10-23. اطلع عليه بتاريخ 2021-12-04.
  15. ^ "asm.js". asmjs.org. مؤرشف من الأصل في 2021-11-24. اطلع عليه بتاريخ 2021-12-04.
  16. ^ "WebAssembly First Public Working Drafts | W3C News" (بالإنجليزية الأمريكية). Archived from the original on 2021-07-16. Retrieved 2021-12-04.
  17. ^ "wasm core". https://www.w3.org. 15 فبراير 2018. مؤرشف من الأصل في 2021-03-08. اطلع عليه بتاريخ 2021-04-12. {{استشهاد ويب}}: روابط خارجية في |موقع= (مساعدة)
  18. ^ "Wasm JavaScript API". https://www.w3.org/. 15 فبراير 2018. مؤرشف من الأصل في 2020-11-30. اطلع عليه بتاريخ 2021-04-12. {{استشهاد ويب}}: روابط خارجية في |موقع= (مساعدة)
  19. ^ "wasm Web API". https://www.w3.org/. 15 فبراير 2018. مؤرشف من الأصل في 2021-04-19. اطلع عليه بتاريخ 2021-02-12. {{استشهاد ويب}}: روابط خارجية في |موقع= (مساعدة)
  20. ^ "WASI |". wasi.dev. مؤرشف من الأصل في 2022-07-05. اطلع عليه بتاريخ 2022-07-10.

Read other articles:

Artikel ini membutuhkan rujukan tambahan agar kualitasnya dapat dipastikan. Mohon bantu kami mengembangkan artikel ini dengan cara menambahkan rujukan ke sumber tepercaya. Pernyataan tak bersumber bisa saja dipertentangkan dan dihapus.Cari sumber: Andi Meriem Mattalatta – berita · surat kabar · buku · cendekiawan · JSTOR (Oktober 2023) Dalam artikel ini, nama keluarganya adalah Mattalatta, nama keluarga patronimik Bugis; Andi adalah gelar kehormatan ba...

 

VII Регіон Мауле —  Регіон  — VII Región del Maule Герб Прапор Столиця Талька Найбільше місто Талька Країна  Чилі Межує з: сусідні адмінодиниці VI Регіон О'Гіґґінс, Мендоса, Неукен, XVI Регіон Ньюбле ? Провінції КаукенесКурикоЛінаресТалка Офіційна мова Іспан

 

Indian translator (1868–1922) Kazi Dawa SamdupDawa Samdup and Walter Evans-Wentz photographed circa 1919.Born(1868-06-17)17 June 1868Kingdom of SikkimDied22 March 1922(1922-03-22) (aged 53)Calcutta, Bengal, British IndiaEducationBhutia Boarding School, DarjeelingKnown forauthor, Translator teacherNotable workA History of Sikkim, The Tibetan Book of the Dead, Tibet's Great Yogi Milarepa Lama Kazi Dawa Samdup (17 June 1868 – 22 March 1922) is now best known as one of the first tra...

Neuburg an der Kammel Südseite des Schlosses Schlossallee Schloss Neuburg an der Kammel liegt erhöht über der Marktgemeinde Neuburg an der Kammel im Landkreis Günzburg. Zusammen mit der auf einem niedrigeren Plateau stehenden Pfarrkirche St. Mariae Himmelfahrt bestimmt der Gebäudekomplex, bestehend aus dem dreigeschossigen Hauptbau mit Satteldach und zinnenbesetztem Schweifgiebel, zweischiffiger Kapelle, Torturm und diversen Ökonomiegebäuden, das Ortsbild. Inhaltsverzeichnis 1 Geschich...

 

Indian sports-equipment manufacturer Sareen Sports IndustriesIndustrySports equipmentFounded1969; 54 years ago (1969)FounderNK SareenHeadquartersMeerut, Uttar Pradesh, IndiaArea servedWorldwideProductsCricket clothing and equipment, accessoriesWebsitesstoncricket.com Sareen Sports Industries (also called SS) is an Indian sports equipment manufacturing company specialising in cricket, with its headquarters located in Meerut, Uttar Pradesh.[1][2] The firm was f...

 

Sue Bird is the WNBA's all-time leader in assists, with 3,234. The following is a list of the players who have achieved the most assists during their WNBA careers. Statistics are accurate as of the end of the 2022 regular season. ^ Active WNBA player * Inducted into the Naismith Memorial Basketball Hall of Fame † Not yet eligible for Hall of Fame consideration[a] WNBA most rebounds collected Rank Player Position Team(s) played for (years) Total assists Games played Assists per game ...

Car Nos. 14 – 18ManufacturerG.F. Milnes & Co.Built atBirkenheadConstructed1898Number built5Number in service1FormationOpen ToastrackCapacity56 PassengersOperator(s)Manx Electric RailwayDepot(s)Derby Castle DepôtSpecificationsTraction systemFour ECC traction motors of 20 hp (15 kW)Power output80 hp (60 kW)Electric system(s)550 V DCCurrent collector(s)OverheadTrack gauge3 ft (914 mm) This article details Car Nos. 14–18 of the Manx Electric Railway on the I...

 

Wild CardSutradara Simon West Produser Jason Statham Steve Chasman Ditulis oleh William Goldman PemeranJason Statham, Stanley Tucci, Sofia Vergara, Milo Ventimiglia, Michael Angarano, Anne Heche, Jason Alexander, Hope Davis, Max Casella, Dominik Garcia-Lorido, Cedric the EntertainerPenata musikDario MarianelliSinematograferShelly JohnsonPenyuntingPadraic McKinleyPerusahaanproduksiCurrent Entertainment, Quad Films, SJ Pictures, Sierra/AffinityDistributorLionsgateTanggal rilis30 Januari 2...

 

For other ice hockey teams named the same, see Peoria Rivermen. Ice hockey team in Peoria, IllinoisPeoria RivermenCityPeoria, IllinoisLeagueAmerican Hockey LeagueOperated2005–2013Home arenaCarver ArenaColorsRoyal blue, navy, gold, white       AffiliateSt. Louis Blues (NHL) (2005–2013)Franchise history1932–1935Quebec Beavers1935–1951Springfield Indians1951–1954Syracuse Warriors1954–1967Springfield Indians1967–1974Springfield Kings1974–1994Springfield Indians...

Project management software Microsoft ProjectMicrosoft Project 2021 screenshot, showing a blank projectDeveloper(s)MicrosoftInitial release1984; 39 years ago (1984)Stable release(s)Microsoft 365 (Windows)2310 (Build 16924.20150)[1] / November 14, 2023; 22 days ago (2023-11-14)Microsoft 365 (Mac)16.79.1 (Build 23111718) / November 21, 2023; 15 days ago (2023-11-21)[2]One-time purchase (Retail)2021 Version 2310 (Build 16924.2...

 

Вище професійне училище № 71 м. Кам'янка-Бузька (ВПУ № 71 м. Кам'янка-Бузька) ВПУ № 71 м. Кам'янка-БузькаВПУ № 71 м. Кам'янка-Бузька Засновано 1951 Директор Антоняк Галина Михайлівна Учнів: 528 Викладачів: 60 Вебсайт: https://vpu71.lviv.ua/ Юридична адреса: 80400, Львівська область, м. Кам'янка-Буз...

 

Syrian political party (1947–1966) For the party which governed Iraq, see Arab Socialist Ba'ath Party – Iraq Region. For the party which governs Syria, see Arab Socialist Ba'ath Party – Syria Region. For other uses, see Ba'ath Party (disambiguation). Arab Socialist Baʿth Party حزب البعث العربي الاشتراكيSecretary-GeneralMichel Aflaq (1954–65)Munif Razzaz (1965–66)FoundersMichel AflaqSalah al-Din al-BitarFounded7 April 1947; 76 years ago (7 April 1...

Visualisasi suntingan harian di Wikipedia yang dibuat oleh IBM. Teks dan gambar yang ada di Wikipedia hingga beberapa terabita adalah contoh sederhana mahadata. Mahadata, data raya, data raksasa, atau data bandang (bahasa Inggris: big data) adalah istilah umum untuk segala himpunan data dalam jumlah yang sangat besar, rumit, dan tak terstruktur sehingga menjadikannya sukar ditangani apabila hanya menggunakan perkakas manajemen pangkalan data biasa atau aplikasi pengolah data tradisional b...

 

Class I railroad in Canada and the United States For the successor company, see Canadian Pacific Kansas City. Canadian Pacific redirects here. For other uses, see Canadian Pacific (disambiguation).It has been suggested that this article should be split into a new article titled History of the Canadian Pacific Railway. (discuss) (December 2023)This article may be too long to read and navigate comfortably. Please consider splitting content into sub-articles, condensing it, or adding subheadings...

 

National highway in India National Highway 348Map of National Highway 348 in redRoute informationAuxiliary route of NH 48Length28 km (17 mi)Major junctionsEast endPalaspeWest endJawaharlal Nehru Port LocationCountryIndiaStatesMaharashtra Highway system Roads in India Expressways National State Asian ← NH 48→ NH 348 National Highway 348, commonly called JNPT Road or NH348, previously knows as NH-4B is a 6 lane access controlled expressway in India. It is an upgrada...

Iconography of the Sudarshana Chakra upon a temple wall Discus weapon used by Vishnu The Sudarshana Chakra (Sanskrit: सुदर्शनचक्र, romanized: Sudarśanacakra) is a divine discus, attributed to Vishnu in the Hindu scriptures.[1] The Sudarshana Chakra is generally portrayed on the right rear hand of the four hands of Vishnu, who also holds the Panchajanya (conch), the Kaumodaki (mace), and the Padma (lotus).[2] In the Rigveda, the Sudarshana Chakra is ...

 

This article is about the Malaysian city. For the federal constituency represented in the Dewan Rakyat, see Shah Alam (federal constituency). For other uses, see Shah Alam (disambiguation). City and state capital in Selangor, MalaysiaShah AlamCity and state capitalCity of Shah AlamBandaraya Shah AlamOther transcription(s) • Jawiشاه عالم • Chinese莎亚南 (Simplified)莎亞南 (Traditional)Shāyànán (Hanyu Pinyin) • Tamilசா ஆலாம்...

 

Pietro Ottoboni, pengemban jabatan Kardinal Kerabat yang terakhir, lukisan karya Francesco Trevisani. Bagian dari seri tentangHierarki Gereja KatolikSanto Petrus Gelar Gerejawi (Jenjang Kehormatan) Paus Kardinal Kardinal Kerabat Kardinal pelindung Kardinal mahkota Kardinal vikaris Moderator kuria Kapelan Sri Paus Utusan Sri Paus Kepala Rumah Tangga Kepausan Nunsio Apostolik Delegatus Apostolik Sindik Apostolik Visitor apostolik Vikaris Apostolik Eksarkus Apostolik Prefek Apostolik Asisten Tak...

For the 1864 Union expedition under Major-General Nathaniel P. Banks, see Red River campaign. 1870 Canadian military operation Wolseley expeditionPart of Red River RebellionRed River Expedition at Kakabeka Falls by Frances Anne Hopkins, 1877Date1870LocationFort Garry (modern-day Winnipeg, Manitoba, Canada)Result Bloodless Government victory; Government forces capture Fort Garry Louis Riel escapesBelligerents  Canada  United Kingdom MétisCommanders and leaders Garnet Wolseley Louis ...

 

1986 American horror thriller film by Robert Harmon This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: The Hitcher 1986 film – news · newspapers · books · scholar · JSTOR (May 2020) (Learn how and when to remove this template message) The HitcherTheatrical release posterDirected byRobert HarmonWritten byEr...

 

Strategi Solo vs Squad di Free Fire: Cara Menang Mudah!