Llamada al sistema en el sistema operativo (OperaSistema de Control): Qué es, Tipos y Ejemplos
⚡ Resumen inteligente
La llamada al sistema es la interfaz controlada que utiliza un proceso para solicitar servicios del núcleo, como acceso a archivos, control de procesos y comunicación con dispositivos, cambiando de forma segura la CPU del modo de usuario al modo de núcleo privilegiado.

¿Qué es la llamada al sistema? Opera¿Sistema de tinción?
A llamada al sistema Es un mecanismo que proporciona la interfaz entre un proceso y el sistema operativo. Es un método programático en el que un programa informático solicita un servicio del núcleo del sistema operativo.
La llamada al sistema ofrece los servicios del sistema operativo a los programas de usuario a través de API (Interfaz de programación de aplicaciones). Las llamadas al sistema son los únicos puntos de entrada al sistema kernel.
Llamadas al sistema Operating sistema
Ejemplo de llamada al sistema
Por ejemplo, para escribir un programa que lea datos de un archivo y los copie en otro, primero necesita los nombres de los dos archivos: el archivo de entrada y el archivo de salida.
En un sistema interactivo, este tipo de ejecución de programas requiere algunas llamadas al sistema por parte del sistema operativo.
- La primera acción consiste en escribir un mensaje de ayuda en la pantalla.
- El segundo paso consiste en leer, desde el teclado, los caracteres que definen los dos archivos.
¿Cómo funciona la llamada al sistema?
Estos son los pasos para realizar una llamada al sistema en el sistema operativo:
Architectura de la llamada al sistema
Como puede verse en el diagrama de llamadas al sistema anterior:
Paso 1) Los procesos se ejecutan en modo usuario hasta que una llamada al sistema los interrumpe.
Paso 2) Posteriormente, la llamada al sistema se ejecuta en modo kernel según su prioridad.
Paso 3) Una vez finalizada la ejecución de la llamada al sistema, el control vuelve al modo de usuario.
Paso 4) La ejecución de los procesos de usuario se reanuda, pasando entre el modo de usuario y modo kernel según sea necesario.
¿Por qué necesitas llamadas al sistema en el sistema operativo?
Las siguientes son situaciones que requieren llamadas al sistema en el sistema operativo:
- La lectura y escritura de archivos exigen llamadas al sistema.
- Si un sistema de archivos quiere crear o eliminar archivos, se requieren llamadas al sistema.
- Las llamadas al sistema se utilizan para la creación y gestión de nuevos procesos.
- Las conexiones de red necesitan llamadas al sistema para enviar y recibir paquetes.
- El acceso a dispositivos de hardware como un escáner o una impresora requiere una llamada al sistema.
Tipos de llamadas al sistema
Estos son los cinco tipos de llamadas al sistema en los sistemas operativos:
- Control del Proceso
- Gestión de archivos
- Gestión de dispositivos
- Mantenimiento de la información
- Comunicación
Tipos de llamadas al sistema en los sistemas operativos
Control del Proceso
Estas llamadas al sistema realizan tareas como la creación y la terminación de procesos, entre otras.
Funciones:
- Finalizar y abortar
- Cargar y ejecutar
- Crear proceso y finalizar proceso
- Espera y Signal Eventos
- Asignar y liberar memoria
Gestión de archivos
Las llamadas al sistema de administración de archivos manejan trabajos de manipulación de archivos, como crear un archivo, leerlo y escribirlo, etc.
Funciones:
- Crear un archivo
- Borrar archivo
- Abrir y cerrar archivo
- Leer, escribir y reposicionar
- Obtener y establecer atributos de archivo
Gestión de dispositivos
La administración de dispositivos realiza el trabajo de manipulación del dispositivo, como leer desde los buffers del dispositivo, escribir en los buffers del dispositivo, etc.
Funciones:
- Dispositivo de solicitud y liberación
- Conectar o desconectar dispositivos de forma lógica
- Obtener y establecer atributos del dispositivo
Mantenimiento de la información
Maneja información y su transferencia entre el sistema operativo y el programa de usuario.
Funciones:
- Obtener o establecer hora y fecha
- Obtener atributos de proceso y dispositivo
Comunicación
Este tipo de llamadas al sistema se utilizan especialmente para la comunicación entre procesos.
Funciones:
- Crear y eliminar conexiones de comunicación
- Enviar y recibir mensajes
- Ayuda al sistema operativo a transferir información de estado
- Conectar o desconectar dispositivos remotos
Reglas para pasar parámetros para llamadas al sistema
Estas son las reglas generales para pasar parámetros a la llamada al sistema:
- El sistema operativo debe agregar o eliminar parámetros de la pila.
- Los parámetros se pueden pasar en registros.
- Cuando hay más parámetros que registros, estos deben almacenarse en un bloque, y la dirección del bloque debe pasarse en un registro.
Llamadas importantes al sistema utilizadas en el sistema operativo
Espere()
En algunos sistemas, un proceso debe esperar a que otro finalice. Esto ocurre cuando un proceso padre crea un proceso hijo y el padre permanece suspendido hasta que el hijo finaliza.
La suspensión del proceso padre se produce automáticamente mediante una llamada al sistema wait(). Cuando el proceso hijo finaliza su ejecución, el control vuelve al proceso padre.
tenedor()
Los procesos utilizan esta llamada al sistema para crear copias de sí mismos. Con la ayuda de fork(), un proceso padre crea un proceso hijo, y el padre queda suspendido hasta que el proceso hijo se ejecuta.
exec ()
Esta llamada al sistema ejecuta un archivo ejecutable dentro de un proceso que ya está en ejecución, reemplazando al anterior. El identificador del proceso original se mantiene, ya que no se crea un nuevo proceso, pero la pila, los datos, el montón, etc., se reemplazan por el nuevo proceso.
matar()
La llamada al sistema kill() es utilizada por el sistema operativo para enviar una señal de terminación a un proceso, instándolo a finalizar. Sin embargo, una llamada al sistema kill no implica necesariamente la finalización del proceso y puede tener diversos significados.
salida()
La llamada al sistema exit() se utiliza para finalizar la ejecución de un programa. Especialmente en entornos multihilo, esta llamada indica que la ejecución del hilo ha finalizado. El sistema operativo libera los recursos utilizados por el proceso tras la llamada a exit().




