CANDE - CANDE

Ten artykuł dotyczy edytora tekstu na komputerach mainframe. W przypadku towarzystwa technicznego IEEE patrz Komitet Techniczny ds . Projektowania Wspomaganego Komputerowo .
CANDE
Pierwotni autorzy Darrel F. High,
Randall Gellens
Deweloper (y) Burroughs / Unisys
Pierwsze wydanie 1973 ; 48 lat temu  ( 1973 )
Wersja stabilna
MCP 19.0 / grudzień 2019
System operacyjny Burroughs MCP
Platforma Seria komputerów mainframe Unisys Clearpath
Dostępne w język angielski
Rodzaj Powłoka poleceń , edytor tekstu

CANDE (Command AND Edit) to powłoka wiersza poleceń i edytor tekstu w systemie operacyjnym MCP (Master Control Program) , który działa na komputerach mainframe Unisys Clearpath . Pierwotnie zaimplementowany w dużych systemach Burroughs , ma szereg funkcji do interakcji ze środowiskiem wykonawczym systemu operacyjnego, koncentrując się na wykonywaniu, edytowaniu i kompilowaniu programów oraz tworzeniu, kopiowaniu, przenoszeniu, zmianie nazwy i ogólnie usuwaniu plików.

Jego pełna nazwa to CANDE MCS. MCS lub Message Control Subsystem to ogólna forma programu systemowego w architekturze Burroughs (inna niż MCP, główny program sterujący lub podstawowy system operacyjny). Jako MCS, CANDE jest czymś więcej niż tylko edytorem, ponieważ zapewnia ogólną kontrolę nad siecią użytkowników.

Możliwości edycji CANDE są anachroniczne w przypadku zwykłej (w przeciwieństwie do edycji skryptowej) edycji, ponieważ są one poprzedzone edytorami pełnoekranowymi i graficznymi.

CANDE był również używany w serii Burroughs CMS (mini komputer), z bardzo podobną składnią.

We współczesnym MCP CANDE jest używany głównie przez ODT (Operator Display Terminal) i MARC (Menu Assisted Resource Control) na emulatorach oryginalnych terminali znakowych, podobnie jak w innych starszych interfejsach mainframe, takich jak ISPF .

funkcje

CANDE zapewnia interpreter wiersza poleceń i edytor wierszowy , chociaż w przeciwieństwie do współczesnej interpretacji interpretera wiersza poleceń systemu operacyjnego, polecenia CANDE są kompilowane do CANDE MCS, ponieważ funkcje podobne do powłoki są dostarczane przez WFL . Inne godne uwagi cechy i funkcje obejmują:

  • Tworzyć, edytować i utrzymywać (kopiować, przenosić, usuwać, drukować, zmieniać nazwy) danych i plików programów
  • Kompiluj i uruchamiaj programy
  • Dostęp i wyświetlanie informacji o sieci transmisji danych, w tym o liniach komunikacyjnych terminala i zdalnych urządzeniach
  • Dynamicznie zmieniaj sieć komunikacyjną
  • Dostęp i wyświetlanie informacji o zleceniach i zadaniach
  • Funkcje narzędziowe (kalkulator, test użyteczności systemu itp.)

Oprócz tych funkcji CANDE posiada również narzędzie pomocy on-line.

Realizacja

Aby uzyskać dodatkową szybkość, CANDE zaimplementował przełączanie kontekstu użytkownika poprzez zamianę bloku na szczycie stosu. Ta nowatorska metoda złamała kilka założeń wbudowanych w projekt dużych systemów Burroughs , w szczególności obsługę deskryptorów pamięci wirtualnej, i oznaczała, że ​​sam CANDE musiał zostać napisany w DCALGOL z uprawnieniami na poziomie systemu.

Pod względem architektonicznym CANDE jest podzielony na dwie główne sekcje: główny, pojedynczy proces główny pierwotnie obsługujący do 255 jednoczesnych użytkowników oraz jeden lub więcej stosów roboczych. Główny proces nazywa się BUMP. Odbiera wszystkie komunikaty wejściowe, w tym dane wejściowe od użytkowników. Proste żądania, które można wykonać bez opóźnień i które nie obejmują żadnych operacji we / wy, takich jak dostęp do dysku, są obsługiwane natychmiast. Inne żądania są dodawane do kolejki roboczej i obsługiwane przez jeden z procesów roboczych. Proces roboczy nazywa się GRIND; w dowolnym momencie może istnieć jedno lub więcej wystąpień. Każdy proces GRIND ma domyślnie pięć pseudowątków, które faktycznie wykonują pracę.

Model wątków wewnętrznych do przełączania kontekstu wybiera jeden z pseudo-wątków roboczych na proces GRIND i czyni go kontekstem wykonywania. Osiąga się to poprzez skopiowanie go na szczyt stosu. Gdy proces roboczy musi wykonać operacje we / wy lub inną asynchroniczną czynność, inicjuje akcję, zaznacza to, na co oczekuje i wywołuje funkcję przełączania kontekstu, która wybiera inny kontekst do wykonania.

CANDE działa bez wewnętrznych blokad, dzięki starannemu oddzieleniu danych. Każdemu możliwemu połączeniu użytkownika (lub stacji) przypisywany jest indeks w tablicy głównej zwanej tablicą stacji lub STA („zostań”). Aktualny indeks stacji nosi nazwę STAX (wymawiane jako „stay-x”). Istnieje wiele słów danych stanu na stację, ale są one przechowywane razem ze wszystkimi pierwszymi słowami, po których następują wszystkie drugie słowa itd. To pozwala CANDE na indeksowanie do tablicy przy użyciu tylko dodawania, a nie mnożenia (co zostało stworzone dla szybsze działanie na przewodowych procesorach epoki).

CANDE został pierwotnie napisany w 1973 roku przez Darrela F. High. Został przejęty przez Randalla Gellensa w 1984 roku, w którym to momencie konserwacja biblioteki (kopiowanie plików, przenoszenie, zmiana nazwy i usuwanie) została przepisana, aby umożliwić znacznie rozszerzone możliwości, dodano mnóstwo narzędzi przy użyciu znaku „?”. składnię (pozwalającą na użycie ich nawet podczas działania programu) i wprowadzono kilka ulepszeń architektonicznych. Później został przeniesiony do fabryki w Santa Barbara, a ostatecznie do Indii.

„?” składnia, pierwotnie pozwalająca na sterowanie podczas wykonywania programu (kiedy dane wejściowe byłyby normalnie kierowane do programu), została wzbogacona o szereg narzędzi.

Zobacz też

Linki zewnętrzne