DOS (Disk Operating System) – opracowany przez koncern IBM system operacyjny dla serii komputerów produkowanych przez tę firmę. Nazwa DOS obejmuje rodzinę systemów, stanowiących kolejne wersje rozwojowe opracowywane wraz z powstawaniem nowych serii maszyn cyfrowych.
Pierwszy system został opracowany dla modeli System-u 360 i oznaczony został jako DOS/360. Wraz z kolejnymi systemami, np. System 370, wprowadzane były kolejne jego wersje.
System ten w zasadzie stanowił rozszerzenie wcześniej eksploatowanych systemów:
- BOS/360 (Basic Operating System) opracowany dla najmniejszych modeli z rodziny komputerów System 360,
- TOS/360 (Tape Operating System) dla wersji systemów pozbawionych dysków magnetycznych.
Oprócz systemu DOS firma IBM wprowadziła system OS (Operating System, np. OS/360). Oba systemy wzajemnie się uzupełniały i każdy z nich miał swoje odrębna zastosowanie:
- DOS – dla małych modeli, w instytucjach, gdzie nie przewidywano znaczącej rozbudowy systemu komputerowego,
- OS – dla większych konfiguracji i tam gdzie planowano rozwój systemów informatycznych.
Ten zakres zastosowań był dość płynny i różnie stosowany.
W obozie socjalistycznym, a w szczególności w krajach należących do RWPG, rozwój systemów informatycznych, to adaptacje istniejących ówcześnie rozwiązań do potrzeb i przede wszystkim możliwości znaczenie opóźnionego przemysłu. Dla komputerów Jednolitego Systemu wprowadzono wersję systemu DOS (i OS) oznaczoną DOS/JS (i odpowiednio OS/JS), tylko nieznacznie różniącą się od pierwowzoru.
Funkcje systemu DOS można podzielić na:
- zarządzanie pracą
- zarządzanie wieloprogamowaniem
- zarządzanie danymi
- obsługa błędów systemu
- rejestrowanie pracy systemu.
Zasadniczym elementem systemu był wolumin systemowy (dysk), na którym znajdowała się całość oprogramowania składającego się na system. Podzielone ono było na biblioteki zlokalizowane w jednym zbiorze bibliotecznym widzianym jako pojedynczy zbiór VTOC (tablica zawartości woluminu). Biblioteki:
- biblioteka faz: przechowywała moduły ładowalne
- biblioteka modułów wynikowych
- biblioteka modułów źródłowych.
Do obsługi bibliotek przeznaczony był program MAINT.
Pamięć w systemie podzielna była następująco:
- nadzorca
- jądro systemu
- bloki sterujące
- obszar ładowania procedur nierezydentnych
- obszar przeznaczony dla programów użytkowych (max. 3 strefy)
- warstwa drugoplanowa BG
- warstwa pierwszoplanowa F2
- warstwa pierwszoplanowa F1.
Jak wynika z powyższego podziału obszaru przeznaczonego dla programów użytkowych, system umożliwiał przetwarzanie maksymalnie do trzech procesów (po 1 w każdej ze stref).
Praca w systemie odbywać się mogła w 2 trybach:
Sterowanie pracą dokonywało się za pomocą języka JCL (Job Control Language), przy czym w trybie 2 zestaw poleceń i fraz był ograniczony oraz dotyczył pojedynczego programu uruchomionego z końcówki operatorskiej (np. terminala = klawiatura+ monitor).
Programy użytkowe w systemie DOS składały się z faz. Kolejne fazy były ładowane do pamięci po zakończeniu poprzedniej fazy. Taka organizacja wynikała z ograniczonych zasobów pamięci komputera. System nie obsługiwał zarządzania katalogami i zbiorami na woluminach. Operator musiał określać miejsce (adres) i rozmiar zakładanego zbioru. Oprogramowanie odpowiadające za zarządzanie danymi w systemie to IOCS (Input Output Control System) podzielone na fizyczny IOCS (Physical – PIOCS) i logiczny IOCS (Logical – LIOCS).