Un bloc de control al fișierelor (FCB), numit și descriptor de fișier, este un tip de structură de date care este alocat temporar de către un sistem de operare computer pentru a menține starea unui fișier de date care este creat sau manipulat în alt mod. În cele mai multe cazuri, un bloc de control al fișierelor este utilizat pentru a stoca informații de bază despre un fișier, cum ar fi numele, extensia și locația acestuia pe o unitate logică, precum și informații dinamice, cum ar fi adresa curentă din fișierul care este citit. Inițial, un bloc de control al fișierelor era o structură foarte bine definită în anumite sisteme de operare, dar de atunci a devenit un termen mai generic pentru structura folosită pentru a urmări informații despre un fișier gestionat activ.
Un scop important al unui bloc de control al fișierelor este acela de a ajuta sistemul de fișiere să țină evidența stării în care se află fișierul pentru a împiedica diferite operațiuni să încerce să modifice fișierul în moduri conflictuale, cum ar fi citirea dintr-o zonă a fișierului care este în curs de desfășurare. scris la. Structura nu este folosită numai pentru fișierele de date, dar poate fi folosită și pentru a urmări informații despre directoare, deși structura de date este de obicei scurtată pentru a elimina câmpurile inutile, deoarece un director nu poate conține date.
Două sisteme de operare, în special Microsoft® Disk Operating System (MS-DOS) și Programul de control pentru microprocesoare (CP/M), au fost primele sisteme de operare care au folosit o schemă bloc pentru a gestiona fișierele. Aceste sisteme foloseau structuri foarte similare pentru a ajuta la gestionarea fișierelor care erau accesate. Pe măsură ce au fost dezvoltate alte sisteme de operare și sisteme de fișiere, conceptul de bloc a rămas, dar implementarea s-a schimbat și structura datelor a variat foarte mult de la un sistem la altul. Majoritatea sistemelor de operare pentru computere utilizate în 2011 utilizează o anumită formă de bloc de control al fișierelor, în special atunci când se utilizează sisteme de fișiere personalizate pentru hardware amovibil, deși structura de date care este folosită nu este compatibilă cu versiunile anterioare fără emulare și, în general, este mai mare și ascunsă de majoritatea. aplicații de programare la nivel înalt.
În general, un bloc de control al fișierelor conține informații care pot fi modificate în timpul utilizării unui fișier de către sistemul de operare. În afară de nume și locație, sunt menținute indicatorii de memorie către diferite puncte din fișierul în sine. Acest lucru permite citirea și scrierea secvențială, precum și citirea și scrierea cu acces aleatoriu atunci când sunt asociate cu o variabilă din FCB care stochează dimensiunea unei înregistrări cu acces aleatoriu. Permisiunile fișierelor, cum ar fi starea de numai citire sau executabil, sunt de asemenea urmărite. Utilizarea unui FCB oferă, de asemenea, un mecanism pentru a preveni funcționarea a două sau mai multe procese pe același fișier într-un mod imprevizibil, cum ar fi încercarea de a adăuga informații la sfârșitul unui fișier în timp ce același fișier este copiat într-o altă locație.