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