DOS. Jego esencja zdominowała świat i wolę milionów użytkowników przez lata. Dokonaliśmy niesamowitych rzeczy z tą rodziną systemów operacyjnych (w tym wszystkimi rozwiązaniami, które nie wyszły od Microsoftu), a także nauczyła nas nowej definicji bólu. Jednak wciąż pozostają szczegóły, których nie udało nam się rozwiązać w ciągu ostatnich czterech dekad, a Bryan Lunduke postanowił zbadać jeden z nich: Brak wielozadaniowości w DOS-ie – czy to mit, czy nie? Jak możesz się spodziewać, odpowiedź w internecie to ogromne „to zależy”...

„To były najlepsze czasy, to były najgorsze czasy; wiek mądrości i zarazem szaleństwa…”

Dickens dał prawdziwą lekcję tym wstępem, ale najbardziej uderzające jest to, że idealnie pasuje do lat DOS-u. Zmiany zachodziły w przerażającym tempie: wszystko było nowe i w mgnieniu oka to, co nowe, stawało się stare, zastępowane czymś jeszcze nowszym, skazanym na powtarzanie cyklu. Mimo to DOS przekazywał sztywność. Nauczyliśmy się używać komputerów, ale był to bolesny i bezlitosny proces, z ręcznie edytowanymi plikami konfiguracyjnymi, niekończącą się dokumentacją i ciągłą walką o odzyskanie kilobajtów konwencjonalnej pamięci.

Wyobrażanie sobie DOS-u robiącego coś „innego” nie było powszechne, a jakikolwiek pomysł na wielozadaniowość należał do równoległego wymiaru… ale rzeczywistość pokazała co innego. Niezależnie od technicznych różnic między wielozadaniowością kooperatywną a wielozadaniowością z wywłaszczaniem („preemptive”), faktem jest, że istniało kilka specjalnych rozwiązań zdolnych do odtworzenia tej funkcji wielozadaniowości pod DOS-em, a portal Bryana Lunduke pokazuje nam kilka najistotniejszych przykładów.

„DOS nie ma wielozadaniowości”: mit czy rzeczywistość?
Wielozadaniowość w DOS-ie

Poszukiwanie wielozadaniowości w DOS-ie

„DOS nie ma wielozadaniowości”: mit czy rzeczywistość?
Nazywał się Concurrent DOS aż do przejęcia Digital Research przez Novell w 1991 roku („Ghettoblaster”, domena publiczna)

Stanowisko Lunduke jest jasne od początku: DOS potrafił wykonywać wielozadaniowość, natywnie w niektórych przypadkach i z pomocą zewnętrznych narzędzi w innych. Wśród natywnych opcji wyróżnia się Concurrent DOS, stworzony przez Digital Research i Gary'ego Kildalla (z tego środowiska wywodzą się także DR-DOS i GEM), prezentowany jako „wielozadaniowy i wieloużytkownikowy system operacyjny”. Jednak byłoby błędem z naszej strony nie wspomnieć o MS-DOS 4.0 Multitasking.

„DOS nie ma wielozadaniowości”: mit czy rzeczywistość?
„Menedżer sesji” w MS-DOS 4.0 Multitasking otwierał się po naciśnięciu klawisza Alt

Dlaczego to ważne? Bardzo proste: nie wszyscy wiedzą, że istniały dwie wersje MS-DOS 4. Najczęściej spotykana była ta opracowana przez IBM, którą pamiętamy z nieskończoną liczbą błędów i problemów ze zgodnością. Natomiast MS-DOS 4.0 Multitasking był krótkim projektem Microsoftu, który w 1986 roku zawierał (między innymi) prawdziwą wielozadaniowość z wywłaszczaniem. Niestety, ten system nie zrobił zbyt wiele hałasu, ale stał się swego rodzaju proto-OS/2. Artykuł kontynuuje z odniesieniami do IBM TopView, Quarterdeck DESQview i prawie zapomnianego systemu operacyjnego o nazwie Wendin-DOS.

„DOS nie ma wielozadaniowości”: mit czy rzeczywistość?
Quarterdeck DESQview, wersja 1.03

Podsumowując, rodzina systemów DOS nie była obca wielozadaniowości. A jeśli możemy to naprawdę nazwać wielozadaniowością, czy nie… to pytanie wrzuca nas w znacznie czarniejszą dziurę, niż myślimy. Czy komputer z jednym procesorem, jednym rdzeniem i jednym wątkiem może wykonywać wielozadaniowość? Czy można mówić o wielozadaniowości, skoro DOS nie był nawet w stanie przetworzyć pojęcia „zadania”? Komentarze są otwarte.

Dostęp do artykułu: Kliknij tutaj