[设为首页] [加入收藏]
您现在的位置:主页 > www.lh8989.com >

ByteCode联盟希望将二进制应用程序带入您的浏览器

[时间:2019-11-25 07:25来源:未知作者:admin浏览:]

  对于许多人来说,这引发了一个显而易见的问题:什么是WebAssembly?WebAssembly(wasm)曾经是并且可能是一个令人兴奋的项目,它提供了一种在浏览器中运行本机字节码的方法,从而可能大大提高当时和当今使用的Javascript引擎的性能。

  Javascript经常被误解为在运行时解释的脚本语言。尽管通常将其作为源代码加载到浏览器中,但可以将其解释为或编译为字节码并执行。编译意味着执行性能更高(尤其是在紧密循环内),但这也意味着启动JIT编译所需时间的启动惩罚。

  实际上,Javascript JIT还有很多其他功能包括不同的编译器模式,专门化,优化和救助。如果您需要更多细节,Mozilla的Lin Clark为了一个很好的,易于阅读的说明。

  为了消除这种JIT编译负担,Mozilla引入了asm.js(这是Javascript的专门子集,最常用作C等重载编程语言的源到源编译目标。AC语言程序交叉编译)到asm.js并作为AOT编译的字节代码块运行(根据Mozilla)通常会在用Clang编译的C代码的完全本机性能的50%或更好的范围内。

  asm.js剩下的问题是,作为Javascript的子集,www.76012345.com您无法以Javascript中无法实现的方式执行操作或表达数据。WebAssembly建议通过对64位整数,加载和存储偏移量以及直接访问经常用于特定任务(例如密码分析)的CPU指令的本机支持来更改此设置。

  不幸的是,自2015年以来,WebAssembly项目并没有发生太多可见的事情。即使到今天,也很难找到WebAssembly可以做什么的具体例子-各种浏览器的支持充其量是可疑的,甚至很难找到在本地运行的功能演示在工具箱中。我们可以找到的最易于访问的演示是Google Lab的squoosh,这是一个简单的应用程序,可让您实时播放各种图像存储和压缩算法。

  WebAssembly和WebAssembly系统界面的潜在影响远远超出了浏览器。字节码联盟设想了一个可以使用的平台,不仅可以在浏览器中运行本机速度代码,而且通常可以使跨服务器,边缘,移动和物联网设备等多个平台安全地重用不受信任的代码变得更加容易。

网站首页正版管家婆马报彩图新跑狗图995996一跑狗出版社新一代跑狗图论坛www.lh8989.comwww.30269w.com