#systemyoperacyjne #linux #oesowo Rezydentny monitor
W poprzednim wpisie wspominałem że podstawową i najstarszą funkcją systemu operacyjnego jest kolejkowanie zadań. Pierwsze poważne komputery używały "interfejsu białkowego" do kolejkowania zadań, czyli jakiś człowiek ładował karty i taśmy do komputera i uruchamiał. Miał też za zadanie nadzorować pracę programu i przerywać jego działanie jeśli wykonanie programu zajmowało zbyt długo.
Przywykliśmy do tego, że na komputerach programy cały czas działają. Czekają na nas, a nie my na nie. Wtedy komputerów używano do obliczeń naukowych i finansowych. Naukowiec chcąc wyliczyć trajektorię lotu rakiety czy zanalizować dane statystyczne musiał odstać swoje w kolejce.
I to zostało wkrótce zautomatyzowane. Tak narodził się bardzo prymitywny system operacyjny, wtedy jeszcze znany jako "program monitora", niemający nic wspólnego z urządzeniem wyświetlającym.
Monitor startował jako pierwszy z jakiejś pamięci nieulotnej. Miał nawet w sobie kawałki kodu które dziś nazwalibyśmy sterownikami. Był w stanie uruchomić konsole robocze, uruchomić napęd taśmy, w końcu uruchomić program. Mógł też obsługiwać wyjątki i błędy, a także ustawić sobie "minutnik" i wyrzucić program który się ociąga ponad przeznaczony mu czas na wywołanie. Po zakończeniu jednego programu ładował kolejny aż do wyczerpania się "wsadu" (batch), czyli np wszystkich programów z taśmy.
Nadal programy wykonują się pojedynczo, nadal jeden po drugim, natomiast coś je już ogarnia, potrafi wysterować sprzęt i radzić sobie z problemami stwarzanymi przez same programy.
Na dołączonym obrazku program monitora z Atari, z powodu nagłówka zwany "self testem". Po zwolnieniu resetu w atarynce uruchamiał się z wewnętrznego ROMu monitor, najpierw próbował czytać kasetę ROM (kartridż) a potem magnetofon. Jak coś poszło nie tak, wyświetlał "self test" jako reakcję na wyjątek systemowy. Miał wbudowany interpreter języka basic i jeśli nie było katridża, kasety i wyjątku systemowego to wyświetlał "READY" czekając na komendy. Crash programu też wracał do monitora, przez co "self test" stał się znienawidzony przez użytkowników, zupełnie niezasłużenie.
Jeszcze ciekawiej wyglądało to na maszynach od Pana Trzmiela, czyli Commodore 64. Tam pamięć ROM zawierająca monitor mieściła w sobie 2 programy. Interpreter basic oraz "kernal", tak, z "e" w środku, czyli właściwy monitor, zwany już wtedy przez niektórych systemem operacyjnym.
Na katridżu do atarynki można było dostać trochę bardziej rozbudowany system operacyjny, on chyba się nawet nazywał DOS, nie mylić z MS DOS. Wtedy program monitora w zasadzie pełnił funkcję bootloadera albo czegoś w stylu BIOSu. Załadować, uruchomić, usunąć się w cień.



