stringtranslate.com

cerrar (llamada al sistema)


Una llamada de cierre del sistema es una llamada del sistema utilizada para cerrar un descriptor de archivo por el núcleo . Para la mayoría de los sistemas de archivos , un programa finaliza el acceso a un archivo en un sistema de archivos utilizando la llamada de cierre del sistema. Esto vacía los búferes de archivos, actualiza los metadatos del archivo , que pueden incluir un indicador de fin de archivo en los datos; desasigna recursos asociados con el archivo (incluido el descriptor de archivo ) y actualiza la tabla de archivos en uso de todo el sistema. Algunos lenguajes de programación mantienen una estructura de datos de archivos abiertos por su biblioteca de tiempo de ejecución y pueden cerrarse cuando el programa finaliza. Esta práctica se conoce como adquisición de recursos en inicialización (RAII). Algunos sistemas operativos invocarán la llamada closeal sistema en los archivos que tiene un programa si este finaliza. Algunos sistemas operativos invocarán la closellamada al sistema como parte de una recuperación del sistema operativo como resultado de una falla del sistema.

Definición de POSIX de la biblioteca C

La llamada de cierre está estandarizada por la especificación POSIX

int close ( int archivos ); int fclose ( ARCHIVO * flujo );      

La función devuelve cero para indicar que el archivo se cerró correctamente. Si se produce algún error, se devuelve un valor de -1 y se configura errno de forma adecuada.

Los errores que pueden ocurrir incluyen:

EBADF
El argumento proporcionado no era un descriptor de archivo válido
EINTR
La llamada de función fue interrumpida por una señal
EIO
Se produjo un error de E/S

Referencias

Enlaces externos