| OLD | NEW |
| 1 {{+bindTo:partials.standard_nacl_article}} | 1 {{+bindTo:partials.standard_nacl_article}} |
| 2 | 2 |
| 3 <section id="technical-overview"> | 3 <section id="technical-overview"> |
| 4 <span id="overview"></span><h1 id="technical-overview"><span id="overview"></spa
n>Technical Overview</h1> | 4 <span id="overview"></span><h1 id="technical-overview"><span id="overview"></spa
n>Technical Overview</h1> |
| 5 <div class="contents local" id="contents" style="display: none"> | 5 <div class="contents local" id="contents" style="display: none"> |
| 6 <ul class="small-gap"> | 6 <ul class="small-gap"> |
| 7 <li><a class="reference internal" href="#why-use-native-client" id="id7">Why use
Native Client?</a></li> | 7 <li><a class="reference internal" href="#why-use-native-client" id="id7">Why use
Native Client?</a></li> |
| 8 <li><a class="reference internal" href="#benefits-of-native-client" id="id8">Ben
efits of Native Client</a></li> | 8 <li><a class="reference internal" href="#benefits-of-native-client" id="id8">Ben
efits of Native Client</a></li> |
| 9 <li><a class="reference internal" href="#common-use-cases" id="id9">Common use c
ases</a></li> | 9 <li><a class="reference internal" href="#common-use-cases" id="id9">Common use c
ases</a></li> |
| 10 <li><p class="first"><a class="reference internal" href="#how-native-client-work
s" id="id10">How Native Client works</a></p> | 10 <li><p class="first"><a class="reference internal" href="#how-native-client-work
s" id="id10">How Native Client works</a></p> |
| 11 <ul class="small-gap"> | 11 <ul class="small-gap"> |
| 12 <li><a class="reference internal" href="#toolchains" id="id11">Toolchains</a></l
i> | 12 <li><a class="reference internal" href="#toolchains" id="id11">Toolchains</a></l
i> |
| 13 <li><a class="reference internal" href="#security" id="id12">Security</a></li> | 13 <li><a class="reference internal" href="#security" id="id12">Security</a></li> |
| 14 <li><a class="reference internal" href="#portability" id="id13">Portability</a><
/li> | 14 <li><a class="reference internal" href="#link-for-pnacl-translator" id="id13">Po
rtability</a></li> |
| 15 </ul> | 15 </ul> |
| 16 </li> | 16 </li> |
| 17 <li><p class="first"><a class="reference internal" href="#structure-of-a-web-app
lication" id="id14">Structure of a web application</a></p> | 17 <li><p class="first"><a class="reference internal" href="#structure-of-a-web-app
lication" id="id14">Structure of a web application</a></p> |
| 18 <ul class="small-gap"> | 18 <ul class="small-gap"> |
| 19 <li><a class="reference internal" href="#pepper-plug-in-api" id="id15">Pepper pl
ug-in API</a></li> | 19 <li><a class="reference internal" href="#pepper-plug-in-api" id="id15">Pepper pl
ug-in API</a></li> |
| 20 </ul> | 20 </ul> |
| 21 </li> | 21 </li> |
| 22 <li><a class="reference internal" href="#where-to-start" id="id16">Where to star
t</a></li> | 22 <li><a class="reference internal" href="#where-to-start" id="id16">Where to star
t</a></li> |
| 23 </ul> | 23 </ul> |
| 24 | 24 |
| (...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 159 interfere with other code running either within the browser or outside it.</li> | 159 interfere with other code running either within the browser or outside it.</li> |
| 160 <li>The NaCl validator statically analyzes code before running it to make sure i
t | 160 <li>The NaCl validator statically analyzes code before running it to make sure i
t |
| 161 only uses code and data patterns that are permitted and safe.</li> | 161 only uses code and data patterns that are permitted and safe.</li> |
| 162 </ul> | 162 </ul> |
| 163 <p>These security measures are in addition to the existing sandbox in the | 163 <p>These security measures are in addition to the existing sandbox in the |
| 164 Chrome browser. The Native Client module always executes in a process with | 164 Chrome browser. The Native Client module always executes in a process with |
| 165 restricted permissions. The only interaction between this process and the | 165 restricted permissions. The only interaction between this process and the |
| 166 outside world is through defined browser interfaces. Because of the | 166 outside world is through defined browser interfaces. Because of the |
| 167 combination of the NaCl sandbox and the Chrome sandbox, we say that | 167 combination of the NaCl sandbox and the Chrome sandbox, we say that |
| 168 Native Client employs a <strong>double sandbox</strong> design.</p> | 168 Native Client employs a <strong>double sandbox</strong> design.</p> |
| 169 <h3 id="portability"><span id="id6"></span>Portability</h3> | 169 <h3 id="link-for-pnacl-translator"><span id="portability"></span><span id="id6">
</span>Portability</h3> |
| 170 <p>Portable Native Client (PNaCl, prounounced “pinnacle”) employs st
ate-of-the-art | 170 <p>Portable Native Client (PNaCl, prounounced “pinnacle”) employs st
ate-of-the-art |
| 171 compiler technology to compile C/C++ source code to a portable bitcode | 171 compiler technology to compile C/C++ source code to a portable bitcode |
| 172 executable (<strong>pexe</strong>). PNaCl bitcode is an OS- and architecture-ind
ependent | 172 executable (<strong>pexe</strong>). PNaCl bitcode is an OS- and architecture-ind
ependent |
| 173 format that can be freely distributed on the web and <a class="reference interna
l" href="#link-nacl-in-web-apps"><em>embedded in web | 173 format that can be freely distributed on the web and <a class="reference interna
l" href="#link-nacl-in-web-apps"><em>embedded in web |
| 174 applications</em></a>.</p> | 174 applications</em></a>.</p> |
| 175 <p>The PNaCl translator is a component embedded in the Chrome browser; its task
is | 175 <p>The PNaCl translator is a component embedded in the Chrome browser; its task
is |
| 176 to run pexe modules. Internally, the translator compiles a pexe to a nexe | 176 to run pexe modules. Internally, the translator compiles a pexe to a nexe |
| 177 (described above), and then executes the nexe within the Native Client sandbox | 177 (described above), and then executes the nexe within the Native Client sandbox |
| 178 as described above. The translator uses intelligent caching to avoid | 178 as described above. The translator uses intelligent caching to avoid |
| 179 re-compiling the pexe if it was previously compiled on the client’s browse
r.</p> | 179 re-compiling the pexe if it was previously compiled on the client’s browse
r.</p> |
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 228 <p>Pepper includes both a <a class="reference internal" href="/native-client/c-a
pi.html"><em>C API</em></a> and a <a class="reference internal" href="/native-cl
ient/cpp-api.html"><em>C++ API</em></a>. | 228 <p>Pepper includes both a <a class="reference internal" href="/native-client/c-a
pi.html"><em>C API</em></a> and a <a class="reference internal" href="/native-cl
ient/cpp-api.html"><em>C++ API</em></a>. |
| 229 The C++ API is a set of bindings written on top of the C API. For additional | 229 The C++ API is a set of bindings written on top of the C API. For additional |
| 230 information about Pepper, see <a class="reference external" href="http://code.go
ogle.com/p/ppapi/wiki/Concepts">Pepper Concepts</a>.</p> | 230 information about Pepper, see <a class="reference external" href="http://code.go
ogle.com/p/ppapi/wiki/Concepts">Pepper Concepts</a>.</p> |
| 231 <h2 id="where-to-start">Where to start</h2> | 231 <h2 id="where-to-start">Where to start</h2> |
| 232 <p>The <a class="reference internal" href="/native-client/quick-start.html"><em>
Quick Start</em></a> document provides links to downloads and | 232 <p>The <a class="reference internal" href="/native-client/quick-start.html"><em>
Quick Start</em></a> document provides links to downloads and |
| 233 documentation to help you get started with developing and distributing Native | 233 documentation to help you get started with developing and distributing Native |
| 234 Client applications.</p> | 234 Client applications.</p> |
| 235 </section> | 235 </section> |
| 236 | 236 |
| 237 {{/partials.standard_nacl_article}} | 237 {{/partials.standard_nacl_article}} |
| OLD | NEW |