GEORGE
GEORGE – rodzina systemów operacyjnych zastępujących system EXEC komputerów serii ICL 1900, wyposażonych w interpreter poleceń. W Polsce lat 70.-80. XX wieku rozpowszechniony na komputerach serii Odra 1300, konstruowanych przez nieistniejące już zakłady ELWRO we współpracy z angielską firmą ICL (mających m.in. 100% wymienność każdego oryginalnego oprogramowania ICL).
System GEORGE 3 przyjmował, planował, uruchamiał i wykonywał zadania stosownie do zleceń w tzw. języku opisu zadań, wydawanych bezpośrednio z ekranopisu (obecna nazwa: konsola lub monitor użytkownika) lub zapisanych w pliku makrodefinicji (obecna nazwa: skrypt).
Charakterystycznymi cechami systemu GEORGE 3 (nazwa nie pochodzi od imienia, lecz jest akronimem) były:
- tryb pracy:
- wsadowy – zadanie było ładowane z dowolnego strumienia: pliku kart, taśmy perforowanej, taśmy magnetycznej lub dysku; proces kończył się sukcesem lub nie, ale bez zawieszenia systemu;
- konwersacyjny (z urządzeń zdalnych): użytkownik obserwował proces na konsoli (monitor, dalekopis itp.) i na bieżąco obsługiwał jego przebieg i wyjątki (w zależności od uprawnień mógł także zawiesić lub zamknąć i reaktywować cały system);
- wielozadaniowość;
- wielodostępność (ochrona zadań, strumieni danych i zasobów użytkownika);
- system zarządzania zadaniami bieżącymi i konwersacyjnymi (każdy proces otrzymywał priorytet (zwany w GEORGE 3 pilnością), limit czasu CPU, liczby operacji wejścia-wyjścia i przydziału innych zasobów);
- system rozliczania użytkowników („budżetowania”) i ograniczania wykorzystania komputera przez użytkownika w okresie rozliczeniowym.
Makrodefinicja systemu GEORGE 3 zawierała ciągi zleceń (obecnie: poleceń). Każde zlecenie rozpoczynało się nazwą, po której ewentualnie występowały ciągi parametrów oddzielonych przecinkami oraz kwalifikatorów ujętych w nawiasy. Nazwy zleceń mogły być podawane w postaci pełnej lub dwuliterowych skrótów. Zlecenie mogło być poprzedzone etykietą. W jednym wierszu można było umieścić jedno zlecenie. W przypadku kontynuacji zlecenia w kolejnym wierszu, wiersz należało zakończyć znakiem „-”.
Kompletne makrodefinicje lub poszczególne zlecenia wprowadzane były:
- z pliku kart perforowanych;
- z perforowanej taśmy papierowej;
- z końcówki konwersacyjnej (dalekopis, ekranopis=monitor+klawiatura);
- z elektronicznego zbioru znakowego (np. pliku makrodefinicji przechowywanego na dysku).
Zlecenia w obrębie skryptu były wykonywane w kolejności wprowadzania, chyba że przeniesienie do określonej etykiety nastąpiło za pomocą instrukcji skoku GOTO, IF … GOTO …, WHENEVER.
Przykładowe zlecenia: JOB <nazwa zadania>, <nazwa użytkownika>..., LOGIN <nazwa zadania>, <nazwa użytkownika>..., NEWPASSWORD <hasło>, INPUT <nazwa użytkownika>, <opis zbioru>..., RUNJOB, GOTO, DOCUMENT, LOGOUT, ENDJOB i in.
GEORGE 3 na ogólnych zasadach (sterowany makrowywołaniami) uruchamiał kompilatory języków ALGOL, PLAN, PLAN4, FORTRAN, COBOL, BASIC, JEAN, PASCAL, GIN, a w Polsce dla maszyn Odra 1305 także języka SNOBOL, RATFOR i in. (nazwy języków podano w ówczesnej pisowni).
Należy nadmienić, że powstała cała rodzina systemów operacyjnych GEORGE, rozwijanych równolegle jako GEORGE 1, GEORGE 2, GEORGE 3, GEORGE 4. Oznaczeń tych nie należy utożsamiać z wersjami systemu, ponieważ były to odrębne systemy o różnym stopniu złożoności (współpracujące np. tylko z pamięcią taśmową PT (GEORGE 2) lub z pamięcią taśmową PT i dyskami DS (GEORGE 3).
Bibliografia
edytuj- Stanisław Borak, Jerzy Klaczak, Stanisław Korczak, Zdzisław Płoski: System operacyjny George 3. Wydawnictwa Naukowo-Techniczne, Warszawa 1981, Seria Biblioteka Inżynierii Oprogramowania, ISBN 83-204-0252-2, stron 292.
- Stanisław Borak, Jerzy Klaczak, Stanisław Korczak, Zdzisław Płoski: System operacyjny George 3, wydanie drugie, rozszerzone. Wydawnictwa Naukowo-Techniczne, Warszawa 1987, Seria Biblioteka Inżynierii Oprogramowania, ISBN 83-204-0719-2, stron 338.
Linki zewnętrzne
edytuj- Running GEORGE 3 on a Raspberry Pi. www.rs-online.com, 2012-11-06. [dostęp 2017-10-03]. (ang.).
- George3. Emulation of the ICL 1900. sw.ccs.bcs.org. [dostęp 2017-10-03]. (ang.).