Provided by: manpages-es_4.18.1-1_all bug

NOMBRE

       intro - introducción a las llamadas al sistema

DESCRIPCIÓN

       La  sección  2  de este manual describe las llamadas del sistema de Linux. Una llamada del
       sistema es un punto de entrada al núcleo de Linux. En  general,  dichas  llamadas  no  son
       invocadas  directamente  sino  que  la  biblioteca de C incluye funciones que ejecutan los
       pasos requeridos para invocar la llamada del sistema. Esto hace que realizar  una  llamada
       del sistema sea muy similar a invocar una función de una biblioteca cualquiera.

       En  la  mayoría  de los casos, la función del contenedores de la biblioteca de C, no hacen
       nada más que:

       •  copiar argumentos y el número de la llamadas del  sistema  al  lugar  donde  el  núcleo
          espero encontrarlos.

       •  quedarse  en  modo  núcleo,  en  cuyo  caso éste hará la función real de la llamada del
          sistema.

       •  definir errno si la llamada del sistema emite un error al devolver el núcleo la CPU  al
          modo usuario.

       En  algunos  casos, el contenedor de una función puede hacer algo más que eso. Por ejemplo
       ejecutar algún preprocesamiento de los argumentos  antes  de  ponerse  en  modo  núcleo  o
       postprocesamiento de los valores devueltos por la llamada del sistema. En estos casos, las
       páginas de manual de la sección 2 intentan entrar en los pormenores tanto de la API de  la
       librería  C  (en  general  la  de  GNU)  como  de  la  llamada del sistema. En general, la
       DESCRIPCIÓN principal se centra en la interfaz de la  librería  de  C  mientrasla  sección
       NOTAS explica las diferencias con la llamada del sistema.

       Puede encontrar una lista de las llamadas del sistema de Linux en: syscalls(2).

VALOR DEVUELTO

       Cuando  surje  un error, la mayoría de llamadas del sistema devuelven un valor negativo de
       una de las constantes descritas en errno(3). El  contenedor  de  la  función  oculta  este
       detalle:  cuando  una  llamada  del  sistema devuelve un valor negativo, se copia su valor
       absoluto en la variable errno y se devuelve -1 como valor de retorno del contenedor.

       El valor de retorno de una llamada realizada con éxito dependerá de la propia llamada.  La
       mayoría  devuelven  el  valor cero, aunque otras puede devolver otro valor distinto aunque
       finalice con éxito. Los  detalles  particulares  de  cada  llamada  se  describen  en  sus
       respectivas páginas de manual.

       En  algunos  casos,  el  desarrollador  deberá definir una macro de prueba para obtener la
       declaración de una llamada del sistema en el archivo de encabezado definido en la  sección
       SINOPSIS  de  la  página  de  manual.  A  veces  se  requiere que estas macros para probar
       características esté definidas antes de incluir ningún archivo  de  encabezado.  En  estos
       casos,   la   macro   necesaria   se   describe   en   la   página   de  manual.  Consulte
       feature_test_macros(7)  para  más  información  acerca   de   las   macros   para   probar
       características.

ESTÁNDARES

       Algunos términos y abreviaturas se emplean para señalar variantes de UNIX y estándares que
       siguen las llamadas de esta sección. Consulte standards(7).

NOTAS

   Llamadas directas
       En la mayoría de los casos no es necesario invocar una llamada  al  sistema  directamente,
       pero  hay  veces  en  que  la biblioteca C estándar carece de un contenedor con la función
       adecuada. En este caso, el  desarrollador  tendrá  que  invocar  la  llamada  del  sistema
       mediante syscal(2). Antiguamente también podía hacerse mediante macros _syscall explicadas
       en _syscall(2).

   Autores y derechos de autor
       En el encabezado del código fuente de cada página de manual se encuentran  los  datos  del
       autor  de  la  misma y de los derechos de autor. Tenga en cuenta que esa información puede
       ser distinta entre cada página.

VÉASE TAMBIÉN

       _syscall(2), syscall(2), syscalls(2), errno(3), intro(3), capabilities(7), credentials(7),
       feature_test_macros(7), mq_overview(7), path_resolution(7), pipe(7), pty(7),
       sem_overview(7), shm_overview(7), signal(7), socket(7), standards(7), symlink(7),
       system_data_types(7), sysvipc(7), time(7)

TRADUCCIÓN

       La traducción al español de esta página del manual fue creada por Urko Lusa
       <ulusa@lacueva.ddns.org>, Juan Piernas <piernas@ditec.um.es> y Marcos Fouces
       <marcos@debian.org>

       Esta traducción es documentación libre; lea la GNU General Public License Version 3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ o posterior con respecto a las condiciones de
       copyright.  No existe NINGUNA RESPONSABILIDAD.

       Si encuentra algún error en la traducción de esta página del manual, envíe un correo
       electrónico a ⟨debian-l10n-spanish@lists.debian.org⟩.