diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2023-03-01 03:01:08 +0300 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2023-03-01 03:01:08 +0300 |
commit | b1f1382a110bca1ef52234e889246a90f9a0d69b (patch) | |
tree | a512a4dc6e917f63ac8114e1c4f43eb807a9d013 /Documentation/translations | |
parent | e492250d5252635b6c97d52eddf2792ec26f1ec1 (diff) | |
parent | 901578a45950bcc4d5055a24e9016d61b84dc1a2 (diff) | |
download | linux-b1f1382a110bca1ef52234e889246a90f9a0d69b.tar.xz |
Merge tag 'docs-6.3-2' of git://git.lwn.net/linux
Pull Documentation stragglers from Jonathan Corbet:
"A handful of documentation patches that were ready before the merge
window, but which I didn't get merged for the first round:
- A recommendation from Thorsten (also akpm) on use of Link tags to
point out problem reports
- Some front-page formatting tweaks
- Another Spanish translation
- One typo(ish) fix"
* tag 'docs-6.3-2' of git://git.lwn.net/linux:
docs: recommend using Link: whenever using Reported-by:
Documentation: front page: use recommended heading adornments
docs/sp_SP: Add process programming-language translation
docs: locking: refer to the actual existing config names
Diffstat (limited to 'Documentation/translations')
-rw-r--r-- | Documentation/translations/sp_SP/process/index.rst | 1 | ||||
-rw-r--r-- | Documentation/translations/sp_SP/process/programming-language.rst | 53 |
2 files changed, 54 insertions, 0 deletions
diff --git a/Documentation/translations/sp_SP/process/index.rst b/Documentation/translations/sp_SP/process/index.rst index c978a8132ce1..0f1e131b3bb1 100644 --- a/Documentation/translations/sp_SP/process/index.rst +++ b/Documentation/translations/sp_SP/process/index.rst @@ -17,3 +17,4 @@ kernel-enforcement-statement email-clients magic-number + programming-language diff --git a/Documentation/translations/sp_SP/process/programming-language.rst b/Documentation/translations/sp_SP/process/programming-language.rst new file mode 100644 index 000000000000..301f525372d8 --- /dev/null +++ b/Documentation/translations/sp_SP/process/programming-language.rst @@ -0,0 +1,53 @@ +.. include:: ../disclaimer-sp.rst + +:Original: :ref:`Documentation/process/programming-language.rst <programming_language>` +:Translator: Carlos Bilbao <carlos.bilbao@amd.com> + +.. _sp_programming_language: + +Lenguaje de programación +======================== + +El kernel está escrito en el lenguaje de programación C [sp-c-language]_. +Más concretamente, el kernel normalmente se compila con ``gcc`` [sp-gcc]_ +bajo ``-std=gnu11`` [sp-gcc-c-dialect-options]_: el dialecto GNU de ISO C11. +``clang`` [sp-clang]_ también es compatible, consulte los documentos en +:ref:`Building Linux with Clang/LLVM <kbuild_llvm>`. + +Este dialecto contiene muchas extensiones del lenguaje [sp-gnu-extensions]_, +y muchos de ellos se usan dentro del kernel de forma habitual. + +Hay algo de soporte para compilar el núcleo con ``icc`` [sp-icc]_ para varias +de las arquitecturas, aunque en el momento de escribir este texto, eso no +está terminado y requiere parches de terceros. + +Atributos +--------- + +Una de las comunes extensiones utilizadas en todo el kernel son los atributos +[sp-gcc-attribute-syntax]_. Los atributos permiten introducir semántica +definida por la implementación a las entidades del lenguaje (como variables, +funciones o tipos) sin tener que hacer cambios sintácticos significativos +al idioma (por ejemplo, agregar una nueva palabra clave) [sp-n2049]_. + +En algunos casos, los atributos son opcionales (es decir, hay compiladores +que no los admiten pero de todos modos deben producir el código adecuado, +incluso si es más lento o no realiza tantas comprobaciones/diagnósticos en +tiempo de compilación). + +El kernel define pseudo-palabras clave (por ejemplo, ``__pure``) en lugar +de usar directamente la sintaxis del atributo GNU (por ejemplo, +``__attribute__((__pure__))``) con el fin de detectar cuáles se pueden +utilizar y/o acortar el código. + +Por favor consulte ``include/linux/compiler_attributes.h`` para obtener +más información. + +.. [sp-c-language] http://www.open-std.org/jtc1/sc22/wg14/www/standards +.. [sp-gcc] https://gcc.gnu.org +.. [sp-clang] https://clang.llvm.org +.. [sp-icc] https://software.intel.com/en-us/c-compilers +.. [sp-gcc-c-dialect-options] https://gcc.gnu.org/onlinedocs/gcc/C-Dialect-Options.html +.. [sp-gnu-extensions] https://gcc.gnu.org/onlinedocs/gcc/C-Extensions.html +.. [sp-gcc-attribute-syntax] https://gcc.gnu.org/onlinedocs/gcc/Attribute-Syntax.html +.. [sp-n2049] http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2049.pdf |