Native Client

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

相关

  • 风险沟通风险管理(risk management)是一个管理过程,包括对风险的定义、测量、评估和发展因应风险的策略。目的是将可避免的风险、成本及损失极小化。理想的风险管理,事先已排定优先次序,
  • 可乐果共125种,以下只列出部分参数所指定的目标页面不存在,建议更正成存在页面或直接建立下列一个页面(建立前请先搜寻是否有合适的存在页面可以取代):]]可乐(Cola)是原产于非洲热带雨林
  • BLM2KV2, 2MH9, 2RRD, 3WE2, 3WE3, 4CDG, 4CGZ, 4O3M· p53 binding · single-stranded DNA binding · ATP-dependent DNA helicase activity · helicase activity · p
  • 胃痛stomach ache, tummy ache Field =腹痛又可称(abdominal pain、stomach pain、肚痛、肚子疼等)泛指腹部及其周围部分的疼痛症状,常见的病因包含肠胃炎、大肠激躁症。
  • 成人ADHD自填量表异常心理学 行为遗传学 生物心理学 心理药物学 认知心理学 比较心理学 跨文化心理学 文化心理学 差异心理学(英语:Differential psychology) 发展心理学 演化心理学 实验心理学
  • 橙色革命橙色革命(乌克兰语:Помаранчева революція,又译栗子花革命)是指2004年至2005年围绕2004年乌克兰总统大选过程中由于严重贪污、影响选民和直接进行选举舞弊
  • 平顶山学院平顶山学院坐落在中国河南省平顶山市新城区白龟湖畔,前身是1959年10月经河南省教育厅批准成立的平顶山师范学校。1961年9月平顶山师范学校停办,1973年7月恢复办学,定名为平顶山
  • 灶头灶、炉灶、厨灶或灶头是一种固定的烹饪的设施,透过加热炊具来达到将食物变熟的目的。中文语境中有时也以灶来指窑,例如佛山的南风古灶。早期的灶多是粘土制灶的,用柴火来加热。
  • 法兰克·贝克约翰·法兰克林·"本垒打"·贝克(英语:John Franklin "Home Run" Baker, 1888年4月4日-1958年12月8日),为美国职棒大联盟的球员,守备位置为三垒手。他在1908年到1922年15年大联盟
  • 小泉正保小泉正保(日语:こいずみ まさやす,1855年4月29日-1917年10月23日)为日本陆军军人。最终阶级陆军中将。水户藩士・小泉正诚的长男。担任过警视厅巡查,1875年(明治8年)12月、陆军士官