OLD | NEW |
1 ########################## | 1 ########################## |
2 Frequently Asked Questions | 2 Frequently Asked Questions |
3 ########################## | 3 ########################## |
4 | 4 |
5 .. contents:: | 5 .. contents:: |
6 :local: | 6 :local: |
7 :backlinks: none | 7 :backlinks: none |
8 :depth: 2 | 8 :depth: 2 |
9 | 9 |
10 This document answers some frequently asked questions about Native | 10 This document answers some frequently asked questions about Native |
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
194 Native Client is completely open: the executable format is open and the | 194 Native Client is completely open: the executable format is open and the |
195 `source code is open <https://code.google.com/p/nativeclient/>`_. Right | 195 `source code is open <https://code.google.com/p/nativeclient/>`_. Right |
196 now the Native Client project is in its early stages, so it's premature | 196 now the Native Client project is in its early stages, so it's premature |
197 to consider Native Client for standardization. | 197 to consider Native Client for standardization. |
198 | 198 |
199 We consistenly try to document our design and implementation and hope to | 199 We consistenly try to document our design and implementation and hope to |
200 standardize Portable Native Client when it gains more traction. A good | 200 standardize Portable Native Client when it gains more traction. A good |
201 example is our :doc:`PNaCl bitcode reference manual | 201 example is our :doc:`PNaCl bitcode reference manual |
202 <reference/pnacl-bitcode-abi>`. | 202 <reference/pnacl-bitcode-abi>`. |
203 | 203 |
| 204 How can I contribute to Native Client? |
| 205 -------------------------------------- |
| 206 |
| 207 Read about :doc:`contributor ideas <reference/ideas>`. |
| 208 |
204 What are the supported instruction set architectures? | 209 What are the supported instruction set architectures? |
205 ----------------------------------------------------- | 210 ----------------------------------------------------- |
206 | 211 |
207 Portable Native Client uses an architecture-independent format (the | 212 Portable Native Client uses an architecture-independent format (the |
208 ``.pexe``) which can currently be translated to execute on processors | 213 ``.pexe``) which can currently be translated to execute on processors |
209 with the x86-32, x86-64, and ARM instruction set architectures, as well | 214 with the x86-32, x86-64, and ARM instruction set architectures, as well |
210 as experimental support for MIPS. As new architectures come along and | 215 as experimental support for MIPS. As new architectures come along and |
211 become popular we expect Portable Native Client to support them without | 216 become popular we expect Portable Native Client to support them without |
212 developers having to recompile their code. | 217 developers having to recompile their code. |
213 | 218 |
(...skipping 20 matching lines...) Expand all Loading... |
234 as well as to compile more languages to LLVM's intermediate representation | 239 as well as to compile more languages to LLVM's intermediate representation |
235 (e.g. support Halide_, Haskell with GHC_ or support Fortran with flang_), or | 240 (e.g. support Halide_, Haskell with GHC_ or support Fortran with flang_), or |
236 transpile languages to C/C++ (source-to-source compilation). Even JavaScript is | 241 transpile languages to C/C++ (source-to-source compilation). Even JavaScript is |
237 supported by compiling V8_ to target PNaCl. | 242 supported by compiling V8_ to target PNaCl. |
238 | 243 |
239 The PNaCl toolchain is built on LLVM and can therefore generate code from | 244 The PNaCl toolchain is built on LLVM and can therefore generate code from |
240 languages such as Rust_, Go_, or Objective-C, but there may still be a few rough | 245 languages such as Rust_, Go_, or Objective-C, but there may still be a few rough |
241 edges. | 246 edges. |
242 | 247 |
243 If you're interested in getting other languages working, please contact the | 248 If you're interested in getting other languages working, please contact the |
244 Native Client team by way of the native-client-discuss_ mailing list. | 249 Native Client team by way of the native-client-discuss_ mailing list, and read |
| 250 through :doc:`contributor ideas <reference/ideas>`. |
245 | 251 |
246 Do you only support Chrome? What about other browsers? | 252 Do you only support Chrome? What about other browsers? |
247 ------------------------------------------------------ | 253 ------------------------------------------------------ |
248 | 254 |
249 We aim to support multiple browsers. However, a number of features that | 255 We aim to support multiple browsers. However, a number of features that |
250 we consider requirements for a production-quality system that keeps the | 256 we consider requirements for a production-quality system that keeps the |
251 user safe are difficult to implement without help from the | 257 user safe are difficult to implement without help from the |
252 browser. Specific examples are an out-of-process plugin architecture and | 258 browser. Specific examples are an out-of-process plugin architecture and |
253 appropriate interfaces for integrated 3D graphics. We have worked | 259 appropriate interfaces for integrated 3D graphics. We have worked |
254 closely with Chromium developers to deliver these features and we are | 260 closely with Chromium developers to deliver these features and we are |
(...skipping 188 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
443 proxying OS functionality or emulating UNIX system calls. For example, | 449 proxying OS functionality or emulating UNIX system calls. For example, |
444 Native Client provides an ``mmap()`` system call that behaves much like | 450 Native Client provides an ``mmap()`` system call that behaves much like |
445 the standard UNIX ``mmap()`` system call. | 451 the standard UNIX ``mmap()`` system call. |
446 | 452 |
447 Is my favorite third-party library available for Native Client? | 453 Is my favorite third-party library available for Native Client? |
448 --------------------------------------------------------------- | 454 --------------------------------------------------------------- |
449 | 455 |
450 Google has ported several third-party libraries to Native Client; such libraries | 456 Google has ported several third-party libraries to Native Client; such libraries |
451 are available in the naclports_ project. We encourage you to contribute | 457 are available in the naclports_ project. We encourage you to contribute |
452 libraries to naclports, and/or to host your own ported libraries, and to let the | 458 libraries to naclports, and/or to host your own ported libraries, and to let the |
453 team know about it on native-client-discuss_ when you do. | 459 team know about it on native-client-discuss_ when you do. You can also read |
| 460 through :doc:`contributor ideas <reference/ideas>` to find ideas of new projects |
| 461 to port. |
454 | 462 |
455 Do all the files in an application need to be served from the same domain? | 463 Do all the files in an application need to be served from the same domain? |
456 -------------------------------------------------------------------------- | 464 -------------------------------------------------------------------------- |
457 | 465 |
458 The ``.nmf``, and ``.nexe`` or ``.pexe`` files must either be served from the | 466 The ``.nmf``, and ``.nexe`` or ``.pexe`` files must either be served from the |
459 same origin as the embedding page or an origin that has been configured | 467 same origin as the embedding page or an origin that has been configured |
460 correctly using CORS_. | 468 correctly using CORS_. |
461 | 469 |
462 For applications installed from the Chrome Web Store the Web Store manifest | 470 For applications installed from the Chrome Web Store the Web Store manifest |
463 must include the correct, verified domain of the embedding page. | 471 must include the correct, verified domain of the embedding page. |
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
587 .. _Rust: http://www.rust-lang.org/ | 595 .. _Rust: http://www.rust-lang.org/ |
588 .. _Go: https://golang.org | 596 .. _Go: https://golang.org |
589 .. _native-client-discuss: https://groups.google.com/group/native-client-discuss | 597 .. _native-client-discuss: https://groups.google.com/group/native-client-discuss |
590 .. _deprecated in Chrome: http://blog.chromium.org/2013/09/saying-goodbye-to-our
-old-friend-npapi.html | 598 .. _deprecated in Chrome: http://blog.chromium.org/2013/09/saying-goodbye-to-our
-old-friend-npapi.html |
591 .. _OpenGL ES 2.0: https://www.khronos.org/opengles/ | 599 .. _OpenGL ES 2.0: https://www.khronos.org/opengles/ |
592 .. _GLES2 file: https://code.google.com/p/chromium/codesearch#chromium/src/ppapi
/lib/gl/gles2/gles2.c | 600 .. _GLES2 file: https://code.google.com/p/chromium/codesearch#chromium/src/ppapi
/lib/gl/gles2/gles2.c |
593 .. _Google Chrome privacy policy: https://www.google.com/chrome/intl/en/privacy.
html | 601 .. _Google Chrome privacy policy: https://www.google.com/chrome/intl/en/privacy.
html |
594 .. _Google Chrome Terms of Service: https://www.google.com/chrome/intl/en/eula_t
ext.html | 602 .. _Google Chrome Terms of Service: https://www.google.com/chrome/intl/en/eula_t
ext.html |
595 .. _naclports: https://code.google.com/p/naclports | 603 .. _naclports: https://code.google.com/p/naclports |
596 .. _CORS: http://en.wikipedia.org/wiki/Cross-origin_resource_sharing | 604 .. _CORS: http://en.wikipedia.org/wiki/Cross-origin_resource_sharing |
OLD | NEW |