• 青史成灰
    2020-09-21
    从第一课到现在,都是文本。。。多搞点代码,是不是更好些。毕竟程序员,代码比文本更加直观

    作者回复: 代码会放到实战篇哈。

    
    4
  • 大土豆
    2020-09-21
    获取完之后,没有全部编译成平台相关的机器码吧?还有一部分字节码,解释执行

    作者回复: 嗯嗯,我这里讲的可能不太严谨,其实应该是平台相关的代码,比如V8,那就是V8内部用于表示WebAssembly.Module 这个对象的代码组织形式。一般来说会先解释执行字节码来快速启动,然后再由JIT编译成机器码。当然具体实现可能有所不同。

    
    3
  • 慌慌张张
    2020-10-23
    您好老师,麻烦问一下wasm在浏览器中执行的时候,也有内存对齐这一说吗?

    作者回复: 有的哈,诸如 i32.store 等指令对应的立即数都是由 offset 和 alignment 两部分组成的。

    
    1
  • 一步
    2020-09-24
    在 nodejs 的环境中进行测试 ,也是有上面那些 WebAssembly 的构造函数和方法的, 那么可以直接在 nodejs 的生产环境中使用吗? 兼容程度是怎么样的?

    作者回复: 关于兼容性可以在 MDN 上对应各个 Wasm API 最下面的兼容性列表中查看哈。目前来看,在最新版的 Nodejs 中,除了 Streaming 相关的 API,其他的应该都有支持的,因此是可以直接使用的。而关于对 WASI 的兼容性,可以参考这里:https://nodejs.org/api/wasi.html

    
    1
  • 一頭蠻牛
    2022-06-16
    最想听听老师分析下 浏览器编译wasm得到的moudule到底是什么

    作者回复: 实际上,一个 WebAssembly.Module 对象在浏览器内部是怎样表示的,这个确实要看具体实现。但能够知道的是其内部肯定存放有与对应 Wasm 模块相关的一些信息。可以参考我之前实现过一个 Wasm 引擎(链接在下面),这里的模块对象内部存放有静态的 Wasm 信息,比如各个段的内容、版本等等。而当实例化时,才会对初始化表达式、内存段、数据段、入口地址等做正确的调整,而这个过程就是基于静态模块内的信息来进行的。当然具体情况还是依不同引擎的实现而定。 https://github.com/Becavalier/TWVM/blob/e0e9c263bd33d8d8f32f7986838b57ae35ec9fd1/lib/include/structs.hh#L45

    
    
  • Twittytop
    2022-04-27
    提一个建议,不一定是所有人的感受。感觉老师的课程战线拉得很长,后面的内容有很多是对前面内容的详细解释,我个人的感觉是前面有很多地方看得似懂非懂,然后到后面才有豁然开朗的感觉,然后再返回到前面的课程去阅读,就很清晰明了了,但是这样造成的一个问题是有很多同学看前面的没有看懂就放弃了,就会没有效果,所以老师能不能适当的改善一下这种情况。

    作者回复: 收到,感谢你的反馈!由于这门课已经节课,所以在结构上目前可能无法进行太大的调整,但你的建议我收到了,如果后面这门课还会做改版的话,我会再进行适当的修正。

    
    
  • 军秋
    2020-09-27
    wasm和video若能更好的结合,解决播放H265的视频就好了
    共 1 条评论
    4
  • 空间
    2020-10-01
    目前局限性(不是很确定): 1. 不能脱离JS环境 2. 和JS的相互调用又不好用,麻烦 3. 虚拟机没有像JS一样访问浏览器功能的诸多接口如DOM, webgl, 定位,传感器,语音... 这些可以作为虚拟机在浏览器上提供的基础库,如果是其他环境(如作为云服务网格的插件)也可以提供不同的基础库
    
    2
  • 大西瓜撒
    2021-08-25
    这节很精彩
    
    
  • Sun Fei
    2021-07-18
    希望 Wasm 的不断发展,会出现更好的客户端跨平台方案。
    
    