Native Client

✍ dations ◷ 2025-07-17 06:46:22 #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解码器软件。

相关

  • 院内感染医疗照顾相关感染(英语:health care–associated infection(HAI or HCAI)),旧称院内感染(nosocomial infection)、医院感染或医院获得性感染(hospital-acquired infection(HAI))是指在医
  • MKL12KVU, 2KW9· sequence-specific DNA binding transcription factor activity · transcription coactivator activity · actin binding · actin monomer binding ·
  • 阿拉伯沙漠阿拉伯沙漠是占据阿拉伯半岛的大部分区域的沙漠,由也门延伸至波斯湾、阿曼至约旦及伊拉克。其中心为空虚地带,世上最大的沙体之一。瞪羚、剑羚、沙猫和王者蜥为生存于此一极限
  • OGAEOGAE(法语:Organisation Générale des Amateurs de l'Eurovision,译名“欧视爱好者总会”)是一个由亚里-佩卡·科伊卡莱宁(Jari-Pekka Koikkalainen)于1984年在芬兰萨翁林纳建立
  • 戈治均戈治均(1936年8月14日-),中国影视演员。2001年凭电影《押解的故事》获得金鸡奖最佳男主角。
  • 脱氧鸟苷单磷酸去氧鸟苷单磷酸(Deoxyguanosine monophosphate,dGMP)是一种结构与鸟苷单磷酸相似,但五碳糖的2号碳上少了一个-OH基的分子,并由单一的氢原子取而代之。
  • ISO 3166-2列表国际标准化组织的ISO 3166-1国际标准是ISO 3166的第一部分,有ISO标准国家代码。1974年首次出版。ISO 3166-1为国家和地区建立国际认可的代码,代码分为3种,即二位字母代码、三位
  • 爱德华·德林克·科普爱德华·德林克·科普(Edward Drinker Cope,1840年7月28日-1897年4月12日)是一位美国古生物学家及比较解剖学家,同时也是爬虫类学家与鱼类学家。科普出生于费城,1859年时将一份关
  • 童受童受论师(梵语:Kumāralabdha,生卒年不详),音译为拘摩罗逻多、鸠摩罗罗陀、鸠摩罗驮、究摩罗陀、鸠摩罗多,意译作童受、童首、豪童、童子。印度部派佛教著名论师,出自说一切有部,与
  • 沃伦·奥斯汀沃伦·罗宾逊·奥斯汀 (英语:Warren Robinson Austin ,1877年11月12日-1962年12月25日),为美国政治人物。曾担任佛蒙特州参议员及美国驻联合国大使。小爱德华·R·斯特蒂纽斯 →