CROOK-5 - Dodatkowe zlecenia programu XOSL

Z MERA 400 wiki
Przejdź do nawigacji Przejdź do wyszukiwania

Kierownik instalacji, działając jako użytkownik uprzywilejowany BOSS lub LIBRAR, ma do dyspozycji kilka dodatkowych zleceń programu XOSL:

DUMP BOOT

Zlecenie wyprowadzenia na dziurkarkę taśmy programu ładującego system operacyjny. Przed wyprowadzeniem można programem DEBU zmienić numer talerza z którego ma być ładowany system.

CS <TZ>

Zlecenie zmiany systemu operacyjnego. Tytuł zbioru określa zbiór, z którego zostanie załadowany do bloku systemowego i następnie uruchomiony "nowy" system operacyjny.

OPRQ ,<nr porządkowy końcówki>

Polecenie zasymulowania przerwania "zgłoszenie operatora" ze wskazanej końcówki.

SERVIC [<nr porządkowy końcówki> lub <nazwa użytkownika>]

Wymuszenie zakończenia sesji przez wskazanego użytkownika. Pominięcie parametrów powoduje wymuszenie zakończenia sesji u wszystkich działających użytkowników.

ETM [,<godz.>[:<min>][,<godz>[:<min>]]]

Deklaracja czasu zarezerwowanego dla prac konserwacyjnych. Pierwszy z parametrów określa czas od którego począwszy nie będą dopuszczani do pracy nowi użytkownicy; drugi z nich będzie podawany użytkownikom przy próbie wpisania się do systemu (ma on znaczenie informacyjne dla użytkowników).

STM ,<czas w min> [,<numer porządkowy końcówki>]

Deklaracja czasu oczekiwania na wczytanie zlecenia z końcówki. Jeżeli przez czas o zadeklarowanej długości z końcówki nie zostanie wprowadzone żadne zlecenie to końcówka zostanie zawieszona lub zostanie wykonane zlecenie ES NOT (patrz IV.1.1.).

MTC

Zlecenie uruchomienia programu zrzutu dysku na taśmę magnetyczną MTC.

BOSS

Zlecenie uruchomienia programu pomocniczego BOSS.

COPS ,<obsz we> ,<obsz wy>

Zlecenie przeniesienia systemu operacyjnego (wykonanie kopii systemu) bez zmiany tablicy konfiguracji.

COPLIB ,<obsz we> ,<obsz wy> [,SYS]

Zlecenie przeniesienia standardowej biblioteki. Na obszarze wynikowym stare zbiory zawierające programy biblioteczne zostaną zastąpione nowymi, pozostałe zaś będą bez zmian. Użycie opcji SYS powoduje wykonanie dodatkowo zlecenia COPS.

CLEAD ,<nazwa obszaru> [,<numer zbioru>] [,<WO>]...

Zlecenie kompresji talerza dyskowego (odzyskiwanie nieużytków). Przy przyjętej w systemie CROOK zasadzie, że każdy zbiór zajmuje zawsze spójny obszar dysku, wolna przestrzeń ulega fragmentacji w miarę tworzenia, rozszerzania i usuwania zbiorów. Scalanie wolnej przestrzeni (i związane z tym operacje przepisywania zbiorów w inne miejsca na dysku) nie jest przez system wykonywane automatycznie ze względu na dużą wrażliwość takiej operacji w systemie wielodostępnym. Wystąpienie błędu czy upadek systemu w czasie wykonywania kompresji powoduje utratę części informacji na dysku, a odtwarzanie uszkodzonych zbiorów (możliwe tylko dla zbiorów znakowych) wiąże się zwykle z dużym nakładem pracy. Kompresji nie zaleca się wykonywać przy dużym obciążeniu systemu, a przed przystąpieniem do niej dobrze jest wykonać kopię całego dysku. Zaleca się również, na czas wykonywania zlecenia CLEAD, włączyć jako strumień OUT drukarkę.
Zlecenie rozpoznaje następujące opcje:
  •  ?WRK - usuń zbiory nietrwałe.
  •  ?COM - wykonaj kompresję dysku.
  •  ?TES - wykonaj przebieg kontrolny, bez zapisywania na dysk. Opcja umożliwia sprawdzenie czy wszystkie zbiory dają się odczytać, oraz jaki byłby rezultat kompresji.
