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 <div class="pull-quote">To get the SDK and<br/>installation instructions<br/> | 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>. | 7 <a href="/native-client/sdk/download.html">visit the SDK Download page</a>. |
8 </div> | 8 </div> |
9 <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 |
10 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. |
11 <strong>Portable Native Client</strong> extends that technology with | 11 <strong>Portable Native Client</strong> extends that technology with |
12 architecture independence, letting developers compile their code once to run | 12 architecture independence, letting developers compile their code once to run |
13 in any website and on any architecture.</p> | 13 in any website and on any architecture.</p> |
14 <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> |
15 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 |
16 <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 |
17 Native Client, including its goals, how it works, and how | 17 Native Client, including its goals, how it works, and how |
18 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"> | 19 <aside class="note"> |
20 This site uses several examples of Native Client. For the best experience, | 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>. | 21 consider downloading the <a class="reference external" href="http://www.google.c
om/chrome/">latest version of Chrome</a>. When you come back, be sure to <a clas
s="reference external" href="https://gonativeclient.appspot.com/demo">check out |
22 When you come back, be sure to <a class="reference external" href="https://gonat
iveclient.appspot.com/demo">check out our demos</a>. | 22 our demos</a>. |
23 </aside> | 23 </aside> |
24 </div> | 24 </div> |
25 | 25 |
26 <iframe class="video" width="600" height="337" | 26 <iframe class="video" width="600" height="337" |
27 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> | 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> | 29 <p>Native Client comes in two flavors.</p> |
30 <ul class="small-gap"> | 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 | 31 <li><strong>Portable Native Client (PNaCl)</strong>: Pronounced ‘pinnacle&
#8217;, PNaCl runs single, |
32 in most implementations of Chrome. A translator built into Chrome | 32 portable (<strong>pexe</strong>) executables and is available in most implementa
tions of |
33 translates the pexe into native code for the client hardware. The entire | 33 Chrome. A translator built into Chrome translates the pexe into native code |
34 module is translated before any code is executed rather than as the code is | 34 for the client hardware. The entire module is translated before any code is |
35 executed. PNaCl modules can be hosted from any web server.</li> | 35 executed rather than as the code is executed. PNaCl modules can be hosted from |
| 36 any web server.</li> |
36 <li><strong>Native Client (NaCl)</strong>: Also called traditional or non-portab
le Native | 37 <li><strong>Native Client (NaCl)</strong>: Also called traditional or non-portab
le Native |
37 Client, NaCl runs | 38 Client, NaCl runs architecture-dependent (<strong>nexe</strong>) modules, which
are |
38 architecture-dependent (<strong>nexe</strong>) modules, which are packaged into
an | 39 packaged into an application. At runtime, the browser decides which nexe to |
39 application. At runtime, the browser decides which nexe to load based on the | 40 load based on the architecture of the client machine. NaCl modules must be run |
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 from the <a class="reference external" href="https://chrome.google.com/webstore/
category/apps">Chrome Web Store (CWS)</a>. Fortunately, work from |
41 Web Store (CWS)</a>. | 42 PNaCl modules can be used to create NaCl modules.</li> |
42 Fortunately, work from PNaCl modules can be used to create NaCl modules.</li> | |
43 </ul> | 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> | 44 <p>These flavors are described in more depth in <a class="reference internal" hr
ef="/native-client/nacl-and-pnacl.html"><em>PNaCl and NaCl</em></a></p> |
45 <div class="left-side"> | 45 <div class="left-side"> |
46 <div class="left-side-inner"> | 46 <div class="left-side-inner"> |
47 <h2>Hello World</h2> | 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 | 48 <div class="big-intro"><p>To jump right in <a class="reference internal" href="/
native-client/devguide/tutorial/tutorial-part1.html"><em>take the tutorial</em><
/a> |
49 application for Portable Native Client (PNaCl). This is a client-side | 49 that walks you through a basic web application for Portable Native Client |
50 application that uses HTML, JavaScript, and a Native Client module written in C+
+.</p> | 50 (PNaCl). This is a client-side application that uses HTML, JavaScript, and a |
| 51 Native Client module written in C++.</p> |
51 </div> | 52 </div> |
52 </div> | 53 </div> |
53 </div> | 54 </div> |
54 <h2>A Little More Advanced</h2> | 55 <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 class="big-intro"><p>If you’ve already got the basics down, you’
;re probably trying to get a real |
| 57 application ready for production. You’re <a class="reference internal" hre
f="/native-client/devguide/devcycle/building.html"><em>building</em></a>, <a cla
ss="reference internal" href="/native-client/devguide/devcycle/debugging.html"><
em>debugging</em></a> |
| 58 or <a class="reference internal" href="/native-client/devguide/distributing.html
"><em>ready to distribute</em></a>.</p> |
56 </div> | 59 </div> |
57 | 60 |
58 <div class="left-side"> | 61 <div class="left-side"> |
59 <div class="left-side-inner"> | 62 <div class="left-side-inner"> |
60 <h2>Nuts and Bolts</h2> | 63 <h2>Nuts and Bolts</h2> |
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> | 64 <div class="big-intro"><p>You’ve been working on a Native Client module fo
r a while now and you’ve run |
| 65 into an arcane problem. You may need to refer to the <a class="reference interna
l" href="/native-client/reference/pnacl-bitcode-abi.html"><em>PNaCl Bitcode |
| 66 Reference</em></a> or the <a class="reference internal" href="/native-client/ref
erence/sandbox_internals/index.html"><em>Sandbox internals</em></a>.</p> |
62 </div> | 67 </div> |
63 </div> | 68 </div> |
64 </div><h2 id="i-want-to-know-everything">I Want to Know Everything</h2> | 69 </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> | 70 <p>So, you like to read now and try later. Start with our <a class="reference in
ternal" href="/native-client/overview.html"><em>Technical Overview</em></a></p> |
66 <div class="big-intro" style="clear: both;"><p>Send us questions, comments, and
feedback: | 71 <div class="big-intro" style="clear: both;"><p>Send us questions, comments, and
feedback: <a class="reference external" href="https://groups.google.com/forum/#!
forum/native-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> | |
68 </div></section> | 72 </div></section> |
69 | 73 |
70 {{/partials.standard_nacl_article}} | 74 {{/partials.standard_nacl_article}} |
OLD | NEW |