OLD | NEW |
1 {{+bindTo:partials.standard_nacl_article}} | 1 {{+bindTo:partials.standard_nacl_article}} |
2 | 2 |
3 <section id="welcome-to-native-client"> | 3 <section id="welcome-to-native-client"> |
4 <h1 id="welcome-to-native-client">Welcome to Native Client</h1> | 4 <h1 id="welcome-to-native-client">Welcome to Native Client</h1> |
5 <div id="home"> | 5 <div id="home"> |
6 <a class="button-nacl button-download" href="/native-client/sdk/download.html">D
ownload SDK</a> | 6 <div class="pull-quote">To get the SDK and<br/>installation instructions<br/> |
| 7 <a href="/native-client/sdk/download.html">visit the SDK Download page</a>. |
| 8 </div> |
7 <div class="big-intro"><p><strong>Native Client</strong> is a sandbox for runnin
g compiled C and C++ code in the | 9 <div class="big-intro"><p><strong>Native Client</strong> is a sandbox for runnin
g compiled C and C++ code in the |
8 browser efficiently and securely, independent of the user’s operating syst
em. | 10 browser efficiently and securely, independent of the user’s operating syst
em. |
9 <strong>Portable Native Client</strong> extends that technology with | 11 <strong>Portable Native Client</strong> extends that technology with |
10 architecture independence, letting developers compile their code once to run | 12 architecture independence, letting developers compile their code once to run |
11 in any website and on any architecture.</p> | 13 in any website and on any architecture.</p> |
12 <p>In short, Native Client brings the <strong>performance</strong> and <strong>l
ow-level control</strong> | 14 <p>In short, Native Client brings the <strong>performance</strong> and <strong>l
ow-level control</strong> |
13 of native code to modern web browsers, without sacrificing the <strong>security<
/strong> and | 15 of native code to modern web browsers, without sacrificing the <strong>security<
/strong> and |
14 <strong>portability</strong> of the web. Watch the video below for an overview o
f | 16 <strong>portability</strong> of the web. Watch the video below for an overview o
f |
15 Native Client, including its goals, how it works, and how | 17 Native Client, including its goals, how it works, and how |
16 Portable Native Client lets developers run native compiled code on the web.</p> | 18 Portable Native Client lets developers run native compiled code on the web.</p> |
| 19 <aside class="note"> |
| 20 This site uses several examples of Native Client. For the best experience, |
| 21 consider downloading the <a class="reference external" href="http://www.google.c
om/chrome/">latest version of Chrome</a>. |
| 22 When you come back, be sure to <a class="reference external" href="https://gonat
iveclient.appspot.com/demo">check out our demos</a>. |
| 23 </aside> |
17 </div> | 24 </div> |
18 | 25 |
19 <iframe class="video" width="640" height="360" | 26 <iframe class="video" width="600" height="337" |
20 src="//www.youtube.com/embed/MvKEomoiKBA?rel=0" frameborder="0"></iframe> | 27 src="//www.youtube.com/embed/MvKEomoiKBA?rel=0" frameborder="0"></iframe> |
| 28 <div class="big-intro"><h2 id="two-types-of-modules">Two Types of Modules</h2> |
| 29 <p>Native Client comes in two flavors.</p> |
| 30 <ul class="small-gap"> |
| 31 <li><strong>Portable Native Client (PNaCl)</strong>: Pronounced ‘pinnacle&
#8217;, PNaCl runs single, portable (<strong>pexe</strong>) executables and is a
vailable |
| 32 in most implementations of Chrome. A translator built into Chrome |
| 33 translates the pexe into native code for the client hardware. The entire |
| 34 module is translated before any code is executed rather than as the code is |
| 35 executed. PNaCl modules can be hosted from any web server.</li> |
| 36 <li><strong>Native Client (NaCl)</strong>: Also called traditional or non-portab
le Native |
| 37 Client, NaCl runs |
| 38 architecture-dependent (<strong>nexe</strong>) modules, which are packaged into
an |
| 39 application. At runtime, the browser decides which nexe to load based on the |
| 40 architecture of the client machine. NaCl modules must be run from the <a class="
reference external" href="https://chrome.google.com/webstore/category/apps">Chro
me |
| 41 Web Store (CWS)</a>. |
| 42 Fortunately, work from PNaCl modules can be used to create NaCl modules.</li> |
| 43 </ul> |
| 44 <p>These flavors are described in more depth in <a class="reference external" hr
ef="nacl-and-pnacl">PNaCl and NaCl</a></p> |
| 45 <div class="left-side"> |
| 46 <div class="left-side-inner"> |
| 47 <h2>Hello World</h2> |
| 48 <div class="big-intro"><p>To jump right in <a class="reference external" href="d
evguide/tutorial/tutorial-part1">take the tutorial</a> that walks you through a
basic web |
| 49 application for Portable Native Client (PNaCl). This is a client-side |
| 50 application that uses HTML, JavaScript, and a Native Client module written in C+
+.</p> |
| 51 </div> |
| 52 </div> |
| 53 </div> |
| 54 <h2>A Little More Advanced</h2> |
| 55 <div class="big-intro"><p>If you’ve already got the basics down, you’
;re probably trying to get a real application ready for production. You’re
<a class="reference external" href="/devguide/devcycle/building">building</a>,
<a class="reference external" href="/devguide/devcycle/debugging">debugging</a>
or <a class="reference external" href="/devguide/distributing">ready to distribu
te</a>.</p> |
| 56 </div> |
21 | 57 |
22 <div class="right-side"> | 58 <div class="left-side"> |
23 <div class="right-side-inner"> | 59 <div class="left-side-inner"> |
24 <h2>Guiding principles of Native Client</h2> | 60 <h2>Nuts and Bolts</h2> |
25 <div class="big-intro"> | 61 <div class="big-intro"><p>You’ve been working on a Native Client module fo
r a while now and you’ve run into an arcane problem. You may need to refer
to the <a class="reference external" href="/reference/pnacl-bitcode-abi">PNaCl
Bitcode Reference</a> or the <a class="reference external" href="/sandbox_intern
als/index">Sandbox internals</a>.</p> |
26 <ul> | |
27 <li>Developer flexibility to program in any language.</li> | |
28 <li>Running close to the metal to allow access to performance gains.</li> | |
29 <li>Protecting users from malicious code and malware.</li> | |
30 <li>Write-once, run-anywhere code portability across all user architectures.</
li> | |
31 </ul></div> | |
32 </div> | 62 </div> |
33 </div><h2 id="get-started-with-native-client">Get started with Native Client</h2
> | |
34 <div class="big-intro"><ol class="arabic simple"> | |
35 <li><a class="reference internal" href="/native-client/sdk/download.html"><em>Do
wnload the Native Client SDK</em></a>.</li> | |
36 <li>Read the <a class="reference internal" href="/native-client/overview.html"><
em>Technical Overview</em></a>.</li> | |
37 <li>Learn how to use the SDK and build both a web app and a Chrome app in the | |
38 <a class="reference internal" href="/native-client/devguide/tutorial/tutorial-pa
rt1.html"><em>Getting Started Tutorial</em></a>.</li> | |
39 </ol> | |
40 </div> | 63 </div> |
| 64 </div><h2 id="i-want-to-know-everything">I Want to Know Everything</h2> |
| 65 <p>So, you like to read now and try later. Start with our <a class="reference ex
ternal" href="/overview">Technical Overview</a></p> |
41 <div class="big-intro" style="clear: both;"><p>Send us questions, comments, and
feedback: | 66 <div class="big-intro" style="clear: both;"><p>Send us questions, comments, and
feedback: |
42 <a class="reference external" href="https://groups.google.com/forum/#!forum/nati
ve-client-discuss">native-client-discuss</a>.</p> | 67 <a class="reference external" href="https://groups.google.com/forum/#!forum/nati
ve-client-discuss">native-client-discuss</a>.</p> |
43 </div> | |
44 </div></section> | 68 </div></section> |
45 | 69 |
46 {{/partials.standard_nacl_article}} | 70 {{/partials.standard_nacl_article}} |
OLD | NEW |