Co to jest blok kontroli plików?

Blok kontroli pliku (FCB), zwany także deskryptorem pliku, to rodzaj struktury danych, która jest tymczasowo przydzielana przez system operacyjny komputera w celu utrzymania stanu tworzonego lub w inny sposób modyfikowanego pliku danych. W większości przypadków blok kontroli pliku służy do przechowywania podstawowych informacji o pliku, takich jak jego nazwa, rozszerzenie i lokalizacja na dysku logicznym, a także informacji dynamicznych, takich jak bieżący adres w odczytywanym pliku. Pierwotnie blok kontroli plików był bardzo dobrze zdefiniowaną strukturą w niektórych systemach operacyjnych, ale od tego czasu stał się bardziej ogólnym terminem określającym strukturę używaną do śledzenia informacji o aktywnie obsługiwanym pliku.

Jednym z ważnych celów bloku kontroli pliku jest pomoc systemowi plików w śledzeniu stanu, w jakim znajduje się plik, aby zapobiec próbom modyfikowania pliku przez różne operacje, na przykład odczytywanie z obszaru pliku, który jest aktualnie napisane do. Struktura ta jest używana nie tylko do plików danych, ale może być również używana do śledzenia informacji o katalogach, chociaż struktura danych zwykle jest skracana, aby usunąć niepotrzebne pola, ponieważ katalog nie może zawierać danych.

Dwa systemy operacyjne, a konkretnie Microsoft® Disk Operating System (MS-DOS) i program kontrolny dla mikroprocesorów (CP/M), były pierwszymi systemami operacyjnymi, które używały schematu blokowego do zarządzania plikami. Systemy te wykorzystywały bardzo podobne struktury, aby pomóc w zarządzaniu plikami, do których uzyskano dostęp. W miarę rozwoju innych systemów operacyjnych i systemów plików koncepcja bloku pozostała, ale implementacja uległa zmianie, a struktura danych znacznie się różniła w zależności od systemu. Większość komputerowych systemów operacyjnych używanych w 2011 r. używa jakiejś formy bloku kontroli plików, zwłaszcza w przypadku używania niestandardowych systemów plików dla sprzętu wymiennego, chociaż stosowana struktura danych nie jest zgodna z wcześniejszymi wersjami bez emulacji i ogólnie jest większa i ukryta przed większością aplikacje do programowania wysokiego poziomu.

Ogólnie rzecz biorąc, blok kontroli plików zawiera informacje, które można zmienić podczas korzystania z pliku przez system operacyjny. Oprócz nazwy i lokalizacji utrzymywane są wskaźniki pamięci do różnych punktów w samym pliku. Umożliwia to sekwencyjny odczyt i zapis, a także odczyt i zapis o dostępie swobodnym w połączeniu ze zmienną w FCB, która przechowuje rozmiar rekordu o dostępie swobodnym. Śledzone są również uprawnienia do plików, takie jak status tylko do odczytu lub wykonywalny. Użycie FCB zapewnia również mechanizm zapobiegający działaniu dwóch lub większej liczby procesów na tym samym pliku w nieprzewidywalny sposób, na przykład podczas próby dołączenia informacji na końcu pliku, podczas gdy ten sam plik jest kopiowany do innej lokalizacji.