Systemy Operacyjne : Wejście-Wyjście : Obsługa plików specjalnych
Dariusz Jabłonowski
Pliki specjalne(ang: device special file)
są identyfikowane przez parę liczb:
- numer nadrzędny (ang: major number) - identyfikuje typ urządzenia
- numer podrzędny (ang: minor number) - identyfikuje konkretny obiekt
danego typu.
Dla wszystkich urządzeń danego typu (tzn. o takiej samej liczbie nadrzędnej)
istnieje jeden, wspólny, program obsługi tego typu urządzeń.
Aby dodać nowe urządzenie należy utworzyć plik specjalny (programem mknod)
oraz umieścić program obsługi tego urządzenia albo w jądrze systemu, albo
w postaci modułu.
Ze względu na rodzaj urządzenia rozróżnia się trzy typy plików specjalnych:
- znakowe
- blokowe
- sieciowe.
Podział ten jest uwarunkowany sposobem komunikacji z urządzeniem.
-
Urządzenia znakowe
(ang: char devices)
Zapis i odczyt odbywa się bez buforowania, jednostką jest jeden bajt.
Przykład: mysz (/dev/ttyS0 , /dev/psaux)
-
Urządzenia blokowe
(ang: block devices)
Zapis i odczyt blokowy. Rozmiar bloku to zazwyczaj 512 albo 1024 bajty.
Zazwyczaj dostęp przez bufor (cache). Dostęp do danych jest wolny, tzn.
można odczytywać i zapisywać dane do każdego miejsca w dowolnej kolejności.
Zaleca się bardziej użycia odpowiedniego systemu plików, niż
własnego dostępu do obszaru danych.
Przykład: partycja na dysku (/dev/hdb3)
-
Urządzenia sieciowe
(ang: net devices)
również posiadają pliki specjalne, lecz w odróżnieniu do plików
znakowych i blokowych są one tworzone w momencie inicjalizacji sieci
np. w momencie bootowania systemu.
Dostęp przez gniazda (ang: BSD socket interface)
oraz podsystemu sieci (ang: Networking subsystem)
Spis treści |
Wstęp |
Obsługa tablic rozdzielczych |
Podprogram obsługi urządzenia
© 2001 Dariusz Jabłonowski