Llamada al sistema en el sistema operativo (OperaSistema de Control): Qué es, Tipos y Ejemplos
¿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.

Ejemplo de llamada al sistema
Por ejemplo, si necesitamos escribir el código de un programa para leer datos de un archivo, copiar esos datos en otro archivo. La primera información que requiere el programa es el nombre de los dos archivos, los archivos de entrada y salida.
En un sistema interactivo, este tipo de ejecución de programa requiere algunas llamadas al sistema por parte del sistema operativo.
- La primera llamada es escribir un mensaje de aviso en la pantalla.
- En segundo lugar, leer desde el teclado los caracteres que definen los dos archivos.
¿Cómo funciona la llamada al sistema?
Estos son los pasos para la llamada al sistema en el sistema operativo:
Como puede ver en el diagrama de ejemplo de llamada al sistema anterior.
Paso 1) Los procesos se ejecutan en el modo de usuario hasta el momento en que una llamada al sistema lo interrumpe.
Paso 2) Después de eso, la llamada al sistema se ejecuta en modo kernel de forma prioritaria.
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 reanudó en Modo kernel.
¿Por qué necesitas llamadas al sistema en el sistema operativo?
Las siguientes son situaciones que necesitan llamadas del 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 escáner, impresora, necesita una llamada al sistema.
Tipos de llamadas al sistema
Estos son los cinco tipos de llamadas al sistema en el sistema operativo:
- Control de procesos
- Gestión de archivos
- Gestión de dispositivos
- Mantenimiento de la información
- Comunicaciones
Control de procesos
Estas llamadas al sistema realizan la tarea de creación de procesos, finalización de procesos, etc.
Funciones:
- Finalizar y cancelar
- 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/desconectar dispositivos lógicamente
- Obtener y configurar 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
Estos tipos de llamadas al sistema se utilizan especialmente para comunicaciones entre procesos.
Funciones:
- Crear, eliminar conexiones de comunicaciones.
- Enviar, recibir mensaje
- Ayuda al sistema operativo a transferir información de estado
- Conectar o desconectar dispositivos remotos
Reglas para pasar parámetros para llamadas al sistema
A continuación se detallan reglas generales comunes para pasar parámetros a la llamada al sistema:
- El sistema operativo debe insertar o extraer los parámetros de la pila.
- Los parámetros se pueden pasar en registros.
- Cuando hay más parámetros que registros, se deben almacenar en un bloque y la dirección del bloque se debe pasar como parámetro a un registro.
Llamadas importantes al sistema utilizadas en el sistema operativo
Espere()
En algunos sistemas, un proceso necesita esperar a que otro proceso complete su ejecución. Este tipo de situación ocurre cuando un proceso padre crea un proceso hijo y la ejecución del proceso padre permanece suspendida hasta que se ejecuta su proceso hijo.
La suspensión del proceso principal ocurre automáticamente con una llamada al sistema wait(). Cuando el proceso hijo finaliza la ejecución, el control regresa al proceso padre.
tenedor()
Los procesos utilizan esta llamada al sistema para crear procesos que son una copia de sí mismos. Con la ayuda de este sistema, llamar al proceso principal crea un proceso secundario y la ejecución del proceso principal se suspenderá hasta que se ejecute el proceso secundario.
exec ()
Esta llamada al sistema se ejecuta cuando un archivo ejecutable en el contexto de un proceso ya en ejecución reemplaza el archivo ejecutable anterior. Sin embargo, el identificador del proceso original permanece ya que no se construye un nuevo proceso, sino que la pila, los datos, el encabezado, los datos, etc. son reemplazados por el nuevo proceso.
matar()
El sistema operativo utiliza la llamada al sistema kill() para enviar una señal de terminación a un proceso que insta al proceso a salir. Sin embargo, una llamada al sistema de finalización no significa necesariamente finalizar el proceso y puede tener varios significados.
salida()
La llamada al sistema exit() se utiliza para finalizar la ejecución del programa. Especialmente en un entorno de subprocesos múltiples, esta llamada define que la ejecución del subproceso está completa. El sistema operativo recupera recursos que fueron utilizados por el proceso después del uso de la llamada al sistema exit().
Resum
Categorías | Windows | Unix |
---|---|---|
control de procesos | CrearProceso () ExitProcess () WaitForSingleObject () |
tenedor() salida() Espere() |
Manipulación del dispositivo | Establecer modo consola() LeerConsola() Consola de escritura() |
loctl() leer() escribir() |
Manipulación de archivos | CreateFile () ReadFile () WriteFile () Cerrar la manija () |
Abierto() Leer() escribir() ¡cerca!) |
Mantenimiento de la información | Obtener ID de proceso actual() Establecer temporizador() Dormir () |
getpid () alarma() dormir () |
Comunicación | CreatePipe () CreateFileMapping () VistaMapaDeArchivo() |
Tubo() shm_open () mmap () |
Protection | Establecer seguridad de archivo() InicializarSeguridadDescripto() Establecer seguridadDescripto grupo () |
Mod() máscara() Chown() |