Native Client

✍ dations ◷ 2025-12-10 15:16:59 #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解码器软件。

相关

  • 线虫线虫动物门(学名:Nematoda)是动物界中最大的门之一,为假体腔动物,绝大多数体小呈圆柱形,又称圆虫(roundworms)。线虫的物种很不容易区分,有相关描述的已超过二万五千种,其中超过一半是
  • 支链淀粉支链淀粉(Amylopectin)又称胶淀粉、淀粉精,是天然淀粉的两种主要高分子化合物之一,另一种为直链淀粉。普通淀粉颗粒内,支链淀粉约占80%,直链淀粉约占20%。从结构上来讲,支链淀粉是一
  • 地震学地震学是一门研究地震以及震波在地球内部传播的学问,也研究其它由地震引起的现象,如海啸,以及会引起地震的现象,如板块运动、火山运动等。地震可以在地球内部引致地震波,通过观察
  • 冯兰洲冯兰洲(1903年6月24日-1972年1月24日),英文名Feng Lan-chou,山东临朐人,中国昆虫学家。1929年毕业于山东济南齐鲁大学医正科,并获加拿大多伦多大学授予的医学博士学位。中国医学科
  • 颚化颚音化(英语:Palatalization)是一个语言学的名词,指辅音在发音时变得接近硬颚音。通常发生于硬颚无擦通音/j/或者前元音如/i/、/e/的前面,这个现象会使辅音在发音时,除本身的发音
  • 伊斯梅利亚伊斯梅利亚市(阿拉伯语:مدية الإسماعيلية‎,转写:al-Ismāʻīlīyah;埃及阿拉伯语发音: .mw-parser-output .IPA{font-family:"Charis SIL","Doulos SIL","Linux
  • 洛杉矶警察局坐标:34°03′07″N 118°14′40″W / 34.0519°N 118.2445°W / 34.0519; -118.2445洛杉矶警察局(Los Angeles Police Department ,又称洛城警署,简称为LAPD)是美国加利福尼亚州
  • 中国共产党纪律检查机关 政治主题中国共产党纪律检查机关,是中国共产党对党员进行纪律检查的部门。在《中国共产党章程》内称为“党的纪律检查机关”,是指“党的中央纪律检查委员会”、“党的地方各
  • 加拿大国徽加拿大国徽或加拿大王徽(英语:Arms of His/Her Majesty in Right of Canada),是加拿大和加拿大君主自1921年以来的正式徽号,其设计仿照英国国徽,但徽号中的部分英式元素则被具有加
  • 文本数据库文本数据库(TXTDB)是一种常用的数据库,也是最简单的数据库。任何文件都可以成为文本数据库。文本数据库可以为任何扩展名,在文件中写入任何信息,通过程序(比如PHP、ASP等)来读写文