W czasie realizacji zlecenia wyprowadzana jest informacja o ostatnio przemieszczonym zbiorze. W razie wystąpienia błędu przy odczycie ze zbioru wyprowadzana jest na monitor nazwa zbioru i program czeka na reakcję użytkownika. Użytkownik może podając znak CR spowodować pominięcie zbioru, podając znak '*' - pominięcie błędnego sektora, lub podając znak DC4 skończyć pracę programu. Program CLEAD musi być wykonany do końca. Skorowidze są uaktualniane przed zakończeniem pracy (początkowo są tylko przesuwane zawartości zbiorów). Po upadku systemu w czasie kompresji dysku należy uruchomić zlecenie CLEAD podając jako parametr numer pierwszego nieprzesuniętego zbioru (według wydruku).

ODZ ,<nazwa_dysku> [,<TZ>] [,<nrśektora>]

Zlecenie uruchomienia programu odzyskiwania zbiorów znakowych (patrz opis programu ODZ).

CLOCK [,<miesiąc>,<dzień>[,<godzina>,<minuta>]]

Zlecenie ustawienia zegara czasu rzeczywistego. Progarm ustawia zegar według zadanych parametrów. Po ustawieniu zegar jest zatrzymany. Start zegara następuje po użyciu zlecenia bez parametrów. W komórce programu o adresie 1 znajduje się adres fizyczny zegara w postaci:
  • bity 8-10 - numer urządzenia w kanale,
  • bity 11-14 - numer kanału znakowego.
Adres ten można ustawić np. programem DEBU.Jeżeli pod tym adresem nie będzie zegara, program przeszuka kanały od 15 do 8 w kolejności malejących numerów kanałów, a w kanale według wzrastających numerów urządzeń. Po znalezieniu zegara program ustawi datę i czas lub wystartuje zegar ( w zależności od parametrów). Jeśli zegar nie zostanie znaleziony program zakończy pracę z komunikatem "NO CLOCK".

PINF

Zlecenie podania danych statystycznych o pracy systemu operacyjnego i sprzętu. Napisy w lewej kolumnie są takie same jak opisy w programie STAT.

QTEDI [,<WA>]...

Zlecenie wydrukowania opisu systemu przygotowanego programem EDI. Zlecenie dopuszcza do siedmiu parametrów.Oznaczają one kolejno:
  • parametr różny od zera jest deklaracją urządzenia nie posiadającego małych liter;
  • odstęp między szpaltami (przyjmowane jest 10);
  • liczba szpalt (przyjmowana jest jedna szpalta);
  • typ urządzenia:
    • 1 - końcówka (także gdy parametr pominięty)
    • 2 - DZM
    • 3 - DW3;
  • parametr różny od zera powoduje pisanie bez nakładania znaków;
  • strumień wejściowy (przyjmowany jest strumień 1);
  • strumień wyjściowy (przyjmowany jest strumień 2, a dla końcówki strumień OUT).

Słowa sterujące programu XOSL

W programie XOSL słowa o adresach 2,3 i 4 zawierają parametry ustalające pewne cechy tego programu. Liczby te mogą być zmieniane w zależności od potrzeb użytkownika programem DEBU. W słowie o adresie 2 znajduje się ujemna liczba określająca domyślny parametr zlecenia REP LIN.

Program XOSL wykrywa końcówki aktywne a nie pracujące. Reakcja programu zależy od zawartości słowa o adresie 3 w XOSL. Wartość bezwzględna liczby umieszczonej w tej komórce określa liczbę minut oczekiwania na wczytanie wiersza zlecenia (liczba 0 oznacza czas nieograniczony). Po upływie tego czasu program XOSL zawiesi końcówkę (do zgłoszenia operatora) jeżeli wspomniana liczba jest dodatnia, jeżeli zaś ujemna to zostanie wykonane zlecenie ES NOT (zostanie wymuszony koniec sesji bez usuwania zbiorów nietrwałych).

