Native Client

✍ dations ◷ 2025-11-20 05:44:17 #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解码器软件。

相关

  • 孟鲁司特孟鲁斯特(Montelukast),化学式C35H36ClNO3S,商业使用时主要使用其钠盐,主要用于哮喘的治疗。1998年投入商业使用。药品名称中的“Mont”来自地名蒙特利尔,是默克药厂开发此药的地
  • 细胞 (杂志)《细胞》(Cell)为一份同行评审科学期刊,主要发表生命科学领域中的最新研究发现。《细胞》刊登过许多重大的生命科学研究进展,与《自然》和《科学》并列,是全世界最权威的学术杂志
  • 航天航天指与研究和探索外层空间有关的领域,航天器在太空的航行活动。科学界一般把太阳系内的航行活动称为“航天”,而把太阳系外的航行活动称为“航宇”。按航天器探索、开发和利
  • 52街第52街,位于美国纽约曼哈顿,是第五大道与第七大道之间的一条由西向东单行道。在1930年代,爵士乐手的收入来源大多来自以下三种:百老汇、夜总会中的助兴演出团体、哥伦比亚广播电
  • 阿富汗狐(V. cana)阿富汗狐(Vulpes cana)是一种生活在中东的狐狸。阿富汗狐栖息在阿富汗、埃及、突厥斯坦、伊朗东北部、巴基斯坦西南部、巴勒斯坦及以色列的半干旱地区、干草原及山区。它们也
  • 沃尔克·施隆多夫Cannes Film Festival 沃尔克·施隆多夫(Volker Schlöndorff,1939年3月31日-)是一位德国导演,也是德国新浪潮的成员之一,并曾经赢得金棕榈奖和奥斯卡最佳外语片。
  • 2012年荷兰羽毛球国际赛2012年荷兰羽毛球国际赛为第13届荷兰羽毛球国际赛,属世界羽联国际挑战赛级别,亦是2011/12赛季欧洲羽联巡回赛的其中一站。本届赛事于2012年4月12日至4月15日在荷兰韦斯特兰内
  • R23公路 (俄罗斯)R23联邦公路,原编号M20,2018年起更改为R23,又称普斯科夫公路(Псков),是俄罗斯的一条干线公路,始于圣彼得堡,经普斯科夫,以拉脱维亚边界为终点,全长261公里。也是欧洲E95公路(英语:E
  • 西班牙国铁252型电力机车252型电力机车是西班牙国家铁路的电力机车车型之一,由德国西门子交通集团、克劳斯-玛菲公司、蒂森-亨舍尔集团等企业联合设计制造,1991年至1996年间累计生产了75台,其中首15台
  • 教宗斯德望五世教宗斯德望五世(拉丁语:Stephanus PP. V;?-891年)原名不详,于885年9月至891年9月14日岀任教宗。