Zarządzanie plikami i katalogami

Transkrypt

Zarządzanie plikami i katalogami
Instrukcja laboratoryjna
Systemy operacyjne
sem. 1
Ćwiczenie czwarte (dwa zajęcia)
Temat: Zarządzanie plikami i katalogami w systemie DOS
Opracował:
mgr inż. Arkadiusz Chrobot
1. Wstęp
Informacje zgromadzone w pamięci głównej systemu komputerowego są ulotne,
tzn. po wyłączeniu zasilania ulegają zniszczeniu. Istotne dane, które chcemy
zachować powinny być umieszczane w innej pamięci, pozwalającej przechowywać je w sposób trwały. Taką pamięcią jest pamięć masowa. Jest ona zrealizowana w postaci urządzeń fizycznych, które różnią się zarówno budową, jak
i sposobem obsługi (np. dyski optyczne, dyski magnetyczne, pamięci EEPROM,
taśmy magnetyczne). Ważnym jest, aby informacje przechowywane na tych
urządzeniach były osiągalne w ten sam sposób dla procesów użytkownika, dlatego w systemach operacyjnych zdefiniowany jest abstrakcyjny typ danych nazywany plikiem lub zbiorem (ang. file). Pliki mogą być przechowywane zarówno
w pamięci głównej, jaki i w pamięci masowej. W zależności od woli ich twórcy
mogą przechowywać dane w ściśle określony sposób, lub mogą mieć swobodną
strukturę. Pod względem sposobu dostępu dzielimy pliki na sekwencyjne
i o dostępie swobodnym. Zbiory mogą być powiązane z urządzeniami wejścia –
wyjścia i służyć do komunikacji z nimi. Ponieważ w systemie może istnieć duża
ilość plików, konieczny jest jakiś sposób ich porządkowania. Rozwiązania tego
problemu dostarczają katalogi. Katalog jest specjalnym zbiorem, którego zadaniem jest przechowywanie informacji o innych plikach. System DOS dostarcza
dwóch rodzajów obsługi plików. Pierwszy z nich jest zaszłością z systemu CP/M
i bazuje na blokach opisu pliku, drugi – częściej wykorzystywany, jest oparty
o tzw. uchwyty. Funkcje systemowe dotyczące obsługi plików, to między innymi: otwieranie, pisanie, czytanie, zmiana położenia wskaźnika i zamykanie pliku. Podobnie jak większość współczesnych systemów operacyjnych DOS pozwala posługiwać się katalogami, które są zorganizowane w postaci drzewa.
Pierwsza pozycja katalogu jest dowiązaniem do samego siebie (.). Druga jest dowiązaniem do katalogu znajdującego się wyżej w hierarchii (..). Kolejne opisują
pliki należące do danego katalogu. Podobnie jak w przypadku plików istnieją
w systemie funkcje związane z obsługą katalogów: zakładanie katalogu,
usuwanie katalogu, zmiana katalogu roboczego, odnajdywanie pierwszej pozycji
w katalogu (ang. find first), odnajdywanie kolejnej pozycji w katalogu (ang. find
next), itp.
Więcej informacji w książce „DOS 5 od środka” , rozdział 10.
2. Zadania
Na pierwszych zajęciach należy wykonać w całości zadanie 1 i rozpocząć
realizację zadania 2. Rozwiązując zadanie 2 można wstępnie napisać program
w Pascalu używając procedur FindFirst i FindNext, a potem napisać własne
2
wersje tych procedur, które będą wywoływać funkcje systemowe. W obu
programach należy pamiętać o obsłudze wyjątków, które mogą zwrócić
wywołania systemowe.
1. [2 punktów] Napisz program, który wyświetli na ekranie i zapisze do
stworzonego przez siebie pliku zawartość innego pliku tekstowego.
2. [8 punktów] Napisz program, który wyświetli rekurencyjnie pliki i katalogi poczynając od bieżącego katalogu.1
1 Proszę przypomnieć sobie informacje na temat podprogramów rekurencyjnych, drzew i metod
przeszukiwania drzew oraz grafów.
3