Native Client

✍ dations ◷ 2025-12-07 05:49:28 #Google软件,自由软件,安全软件

Google Native Client(缩写为NaCl),是一个由谷歌所发起的开放源代码计划,采用BSD许可证。它采用沙盒技术,让Intel x86、ARM或MIPS子集的机器代码直接在沙盒上运行。它能够从浏览器直接运行程序机器代码,独立于用户的操作系统之外,使Web应用程序可以用接近于机器代码运作的速度来运行,同时兼顾安全性。其功能类似于微软的 ActiveX,但是ActiveX只支持视窗系统。

Google将这项功能合并在Chrome OS之下开发。它也可以被用来开发安全的浏览器外挂程序。

2017年5月31日,Google宣布放弃PNaCl转向WebAssembly。

NaCl使用Newlib作为它的C标准库,但它也支持GNU C 库。

它最初只支持x86平台,但目前也支持ARM平台与x86-64。

NaCl运用沙盒技术以防止外来(第三方)机器代码影响系统安全;特别是在x86平台上运用存储器区段,限制插件所能读写的存储器范围。

由于ARM与x86-64长模式不支持存储器区段,因此在这些平台上NaCl的存储器写入地址是由沙盒过滤。

NaCl运用机器代码验证器(Code Validator)来保证只有安全机器代码能在系统运行。由于x86/x86-64是复杂指令集,指令长度不一,透过控制流程可能隐藏非安全机器代码,从而使验证十分耗时。NaCl运用固定长度的16或32字节的指令束(Instruction Bundle),使机器代码验证器设计简单(只有约600行C语言)和高效率; 而运用指令束只是失去5%的运行效率。

NaCl支持单指令流多数据流指令(如SSE、3DNow!)及多线程接口,应用软件一般只需简单的修改便可以移植到NaCl平台;在2009年一个发布会上,NaCl开发人员示范一个为NaCl平台的移植而修改了20行源代码的H264解码器软件。

相关

  • 达德利·赫施巴赫达德利·赫施巴赫(Dudley R. Herschbach,1932年6月18日-),美国化学家。因为研究化学基元反应体系在位能面运动过程的动力学,与李远哲和约翰·波拉尼共同分享了1986年的诺贝尔化学
  • 端粒酶RNA组分· multicellular organismal aging biological process · negative regulation of apoptosis biological process · positive regulation of telomere maintenance via
  • 东平县35°56′13″N 116°27′53″E / 35.93694°N 116.46472°E / 35.93694; 116.46472坐标:35°56′13″N 116°27′53″E / 35.93694°N 116.46472°E / 35.93694; 116.46472东
  • 低血容量血容量减少,亦称血容量过低、休克,指的是体内血量减少的状况。 它表现在体内血液体积收缩和脱盐上。常见的血容量减少的原因有:
  • 气球气球(法语、德语:Ballon、英语:Balloon)是一种用来填充气体的囊状物。具有实用性,用被作载具的气球被称作航空气球,而小型的气球则常被用作装饰品和玩具。本文讨论的内容主要是作
  • 王象斗王象斗(?年-?年),字子极,号瞻吾,山东新城县(今桓台县新城镇)人。 明朝政治人物。王象斗为王之辅三子。十岁即通诗律,工书法。万历二十三年(1595年)登乙未科进士,授户部主事。曾奉命前往江
  • 平移在仿射几何,平移(translation)是将物件的每点向同一方向移动相同距离。它是等距同构,是仿射空间中仿射变换的一种。它可以视为将同一个向量加到每点上,或将坐标系统的中心移动所
  • 言说实证主义 · 反实证主义(英语:Antipositivism) 结构主义 · 冲突理论 中层理论 · 形式理论 批判理论 人口 · 团体 · 组织(英语:Organizational theory) · 社会化 社会性
  • 岛主岛主是岛的主人。在中国,土地所有权在国家,所以就是拥有岛屿较长使用权的个人或者企业。岛主可以分为私人岛主和企业岛主。中国岛主有680位左右,60%是湖岛岛主,30%是江河岛岛主,1
  • 韩元韩圆(원,英语:won)亦称韩元、韩圜、韩国圆。是大韩民国的通货单位,由韩国央行韩国银行发行。国际标准化组织ISO 4217订定其标准代号为KRW。1韩元相当于100钱,但钱已经不再于日常生