Un bloque de control de archivos (FCB), también llamado descriptor de archivos, es un tipo de estructura de datos que un sistema operativo de computadora asigna temporalmente para mantener el estado de un archivo de datos que se está creando o manipulando de otra manera. En la mayoría de los casos, un bloque de control de archivos se utiliza para almacenar información básica sobre un archivo, como su nombre, extensión y ubicación en una unidad lógica, así como información dinámica como la dirección actual dentro del archivo que se está leyendo. Originalmente, un bloque de control de archivos era una estructura muy bien definida en ciertos sistemas operativos, pero desde entonces se ha convertido en un término más genérico para la estructura utilizada para rastrear información sobre un archivo manejado activamente.
Un propósito importante de un bloque de control de archivos es ayudar al sistema de archivos a realizar un seguimiento del estado en el que se encuentra el archivo para evitar que diferentes operaciones intenten modificar el archivo de formas conflictivas, como leer desde un área del archivo que se está actualizando. escrito a. La estructura no solo se usa para archivos de datos, sino que también se puede usar para rastrear información sobre directorios, aunque la estructura de datos generalmente se acorta para eliminar campos innecesarios, porque un directorio no puede contener datos.
Dos sistemas operativos, específicamente Microsoft® Disk Operating System (MS-DOS) y el Programa de control para microprocesadores (CP / M), fueron los primeros sistemas operativos en utilizar un esquema de bloques para administrar archivos. Estos sistemas utilizaron estructuras muy similares para ayudar a administrar los archivos a los que se estaba accediendo. A medida que se desarrollaron otros sistemas operativos y sistemas de archivos, el concepto de bloque permaneció, pero la implementación cambió y la estructura de datos varió mucho de un sistema a otro. La mayoría de los sistemas operativos de computadora en uso en 2011 usan alguna forma de bloque de control de archivos, especialmente cuando se usan sistemas de archivos personalizados para hardware extraíble, aunque la estructura de datos que se emplea no es compatible con versiones anteriores sin emulación y generalmente es más grande y está oculta a la mayoría de los usuarios. aplicaciones de programación de alto nivel.
En términos generales, un bloque de control de archivos contiene información que se puede cambiar durante el uso de un archivo por parte del sistema operativo. Aparte del nombre y la ubicación, se mantienen los indicadores de memoria a diferentes puntos dentro del archivo. Esto permite la lectura y escritura secuenciales, así como la lectura y escritura de acceso aleatorio cuando se combina con una variable en el FCB que almacena el tamaño de un registro de acceso aleatorio. También se realiza un seguimiento de los permisos de archivos, como el estado de solo lectura o ejecutable. El uso de un FCB también proporciona un mecanismo para evitar que dos o más procesos operen en el mismo archivo de una manera impredecible, como intentar agregar información al final de un archivo mientras ese mismo archivo se está copiando en otra ubicación.