W słowie o adresie 4 poszczególne bity oznaczają:

  • bity 0-7 - znak zachęty programu XOSL;
  • bit 10 =1 - przy wykonyeaniu zlecenia ES nie będzie sprawdzany aktualny budżet.
  • bit 12 =1 - nakładki programu XOSL są na stałe rezydujące w pamięci.
  • bit 13 =1 - zlecenie ES bez parametrów będzietraktowane jak zlecenie ES NOT. W zleceniu ES nie będą analizowane uprawnienia użytkownika.
  • bit 14 =1 - w zleceniu OUT tytuł zbioru może określać dowolne urządzenie znakowe.
  • bit 15 =1 - po rozpoznaniu użytkownika wykonywane jest wstępnie zlecenie REP LIN.

UWAGA: Program XOSL uruchomiony w trybie użytkowym z opcją ?INS umożliwia konwersacyjne ustawienie parametrów (użytkownik odpowiada na pytania zadawane przez program). Znaczenie parameru urządzenia MON jest opisane w punkcie III.3.1.5. Parametr nakazujący konwersję liter na duże zostanie zmieniony po rozpoznaniu małej litery w zleceniu programu XOSL (zmiana jest aktualna w czasie sesji danego użytkownika).

Zbiór opisu konfiguracji dla programu XOSL

Zbiór definicyjny XOSL._DF zawiera opisy sposobu traktowania końcówek i pracujących przy nich użytkowników. Zbiór jest zbiorem tekstowym składającym się z bloków. Pierwszy wiersz bloku opisuje urządzenie, a następne środowisko pracy użytkownika. Wiersz opisujący urządzenie rozpoczyna się jego numerem lub słowem kluczowym GLO (opis "globalny"):

{GLO | <numer>} [{ MUL | UZD | JG } [<opcja> ...]]

gdzie:

  • MUL - końcówka dołączona przez MULTIX
  • UZD - końcówka dołączona przez UZDAT
  • JG - końcówka dołączona przez jednostkę grupową

a <opcje> to:

  • EOF [=<kod>] - obserwuj znacznik końca wejścia
  • EVE - sprawdzaj i generuj parzystość
  • ODD - sprawdzaj i generuj nieparzystość
  • LON - przekazuj 8 bitów
  • XON - dołącz protokół X-ON, X-OFF
  • CAN - obsługuj BS i CAN
  • UPP - nie wyprowadzaj małych liter
  • BRE - obserwuj zgłoszenie operatora

Pominięcie opisu urządzenia powoduje przyjęcie opisu zgodnego z ostatnim opisem GLO. Opis GLO może być użyty wielokrotnie.

Dalej może wystąpić opis środowiska pracy (końcówki lub globalny). W jego skład mogą wchodzić następujące polecenia:

  • RES - nakładki programu rezydują w pamięci. Polecenie RES może być użyte w dowolnym opisie środowiska
  • TIM [=<czas>] [ES] - ustal czas oczekiwania dla końcówki
  • LIN [=<liczba wierszy>] - wstępne zlecenie REP LIN
  • PRO [<znak>] - ustal znak zgłoszenia
  • ESN - zlecenie ES oznacza zlecenie ES NOT
  • BUD - nie licz budżetu w zleceniu ES
  • OUT - zezwól na OUT na urządzeniu
  • CON - dołącz moduł łącza MERA-MERA

Rozpoczęcie opisu powoduje wyzerowanie wszystkich opcji, jego pominięcie - przyjęcie opcji jak w ostatnim opisie GLO. Pominięcie urządzenia w zbiorze definicyjnym powoduje przyjęcie parametrów jego i środowiska jak w ostatnim opisie GLO.

Źródło: SYSTEM OPERACYJNY CROOK-5 dla minikomputera MERA-400 (wersja 7), Zbigniew Czerniak, Marek Nikodemski, Gdańsk 1988