当前位置:   article > 正文

基于Native Client的编程框架_native+client+开发

native+client+开发


上面是一个浏览器的架构图,JS引擎+渲染引擎+外壳Shell+内核 4部分构成了浏览器的主体,传统的插件(上图左部)通过NPAPI与浏览器通信,Native Client(上图右部)通过PPAPI与浏览器通信,只有浏览器内核可以直接访问本地系统OS。


【Native Client】

Native Client是Chrome浏览器里面的一个沙箱,它允许在沙箱里面运行本地码程序,使得程序执行速度接近系统的本地程序。同时它又制定了很多沙箱策略来限制本地程序安全的执行。

【可信程序和不可信程序】

在Chrome浏览器里面共有两种类型的程序存在,可信程序(上图黑色边框部分)和不可信程序(上图蓝色边框部分)。可信程序认为是安全的,能够访问一切的本地资源;不可信程序由于存在安全隐患,将其放入沙箱之中,不能直接访问本地资源。而传统的NPAPI插件是被作为可信程序,所以其存在安全隐患。

【基于Native Client的编程框架】

通常在Native Client中运行的本地程序只是利用了CPU+内存的执行优势,它只有一个newlib或者glibc库可以调用,而我们在Native Client搭建了一个编程框架,提供更多的支持(信号量、多线程等)给本地程序,使得本地程序计算能力增强。

编程框架本身是作为可信程序的,能够访问一切本地资源。因此在这个新的模型中,本地程序可以跑自己的逻辑,同时需要访问本地资源时,通过PPAPI接口调用就可以了。



声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/556299
推荐阅读
相关标签
  

闽ICP备14008679号