Native Client

✍ dations ◷ 2025-12-11 11:41:32 #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解码器软件。

相关

  • 东北高加索语系东北高加索语系是主要分布在俄罗斯达吉斯坦、车臣、印古什、阿塞拜疆北部、格鲁吉亚东北部等地的一个语系。
  • 吞剑吞剑,是一项危险的特技表演,也是一种行为艺术。表演者会把剑插入口中,剑尖经过食道到达胃部位置。其实吞剑者是真的把剑吞下,在吞剑过后会将之从口中拿回,吞剑期间他们还得忍受强
  • 义肢假体或假肢(英语:Prosthesis 或 Prosthetic implant)指人造肢体,用来取代肢体的功能障碍(不论暂时性或永久性),或是用来掩饰肢体伤残。与义体(如义乳、假鼻子、假发、假牙)最大的不同
  • 拉斯金美术学校拉斯金美术学校(英语:Ruskin School of Drawing & Fine Art,也简称Ruskin),是牛津大学下的一个艺术学校。 有两个办学点,提供研究生和本科生教育。历史可追溯到1871年约翰·拉斯金
  • 大王乌贼巨乌贼,又名大王乌贼(属名:Architeuthis,英文名:Giant squid),是一种生活在太平洋和大西洋深海的乌贼,其天敌是抹香鲸,是世界上最长的无脊椎动物。 根据最新的估计,雌性乌贼的全长大约
  • 医管会卫生福利部附属医疗及社会福利机构管理会(简称医管会或医福会)是中华民国卫生福利部为整合部立医院之效能而成立的任务编组单位。医疗机构社会福利机构卫生福利部双和医院卫生
  • 配方奶粉婴儿配方奶粉又称母乳化奶粉,是以牛乳或其他动物乳或其他动植物成分为基本成分,适当添加营养素,可供给婴儿生长与发育所需营养的一种婴儿食品,用作母乳的替代品。母乳是婴儿最理
  • 厘 (长度单位)在市制中,“厘”可以是长度单位;1厘 = 10毫 = ⅓ 毫米现时在台湾,“公厘”等于毫米,即 1⁄1000 米,原因是借用旧制的排列次序:里 > 引 > 丈 > 尺 > 寸 > 分 > 厘米(m) · 尧米(Ym) ·
  • 胡大国胡大国(1921年5月21日-2011年2月17日)圣名奥斯定,天主教石阡监牧区主教,不被中国大陆政府承认。 1921年5月21日(一说1922年5月14日),胡大国生于中国贵州省平塘县通州镇的一个天主
  • 陈傅陈傅,字岩说,福建福州府闽县人,明朝政治人物。同进士出身。宣德十年,福建乙卯乡试中举。正统元年(1436年),登丙辰科会试中进士,授刑科给事中,弹劾会昌伯孙忠、应城伯孙杰、福建参议颜