System operacyjny - system plików
Plik
Plik to nazwany zbiór powiązanych informacji, który jest zapisywany w pamięci dodatkowej, takiej jak dyski magnetyczne, taśmy magnetyczne i dyski optyczne. Ogólnie plik to sekwencja bitów, bajtów, wierszy lub rekordów, których znaczenie jest określone przez twórcę pliku i użytkownika.
Struktura plików
Struktura plików powinna być zgodna z wymaganym formatem zrozumiałym dla systemu operacyjnego.
Plik ma określoną strukturę zgodnie z jego typem.
Plik tekstowy to sekwencja znaków zorganizowana w linie.
Plik źródłowy to sekwencja procedur i funkcji.
Plik obiektowy to sekwencja bajtów zorganizowana w bloki, które są zrozumiałe dla maszyny.
Gdy system operacyjny definiuje różne struktury plików, zawiera również kod obsługujący tę strukturę plików. Unix, MS-DOS obsługują minimalną liczbę struktur plików.
Typ pliku
Typ pliku odnosi się do zdolności systemu operacyjnego do rozróżniania różnych typów plików, takich jak pliki tekstowe, pliki źródłowe, pliki binarne itp. Wiele systemów operacyjnych obsługuje wiele typów plików. Systemy operacyjne, takie jak MS-DOS i UNIX, mają następujące typy plików -
Zwykłe pliki
- Są to pliki zawierające informacje o użytkowniku.
- Mogą one zawierać tekst, bazy danych lub program wykonywalny.
- Użytkownik może wykonywać różne operacje na takich plikach, takie jak dodawanie, modyfikowanie, usuwanie, a nawet usuwanie całego pliku.
Pliki katalogu
- Te pliki zawierają listę nazw plików i inne informacje związane z tymi plikami.
Pliki specjalne
- Te pliki są również nazywane plikami urządzeń.
- Pliki te reprezentują urządzenia fizyczne, takie jak dyski, terminale, drukarki, sieci, napęd taśmowy itp.
Te pliki są dwojakiego rodzaju -
Character special files - dane przetwarzane są znak po znaku, tak jak w przypadku terminali czy drukarek.
Block special files - dane przetwarzane są w blokach, jak w przypadku dysków i taśm.
Mechanizmy dostępu do plików
Mechanizm dostępu do plików odnosi się do sposobu, w jaki można uzyskać dostęp do rekordów pliku. Dostęp do plików można uzyskać na kilka sposobów -
- Dostęp sekwencyjny
- Dostęp bezpośredni / losowy
- Indeksowany dostęp sekwencyjny
Dostęp sekwencyjny
Dostęp sekwencyjny to taki, w którym dostęp do rekordów odbywa się w określonej kolejności, tj. Informacje w pliku są przetwarzane po kolei, jeden rekord po drugim. Ta metoda dostępu jest najbardziej prymitywna. Przykład: kompilatory zwykle uzyskują dostęp do plików w ten sposób.
Dostęp bezpośredni / losowy
Organizacja plików o swobodnym dostępie zapewnia bezpośredni dostęp do rekordów.
Każdy rekord ma swój własny adres w pliku, za pomocą którego można uzyskać bezpośredni dostęp do odczytu lub zapisu.
Zapisy nie muszą znajdować się w żadnej kolejności w pliku i nie muszą znajdować się w sąsiednich lokalizacjach na nośniku pamięci.
Indeksowany dostęp sekwencyjny
- Mechanizm ten jest zbudowany na zasadzie dostępu sekwencyjnego.
- Dla każdego pliku tworzony jest indeks zawierający wskaźniki do różnych bloków.
- Indeks jest przeszukiwany sekwencyjnie, a jego wskaźnik jest używany do bezpośredniego dostępu do pliku.
Przydział przestrzeni
Pliki są przydzielane przestrzeni dyskowej przez system operacyjny. Systemy operacyjne są wdrażane według trzech głównych sposobów przydzielania miejsca na dysku do plików.
- Ciągła alokacja
- Powiązana alokacja
- Alokacja indeksowana
Ciągła alokacja
- Każdy plik zajmuje ciągłą przestrzeń adresową na dysku.
- Przydzielony adres dysku jest uporządkowany liniowo.
- Łatwe do wdrożenia.
- Fragmentacja zewnętrzna jest głównym problemem w przypadku tego rodzaju techniki alokacji.
Powiązana alokacja
- Każdy plik zawiera listę łączy do bloków dyskowych.
- Katalog zawiera link / wskaźnik do pierwszego bloku pliku.
- Brak zewnętrznej fragmentacji
- Skutecznie używany w pliku sekwencyjnego dostępu.
- Nieskuteczne w przypadku pliku z bezpośrednim dostępem.
Alokacja indeksowana
- Zapewnia rozwiązania problemów związanych z ciągłą i połączoną alokacją.
- Tworzony jest blok indeksu zawierający wszystkie wskaźniki do plików.
- Każdy plik ma swój własny blok indeksu, który przechowuje adresy miejsca na dysku zajmowanego przez plik.
- Katalog zawiera adresy bloków indeksowych plików.