Tajemnice ATARI

DYSKOWE SYSTEMY OPERACYJNE
część pierwsza

    Poniższy artykuł jest pierwszą częścią cyklu poświęconego Dyskowym Systemom Operacyjnym (DOS - Disk Operating System). Celem tego cyklu jest przybliżenie pojęcia DOS-a, wyjaśnienie pewnych pojęć związanych nierozłącznie z systemem obsługi stacji dysków oraz ujawnienie mechanizmów działania programów sterujących dyskiem.

   Pierwsza część poświęcona jest podstawowym pojęciom oraz znaczeniu Dyskowego Systemu Operacyjnego.

   Wiem, że większość Czytelników doskonale orientuje się co to jest Dyskowy System Operacyjny. Być może poczują się oni rozczarowani poniższym artykułem, jednakże cykl jest przeznaczony dla szerokiego grona zainteresowanych tematem, z tego powodu rozpoczynam od zupełnych podstaw.

   Czytelnicy stawiający pierwsze kroki na drodze zdobywania wiedzy informatycznej zadają sobie pytanie: Co to jest DOS ? Odpowiedź jest krótka: jest to program zajmujący się w szerokim pojęciu współpracą komputera ze stacją dysków. Praca wszystkich DOS-ów, bez względu na sposób rozwiązania pewnych problemów, sprowadza się do tego samego celu: zapamiętanie stworzonego programu czy też innego wytworu (tekstu, obrazka graficznego, fragmentu pamięci komputera; ogólnie ukryjmy to wszystko pod pojęciem dane) na dyskietce oraz możliwość odtworzenia tych danych. Używając słowa "odtworzenie" mam na myśli przesłanie danych z dyskietki do pamięci komputera.

   Użytkownicy DOS-a korzystają z komend LOAD czy SAVE (albo też ich odpowiedników) umożliwiających stworzenie lub odpowiednio odtworzenie pliku zawierającego dane. Tylko najbardziej dociekliwi z nich zastanawiają się: "Co naprawdę dzieje się w czasie, gdy stacja dysków wydaje z siebie radosne dźwięki typu Pik, Pik, odprężające Puk, Puk, czy też niepokojące Chrup, Chrup?". Dokładnym wyjaśnieniem między innymi tych procesów zajmę się w kolejnych częściach cyklu.

   Jak wyżej wspomniałem, podczas tajemnych działań stacji dysków, na dyskietce pojawia się pakiet danych zwany plikiem dyskowym. Co to takiego jest ? Najogólniej biorąc są to liczby (bajty) znajdujące się w pamięci komputera, które po uformowaniu w specyficzny dla każdego Dyskowego Systemu Operacyjnego sposób, zostają zapamiętane na dyskietce. Umożliwia to późniejsze ich odczytanie oraz poprawienie lub rozbudowanie. Najczęściej operacje na pliku związane są z wydaniem odpowiednich komend wpisywanych za pomocą klawiatury. Niestety, wielu Czytelników sądzi, że komendy te wydaje bezpośrednio DOS-owi. Rzeczywistość wygląda nieco inaczej, co też natychmiast wyjaśniam. Otóż każdy szanujący się Dyskowy System Operacyjny składa się z dwóch programów ściśle współdziałających ze sobą.

    Jeden z nich zajmuje się obsługą komend wydawanych przez użytkownika. Różnie jest on nazywany, np. DUP.SYS, Command Processor, niekiedy nie jest on wcale wyróżniany jako oddzielna część, jednakże ważna jest świadomość jego istnienia. Interpretuje on otrzymane polecenia oraz w zależności od potrzeb uaktywnia drugi program. Jest nim właściwy system obsługi stacji dysków (zwany np. DOS.SYS). To ten właśnie program sprawia, że nagle urządzenie zewnętrzne D: (wewnątrzsystemowe oznaczenie symbolu stacji dysków) zostaje wyrwane ze snu i rozpoczyna swoją ciężką pracę świecąc przy tym kontrolkami i wydając mniej lub bardziej miłe dźwięki.

   Reasumując: pierwszy program zajmuje się wydawaniem poleceń drugiemu (typu odczytaj, zapisz, skasuj plik, zmień jego nazwę, pokaż zawartość dyskietki, sformatuj dyskietkę czyli przystosuj ją do współpracy z odpowiednią stacją dysków, itp.), uruchamianiem programów znajdujących się w pamięci komputera, kopiowaniem plików. Drugi program zajmuje się sterowaniem stacją dysków (wysyłaniem sygnałów sprawiających, że dyskietka jest formatowana, zapisywana, odczytywana, itd.), odpowiednią ilością powtórzeń danej operacji, np. w chwili wystąpienia błędu, formowaniem i interpretowaniem pakietu danych znajdujących się w pamięci komputera, obsługą RamDysku (teoretyczna dyskietka będąca w rzeczywistości częścią pamięci RAM - stąd nazwa). Współpraca pomiędzy tymi dwoma programami jest dwukierunkowa. Wymieniają się informacjami na temat ilości przetransmitowanych danych, adresu ich umieszczenia, wynikiem operacji (czy wystąpił błąd, itp.).

   Jest rzeczą oczywistą, że nie wymieniłem wszystkich czynności, którymi zajmuje się DOS, jest to specyficzne dla koncepcji danego systemu, jednakże wyżej wymienione czynności są w zasadzie typowe i jednocześnie podstawowe dla każdego DOS-a. Zadajmy sobie pytanie: dlaczego powstają nowe Dyskowe Systemy Operacyjne, jeśli istnieją już nieźle działające (jak się nam wydaje) inne DOS-y? Otóż decydujące znaczenie ma kilka czynników: postęp techniczny, oszczędność zewnętrznego nośnika informacji czyli dyskietki, oszczędność dostępnej dla użytkownika pamięci oraz oszczędność czasu. Wszystkie są ze sobą ściśle powiązane i sprawiają, że powstają systemy szybciej, umiejętniej i efektywniej wykorzystujące możliwości stacji dysków, co sprawia z kolei, że pracuje się nam szybciej i przyjemniej.

   Kolejny, drugi odcinek ujawniania tajemnic Dyskowych Systemów Operacyjnych będzie w całości poświęcony dyskietce. Konkretnie będzie zawierał opis jej budowy i wewnętrznej organizacji (ścieżki, sektory z wyszczególnieniem zastrzeżonych fragmentów dysku (Boot, VTOC, Directory)). Charakteryzując strukturę dyskietki przyjmę za standard DOS-a 2.5 firmy Atari Corporation, ponieważ jest on niewątpliwie najbardziej rozpowszechniony i będzie łatwiej zrozumieć szereg spraw (np. "na gorąco" porównując treść suchego artykułu z rzeczywistością). Nie znaczy to, że będę unikał problemów związanych z różnymi gęstościami zapisu dyskietki, jej sektorowaniem, itp.

   Wszelkie uwagi, obelgi, rady, sugestie i nadzieje związane z rodzącym się cyklem poświęconym Dyskowym Systemom Operacyjnym proszę kierować pod adresem Redakcji z dopiskiem DOS.

LEON



Powrót na start | Powrót do spisu treści | Powrót na stronę główną

Pixel 2001