Che cos'è un blocco controllo file?
Un blocco di controllo file (FCB), chiamato anche descrittore di file, è un tipo di struttura di dati che viene temporaneamente allocata da un sistema operativo del computer per mantenere lo stato di un file di dati che viene creato o altrimenti manipolato. Nella maggior parte dei casi, un blocco di controllo file viene utilizzato per archiviare informazioni di base su un file, come il suo nome, estensione e posizione su un'unità logica, nonché informazioni dinamiche come l'indirizzo corrente all'interno del file che viene letto. Inizialmente, un blocco di controllo dei file era una struttura molto ben definita in alcuni sistemi operativi, ma da allora è diventato un termine più generico per la struttura utilizzata per tenere traccia delle informazioni su un file gestito attivamente. Uno scopo importante di un blocco di controllo file è aiutare il file system a tenere traccia dello stato in cui si trova il file per impedire a diverse operazioni di tentare di modificare il file in modi contrastanti, come la lettura da un'area del file che è attualmente in corso scritto a. La struttura non viene utilizzata solo per i file di dati, ma può anche essere utilizzata per tenere traccia delle informazioni sulle directory, sebbene la struttura dei dati sia generalmente abbreviata per rimuovere campi non necessari, poiché una directory non può contenere dati.
Due sistemi operativi, in particolare il Sistema operativo disco Microsoft® (MS-DOS) e il Programma di controllo per microprocessori (CP / M), sono stati i primi sistemi operativi a utilizzare uno schema di blocchi di controllo file per gestire i file. Questi sistemi utilizzavano strutture molto simili per aiutare a gestire i file a cui si accedeva. Man mano che venivano sviluppati altri sistemi operativi e file system, il concetto di blocco di controllo dei file rimaneva, ma l'implementazione cambiò e la struttura dei dati variava notevolmente da un sistema all'altro. La maggior parte dei sistemi operativi in uso nel 2011 utilizza una qualche forma di blocco di controllo dei file, soprattutto quando si utilizzano file system personalizzati per l'hardware rimovibile, sebbene la struttura dei dati utilizzata non sia compatibile con le versioni precedenti senza emulazione e generalmente sia più grande e nascosta dalla maggior parte applicazioni di programmazione di alto livello.
In generale, un blocco di controllo file contiene informazioni che possono essere modificate durante l'uso di un file dal sistema operativo. Oltre al nome e alla posizione, vengono mantenuti i puntatori di memoria a punti diversi all'interno del file stesso. Ciò consente la lettura e la scrittura sequenziale, nonché la lettura e la scrittura ad accesso casuale se accoppiate a una variabile nell'FCB che memorizza le dimensioni di un record di accesso casuale. Vengono inoltre monitorate le autorizzazioni dei file, come lo stato di sola lettura o eseguibile. L'uso di un FCB fornisce anche un meccanismo per impedire a due o più processi di operare sullo stesso file in modo imprevedibile, come tentare di aggiungere informazioni alla fine di un file mentre lo stesso file viene copiato in un'altra posizione.