<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh">
	<id>https://arolstar52-zhtest.hf.space/index.php?action=history&amp;feed=atom&amp;title=Native_Client</id>
	<title>Native Client - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://arolstar52-zhtest.hf.space/index.php?action=history&amp;feed=atom&amp;title=Native_Client"/>
	<link rel="alternate" type="text/html" href="https://arolstar52-zhtest.hf.space/index.php?title=Native_Client&amp;action=history"/>
	<updated>2026-06-25T23:27:31Z</updated>
	<subtitle>在这个wiki上该页的修订历史</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://arolstar52-zhtest.hf.space/index.php?title=Native_Client&amp;diff=701491&amp;oldid=prev</id>
		<title>imported&gt;Andy19470 来自 2026年2月19日 (四) 13:29</title>
		<link rel="alternate" type="text/html" href="https://arolstar52-zhtest.hf.space/index.php?title=Native_Client&amp;diff=701491&amp;oldid=prev"/>
		<updated>2026-02-19T13:29:52Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{noteTA|G1=IT}}&lt;br /&gt;
{{Infobox software&lt;br /&gt;
| name                   = Google Native Client&lt;br /&gt;
| logo                   = Google Chrome icon (March 2011).svg&lt;br /&gt;
| screenshot             =&amp;lt;!-- Deleted image removed:  [[Image:Native-client-python-repl.png|200px]] --&amp;gt;&lt;br /&gt;
| caption                = A [[Python]] [[read-eval-print loop|REPL]] running under Native Client inside a web browser.&lt;br /&gt;
| latest release version = SDK: [http://developer.chrome.com/native-client/sdk/release-notes Pepper 45] &amp;lt;small&amp;gt;({{start date and age|df=yes|2015|07|10}})&amp;lt;/small&amp;gt;, Client: {{Latest stable software release/Google Chrome}}&lt;br /&gt;
| latest release date    =&lt;br /&gt;
| latest preview version = [http://code.google.com/chrome/nativeclient/docs/releasenotes.html 0.5]&lt;br /&gt;
| latest preview date    = {{start date and age|2011|07|28}}&lt;br /&gt;
| developer              = [[Google]]，以及其他開發者&lt;br /&gt;
| programming language   = [[C語言]]、[[C++]]&lt;br /&gt;
| operating system       = [[Cross-platform]]: [[Microsoft Windows]], [[Linux]], [[Mac OS]], [[Google Chrome OS|Chrome OS]]&lt;br /&gt;
| status                 = 產品 (NaCl, PNaCl&amp;lt;ref&amp;gt;{{Cite web |url=http://src.chromium.org/viewvc/chrome?view=revision&amp;amp;revision=213999 |title=Chrome Revision 213999 |access-date=2015-01-07 |archive-date=2021-03-08 |archive-url=https://web.archive.org/web/20210308120902/https://src.chromium.org/viewvc/chrome?view=revision&amp;amp;revision=213999 }}&amp;lt;/ref&amp;gt;)&lt;br /&gt;
| genre                  = 利用[[沙盒 (計算機安全)|沙盒]]技術，讓[[機器碼]]在[[瀏覽器]]上運行&lt;br /&gt;
| license                = [[BSD licenses|New BSD license]]&lt;br /&gt;
| website                = {{URL|code.google.com/p/nativeclient}}&lt;br /&gt;
}}&lt;br /&gt;
{{Portal|Free software}}&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Google Native Client&amp;#039;&amp;#039;&amp;#039;（縮寫為&amp;#039;&amp;#039;&amp;#039;{{lang|en|NaCl}}&amp;#039;&amp;#039;&amp;#039;），是一个由[[谷歌]]所發起的[[開放原始碼]]計劃，採用[[BSD许可证]]。它採用[[沙盒 (計算機安全)|沙盒]]技術，讓[[Intel x86]]、[[ARM]]或[[MIPS]]子集的[[機器碼]]直接在沙盒上運行。它能夠從[[瀏覽器]]直接運行程式機器碼，獨立於使用者的作業系統之外，使[[Web應用程式]]可以用接近於機器碼運作的速度來執行，同時兼顧安全性。其功能類似於[[微軟]]的 [[ActiveX]]，但是ActiveX只支援[[Microsoft Windows|Windows]]系統。&lt;br /&gt;
&lt;br /&gt;
Google將這項功能合併在[[Chrome OS]]之下開發。它也可以被用來開發安全的[[瀏覽器]][[外掛]]程式。&lt;br /&gt;
&lt;br /&gt;
2017年5月31日，Google宣布放棄PNaCl轉向[[WebAssembly]]&amp;lt;ref&amp;gt;{{Cite news|url=https://blog.chromium.org/2017/05/goodbye-pnacl-hello-webassembly.html|title=Goodbye PNaCl, Hello WebAssembly!|work=Chromium Blog|access-date=2017-05-31|language=en-US|archive-date=2017-05-30|archive-url=https://web.archive.org/web/20170530233036/https://blog.chromium.org/2017/05/goodbye-pnacl-hello-webassembly.html|dead-url=no}}&amp;lt;/ref&amp;gt;。&lt;br /&gt;
&lt;br /&gt;
==技術內容==&lt;br /&gt;
NaCl使用[[Newlib]]作為它的[[C標準函式庫]]，但它也支援[[GNU C 函式庫]]。&lt;br /&gt;
&lt;br /&gt;
它最初只支援[[x86]]平台，但目前也支援[[ARM]]平台與[[x86-64]]。&lt;br /&gt;
&lt;br /&gt;
===沙盒技術===&lt;br /&gt;
NaCl運用沙盒技术以防止外來（第三方）機器碼影響系統安全；特別是在[[x86]]平台上運用[[記憶體區段]]，限制[[外掛程式]]所能讀寫的記憶體范围。&amp;lt;ref name=&amp;quot;Sandboxx86&amp;quot;&amp;gt;[http://research.google.com/pubs/archive/34913.pdf Native Client: A Sandbox for Portable, Untrusted x86 Native Code]&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
由於ARM與x86-64[[長模式]]不支援記憶體區段，因此在這些平台上NaCl的記憶體寫入地址是由沙盒過濾。&amp;lt;ref&amp;gt;{{Cite web |url=http://nativeclient.googlecode.com/svn/data/site/NaCl_SFI.pdf |title=Adapting Software Fault Isolation to Contemporary CPU Architectures |accessdate=2011-09-12 |archive-date=2011-07-23 |archive-url=https://web.archive.org/web/20110723064729/http://nativeclient.googlecode.com/svn/data/site/NaCl_SFI.pdf |dead-url=no }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===機器碼驗證器===&lt;br /&gt;
NaCl運用機器碼驗證器（Code Validator）来保證只有安全機器碼能在系統執行。由於x86/x86-64是[[複雜指令集]]，[[指令]]長度不一，透過[[控制流程]]可能隱藏非安全機器碼，從而使驗證十分耗時。NaCl運用固定長度的16或32[[位元組]]的指令束(Instruction Bundle)，使機器碼驗證器設計簡單（只有約600行[[C語言]]）和高效率；&amp;lt;ref name=&amp;quot;Sandboxx86&amp;quot;/&amp;gt; &amp;lt;ref&amp;gt;{{Cite web |url=http://src.chromium.org/viewvc/native_client/trunk/src/native_client/src/trusted/validator/x86/ |title=Index of /trunk/src/native_client/src/trusted/validator/x86 |accessdate=2011-09-12 |archive-date=2012-07-20 |archive-url=https://archive.today/20120720193306/http://src.chromium.org/viewvc/native_client/trunk/src/native_client/src/trusted/validator/x86/ |dead-url=no }}&amp;lt;/ref&amp;gt; 而運用指令束只是失去5%的執行效率。&lt;br /&gt;
&lt;br /&gt;
== 應用軟件的移植 ==&lt;br /&gt;
NaCl支援[[單指令流多數據流]]指令（如[[SSE]]、[[3DNow!]]）及[[多執行緒]]介面，應用軟件一般只需簡單的修改便可以移植到NaCl平台；在2009年一個發布會上，NaCl開發人員示範一個為NaCl平台的移植而修改了20行原始碼的[[H264]]解碼器軟件。&amp;lt;ref&amp;gt;{{Cite web |url=http://assets.en.oreilly.com/1/event/29/Native%20CPU%20Performance%20in%20the%20Browser%20with%20Google%20Native%20Client%20Presentation.pdf |title=Native CPU Performance in the Browser with Google Native Client |accessdate=2011-09-16 |archive-date=2019-02-17 |archive-url=https://web.archive.org/web/20190217094628/http://assets.en.oreilly.com/1/event/29/Native%20CPU%20Performance%20in%20the%20Browser%20with%20Google%20Native%20Client%20Presentation.pdf |dead-url=no }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 參考資料 ==&lt;br /&gt;
{{reflist}}&lt;br /&gt;
&lt;br /&gt;
==外部連結==&lt;br /&gt;
* {{en}} [http://code.google.com/p/nativeclient/ NaCl計劃官網]{{Wayback|url=http://code.google.com/p/nativeclient/ |date=20100722230056 }}&lt;br /&gt;
* {{en}} {{Youtube|id=2xV_0pTpNj0|title=Google I/O 2009 Native Code for Compute Intensive Web Apps}} - [[Google I/O]] 2009技術專題討論&lt;br /&gt;
* {{en}} {{Youtube|id=KOsJIhmeXoc|title=Google I/O 2012 Life of a Native Client Instruction}} - Google I/O 2012技術專題討論&lt;br /&gt;
&lt;br /&gt;
{{Google公司}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Google軟體]]&lt;br /&gt;
[[Category:自由软件]]&lt;br /&gt;
[[Category:安全软件]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Andy19470</name></author>
	</entry>
</feed>