Muva nje kukhishwe inguqulo yokuqala ye-wasm3, okuyi utolika ngokushesha okukhulu kwekhodi ephakathi ngu-WebAssemblyNjengoba yakhelwe ngokuyinhloko ukusebenzisa izinhlelo zeWebAssembly kuma-microcontroller namapulatifomu okungekho ukuqaliswa kwe-JIT kweWebAssembly, ayikho inkumbulo eyanele yokuthi i-JIT isebenze noma ukwakhiwa kwamakhasi ezinkumbulo asebenzayo adingekayo ku-JIT Implementation.
Kulabo abangayazi i-WebAssembly, kufanele wazi ukuthi lokhu ulimi olunezinga eliphansi, okokuqala yakhelwe njengefomethi ekhonjiwe lapho uhlanganiswa kusuka ku-C naku-C ++, noma kunjalo futhi isekela ikhodi yomthombo yezinye izilimi, ezinjengeRust neGo. Le fomethi yekhodi kanambambili ephathekayo isetshenziselwa ukwenziwa ngokugcwele kwezikripthi ezivela kusiphequluli esiseceleni kwamakhasimende.
Mayelana ne-wasm3
I-Wasm3 idlula izivivinyo zokuhambisana ngokucaciswa kweWebAssembly 1.0 kanye ingasetshenziselwa ukusebenzisa izinhlelo eziningi ze-WASI, ukuhlinzeka ngokusebenza okuphindwe kayizi-4-5 kunezinjini ze-JIT nezikhathi eziyi-11.5 ezingaphansi kokwenziwa kwekhodi yendabuko.
Uma kuqhathaniswa nabanye abaculi kusuka ku-WebAssembly (wac, life, wasm-micro-runtime), i-wasm3 yayiphindaphindwe izikhathi eziyi-15.8.
I-Wasm3 iqale njengephrojekthi yocwaningo futhi iyaqhubeka nokuba njalo ngezindlela eziningi. Ukuhlolwa kwemoto ezindaweni ezahlukahlukene kuyingxenye yophenyo. Njengoba sine-Lua, JS, Python, Lisp, (…) esebenza ku-MCU, iWebAssembly empeleni iyindlela ethembisayo. Inikeza indawo ehlukaniswe ngokuphelele, echazwe kahle nengabikezelwa. Phakathi kwamacala wokusebenzisa awusizo, singabhala i-cut-edge computing, iskripthi, ukusebenza kwe-IoT, izivumelwano ze-blockchain, njll.
I-Wasm3 idinga imemori engama-64Kb yekhodi ne-10Kb ye-RAM, ini wena ivumela ukusebenzisa iphrojekthi ukusebenzisa izinhlelo ezihlanganisiwe ku-WebAssembly kuma-microcontroller afana I-Arduino MKR *, Arduino Ngenxa, Particle Photon, ESP8266, ESP32, Air602 (W600), nRF52, nRF51 Blue Pill (STM32F103C8T6), MXChip AZ3166 (EMW3166), Maix (K210), HiFive1 (E310) , kanye nasemabhodini nasemakhompyutheni asuselwa ekwakhiweni kwezakhiwo x86, x64, ARM, MIPS, RISC-V, kanye neXtens.
Ukusebenza okuphezulu kutholakala ngokusebenzisa inqubo yeMassey Meta Machine (M3) kutolika, lapho, ukunciphisa ngaphezulu kokunquma ikhodi ye-bytecode, ikhodi eyimfihlo ihunyushelwa phambili ekusebenzeni okuthe xaxa okukhiqiza ikhodi yomshini mbumbulu kanye nemodeli yokwenza yomshini obekiwe obumbekayo iba yindlela esebenza kahle yokubhalisa ekusebenzeni kwe-M3 imisebenzi ye-C, izingxabano zayo eziyirejista yomshini obonakalayo, ongakhonjiswa kumarejista we-CPU.
Ukuhamba njalo komsebenzi wokusebenzisa kahle kuphenduka imisebenzi efingqiwe.
Futhi, Imiphumela yocwaningo ingabonwa kuWebAssembly kuWebhu, ngemuva kokuhlaziya amasayithi angama-948 ayizinkulungwane athandwa kakhulu akalwe yi-Alexa, abacwaningi bathole ukuthi I-WebAssembly isetshenziswa amasayithi ayi-1639 (0.17%), okuyi-1 kumasayithi angama-600.
Sekukonke, amawebhusayithi aveze umthwalo wamamojula we-1950 WebAssembly, angama-150 awohlukile.
Lapho kubhekwa ubukhulu be-WebAssembly, kwathathwa iziphetho ezidumazayo: ezimweni ezingaphezu kwama-50% wamacala, iWebAssembly yasetshenziselwa izinhloso ezinonya, ngokwesibonelo, ukwenza izimayini ze-cryptocurrensets (55,7%) nokufihla ikhodi emibhalweni enonya (0,2 , XNUMX%).
Yezinhlelo zokusebenza ezisekelwayo ye-Wasm3, singathola iLinux kufaka phakathi imizila esekwe ku-OpenWRT, I-Windows, i-MacOS, i-Android ne-iOS. Kwakungenzeka futhi ukuhlanganisa i-wasm3 kukhodi yeWebAssembly emaphakathi ukusebenzisa umhumushi kusiphequluli noma ukusingathwa kokuzenzela.
Ekusetshenzisweni okusemthethweni kweWebAssembly, ukwenziwa kwelabhulali (38.8%), ukwenziwa komdlalo (3.5%), kanye nokwenziwa kwekhodi yomdabu okungeyona eyeJavaScript (0.9%) kubonisiwe. Kumacala angu-14,9%, iWebAssembly isetshenziselwe ukuhlaziya imvelo yokuhlonza umsebenzisi (izigxivizo zeminwe).
Zama i-wasm3
Okwalabo abanentshisekelo yokukwazi ukusebenzisa lo mhumushi ohlelweni lwabo, ungaxhumana nemibhalo kanye nekhodi yephrojekthi okubhalwe ku-C futhi kwasatshalaliswa ngaphansi kwelayisense ye-MIT, Kulesi sixhumanisi esilandelayo.