Ekran ukazujący się po uruchomieniu C64

System operacyjny Commodore 64

Co to jest system operacyjny?

Ekran ukazujący się po uruchomieniu C64

Każdy translator języka programowania działa w określonym środowisku. Na otoczenie to składają się sprzęt i oprogramowanie systemowe. Na większych komputerach oprogramowanie to bywa na tyle rozbudowane, że tworzy system operacyjny. Bywa wtedy tak, że tylko system operacyjny lub jego podstawowa część jest umieszczona w pamięci ROM. Pozostała część systemu jest wtedy ładowana do pamięci komputera z pamięci zewnętrznej tzw. boot-straping, czyli działanie procedury inicjacyjnej z ROM.

 

BIOS / CP/M / MS-DOS / BASIC ?

Jako przykład takiej organizacja mogą służyć mikrokomputery wyposażone w system CP/M lub MS DOS. W obu tych systemach na stałe w komputerze rezyduje tylko BIOS (Basic Input Output System – Podstawowy System Wejścia/Wyjścia). Interpreter Basic’a jest wtedy również ładowany z pamięci zewnętrznej. Oprócz Basic’a mogą być również umieszczane zamiast niego inne translatory, bądź programy.

Wspomniany BIOS jest najbardziej sprzętowo związaną częścią systemu, tzw.jądrem. Pozostałe procedury systemowe poprzez odwołanie się jądra komunikują się z układami wejścia/wyjścia, a poprzez nie ze światłem zewnętrznym. Projektanci systemów operacyjnych dbają o to, aby do jądra odwoływać się poprzez wektory lub tablice skoków (por.adresy $ff81 do $fff5). Umożliwia to po stworzeniu BIOS dla konkretnego komputera pozostałe procedury zachować bez zmian. W konsekwencji prowadzi do tego, że między komputerami różnych typów wyposażonych w ten sam system operacyjny można wymieniać oprogramowanie. Oczywiście jest to możliwe dopóty, dopóki programy przeznaczone do przenoszenia odwołują się do układów wejścia/wyjścia korzystając z procedur BIOS, a nie bezpośrednio.

A sam Commodore 64?

W C-64 również, oprócz interpretera, występuje BIOS. Jego rolę pełni jądro systemu operacyjnego, tzw.Kernal, umieszczony w ROM od $e4da do $ffff. Interpreter wymienia informacje z urządzeniami zewnętrznymi korzystając z procedur umieszczonych w Kernalu. System i Basic wymieniają dane między sobą poprzez zmienne systemowe na stronach pierwszego kilobajta pamięci RAM.

W C-64 możliwe jest używanie innych niż standardowy translatorów. Wtedy, jeśli ładujemy do pamięci Logo, Oxford Pascal lub inny program translujący albo użytkowy, np. edytor tekstów, to najczęściej po jego inicjacji wyłącza się ROM z interpreterem Basic’a. Do dyspozycji załadowanego translatora lub programu aplikacyjnego pozostaje tylko Kernal. Bywają programy, które wyłączają również firmowy system operacyjny. Z firmowego komputera pozostaje wtedy tylko RAM (64 Kb) i układy we/wy. Jak z tej kupy żelastwa (hardware) uczynić coś, co nie jest głuchonieme i ślepe musi wtedy zbadać załadowany w miejsce firmowego własny program, np. procesor tekstu.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *