» 您尚未登录:请 登录 | 注册 | 标签 | 帮助 | 小黑屋 |


 29 12
发新话题
打印

浏览器成为操作系统为期不远矣

posted by wap, platform: 小米 红米 NOTE
从Asm.js到WebAssembly

Firefox、Chromium、Edge(M$)和WebKit的工程师联合发起了一个源于Asm.js的新项目WebAssembly,它是一个二进制格式,本地解码速度比JS解析快得多(测试显示超过20倍),在移动设备上的使用体验更好。JavaScript作者Brendan Eich指出,Asm.js面临的一个问题是它的解析速度,这在移动设备上尤其致命,WebAssembly 让JS得到解脱,它不是取代而是补充JS。在可预见的未来JS不会消失。Brendan Eich说这是双赢。WebAssembly文件名后缀.wasm,它将支持广泛的编程语言。该项目已经获得了Mozilla、Google和微软的支持,苹果可能也会支持,参与该项目的WebKit工程师是苹果雇员。

=≠==============…………

牛逼,支持多种语言,很可能是llvm了,到时候移动设备也可以受益。


TOP

可以绕过浏览器直接访问API么?



TOP

posted by wap, platform: Chrome
引用:
原帖由 @u571  于 2015-6-17 18:35 发表
可以绕过浏览器直接访问API么?
带我去查查看,我想可能类似JVM


TOP

原来是把其他语言编译成Asm.js让浏览器做最后一步把Asm.js转成汇编
而这个WebAssembly其实把浏览器对代码的影响完全踢开了吧,打算直接在网页里嵌汇编,确实是把浏览器当操作系统用,浏览器只提供运行环境。

问题是,这样还能跨平台么?

TOP

posted by wap, platform: iPhone
手机开机就进浏览器?没联网的怎么办?

TOP

posted by wap, platform: Chrome
边看边翻译:

开发的动机:有两个好处,一个是因为是直接的二进制代码所以比asm.js的js代码载入、解码的速度要快,二来是文件尺寸会小。在项目的github说明页面上注明了速度可能会有超过20倍提升(很正常,不用从js翻译到asm了,直接原生直接处理),大小也是asm.js的一半甚至1/3。

开发语言早期关注于C/C++上,可以方便的访问js写的库、js、DOM和Web API,使用LLVM编译,而且可以用右键查看源代码的方式看到代码!

TOP

posted by wap, platform: Chrome
引用:
原帖由 @elia  于 2015-6-17 18:57 发表
手机开机就进浏览器?没联网的怎么办?
和webapp一样,你下载安装好了,不需要联网也能用啊

TOP

posted by wap, platform: Chrome
引用:
原帖由 @卖哥  于 2015-6-17 18:51 发表
原来是把其他语言编译成Asm.js让浏览器做最后一步把Asm.js转成汇编
而这个WebAssembly其实把浏览器对代码的影响完全踢开了吧,打算直接在网页里嵌汇编,确实是把浏览器当操作系统用,浏览器只提供运行环境。

问题是,这样还能跨平台么?
各浏览器自己实现同样的底层,类似VM,然后用clang/LLVM生成二进制代码,就可以跨了。

他们还准备做基于CDN的动态链接库,就是常用的库直接放在CDN上,需要动态链接的时候直接从网络上取,不用本地存放一份了,貌似天朝要跪……

TOP

国内的话估计还是流行不起来,天朝几大互联网流氓还是更青睐自己本地APP模式。

TOP

楼主对操作系统的概念理解有偏差,简单的说在硬件和浏览器之间那一层才叫操作系统,浏览器要取代操作系统那它一定要集成了操作系统的基本功能,例如硬件初始化、系统调用接口(对js或同类语言的解析勉强说、内存管理、进程管理、设备驱动、文件系统等。

TOP

posted by wap, platform: Chrome
引用:
原帖由 @TUT  于 2015-6-17 21:00 发表
楼主对操作系统的概念理解有偏差,简单的说在硬件和浏览器之间那一层才叫操作系统,浏览器要取代操作系统那它一定要集成了操作系统的基本功能,例如硬件初始化、系统调用接口(对js或同类语言的解析勉强说、内存管理、进程管理、设备驱动、文件系统等。
我没说这个就能成为操作系统,只是说离那个阶段不远了。如今Firefox OS,ChromeOS从广义的角度都能定义为操作系统。

TOP

引用:
原帖由 jun4rui 于 2015-6-18 17:02 发表
posted by wap, platform: Chrome
我没说这个就能成为操作系统,只是说离那个阶段不远了。如今Firefox OS,ChromeOS从广义的角度都能定义为操作系统。
这两个确实是操作系统,不过跟浏览器是两码事,只是名字有浏览器的影子。

TOP

10L过于认真了, LZ的意思只是表达浏览器已经非常接近操作系统的重要功能, 也就是随意运行二进制代码这个功能
我的理解, Web API的确可以在一定程度上替代操作系统的API

TOP

posted by wap, platform: Chrome
引用:
原帖由 @流浪的枪骑兵  于 2015-6-17 21:05 发表
10L过于认真了, LZ的意思只是表达浏览器已经非常接近操作系统的重要功能, 也就是随意运行二进制代码这个功能
我的理解, Web API的确可以在一定程度上替代操作系统的API
恩恩,就是这个意思。而且如果浏览器在FireFoxOS和ChromeOS上,已经是介于内核与APP之间的层面了,并提供图形、窗口之类的API,这已经算是比较底层的玩意了。如果能直接跑二进制代码,并且浏览器能抹平各类底层OS的差异,提供统一的API接口的话,搞不好会改变很多东西。

TOP

这。。叫虚拟机或runtime environment适合些。

TOP

 29 12
发新话题
     
官方公众号及微博