SKUTECZNA ELIMINACJA

Rozwiązanie to skutecznie eliminuje niemal wszelkie przestoje procesora i urządzeń zewnętrznych w czasie realizacji zadań obliczeniowych. Mimo to nie jest ono pozbawione istotnych mankamentów. Do nich zalicza się m.in. to, że zadanie, którego realizacja została zaini­cjowana, musi być wykonane do końca (nawet z przer­wami wynikającymi np. z konieczności dostarczenia potrzebnych danych). Jednakże o poprawności wykony­wania programu oraz o rzetelności uzyskanego wyniku obliczeń możemy sądzić dopiero po jego wyprowadzeniu na zakończenie zadania obliczeniowego. Brak możliwości ingerowania w bieżące procesy obliczeniowe staje się źródłem nieuzasadnionych strat wynikających z konie­czności doprowadzania do końca procesów realizacji zadań obarczonych błędami. Ponadto wadami użytkowa­nia systemu cyfrowego w trybie pracy wsadowej są długie czasy oczekiwania i organizowania wsadu, a także daleko posunięta izolacja użytkownika od systemu cyfrowego. Warto zauważyć, że z opisywanym trybem użytkowania komputerów jest związane pojęcie czasu obrotu zadania, czyli czasu, który upływa między momentem oddania zadania do realizacji a momentem uzyskania wyniku obli­czeń.

EFEKTYWNOŚĆ ROZWIĄZANIA

Praca w trybie wsadowym polega na wprowadzeniu do pamięci komputera od razu całego zestawu programów, które pochodzą od różnych użytkowników. Zestaw taki nazywa się wsadem. Praca w tym trybie przebiega w następujących fazach:   gromadzenia zadań obliczeniowych;   tworzenia tzw. wsadu, czyli szeregowania zadań obli­czeniowych według zadanego kryterium, np. ważności,    wprowadzenia wsadu do maszyny cyfrowej i wyko­nanie kolejnych zadań;    wyprowadzenia wyników obliczeń.Efektywność tego rozwiązania jest zależna od zakresu autonomii pracy urządzeń zewnętrznych komputera. Jeżeli urządzenia te nie pracują automatycznie, to tryb pracy wsadowej nie różni się zbytnio od trybu konwencjo­nalnego. Jedyną zaletą opisywanego trybu jest eliminacja przestojów procesora związanych z oczekiwaniem na reakcje użytkownika w sytuacjach awaryjnych lub wpro­wadzenie kolejnego zadania. Pozostają natomiast wszyst­kie niedogodności pracy w trybie konwencjonalnym, a ponadto do wad tej organizacji pracy zaliczyć należy brak możliwości bezpośredniej współpracy człowieka z syste­mem cyfrowym oraz konieczność ciągłego organizowania wsadów.Odmiennie przedstawia się ten problem w przypadku systemu cyfrowego z pełną autonomią urządzeń zewnętrz­nych komputera (czyli działających niezależnie od jego procesora).

STYL PRACY

W okresie gdy tryb ten był ogólnie stosowanym sposo­bem użytkowania komputerów, wyróżniono następujące fazy cyklu obliczeniowego:   wczytanie programu napisanego w języku zewnętrz­nym;    jego translacja, czyli tłumaczenie na język wew­nętrzny;     wczytanie danych;   realizacja programu, czyli zadania obliczeniowego;    wyprowadzenie wyników obliczeń.Wykorzystanie zasobów systemu cyfrowego w poszcze­gólnych fazach takiego cyklu obliczeniowego jest nierów­nomierne. Wczytanie programu i danych oraz wyprowa­dzenie wyników obliczeń angażuje jedynie urządzenia wejściowo-wyjściowe, a procesor komputera jedynie syn­chronizuje i organizuje pracę tych urządzeń. W pozosta­łych dwóch fazach procesor jest wykorzystywany w pełni, natomiast prawie wcale nie są wykorzystywane jego urządzenia zewnętrzne. Taki styl pracy systemu cyfro­wego, w którym – oprócz nierównomiernego wykorzysty­wania jego zasobów – występowały często przestoje maszyny cyfrowej (zwłaszcza na etapie uruchamiania pro­gramu), szybko uznano za nieefektywny.Rozwiązaniem wyraźnie ograniczającym liczbę przesto­jów urządzeń systemu cyfrowego, a także rozdzielającym obszary działania programisty i operatora maszyny cyfro­wej, było wprowadzenie trybu pracy wsadowej, zwanego też trybem pracy partiowej.

FORMY UŻYTKOWANIA

Elementami współczesnych systemów cyfrowych są autonomicznie działające procesory, czyli urządzenia zdolne do samodzielnego wykonywania programów. Do grupy tych urządzeń są zaliczane także niektóre kanały. Obecność procesorów w strukturze wzmiankowanych systemów stwarza naturalną potrzebę stosowania zasady współbieżności ich pracy. Wyrazem doskonalenia metod praktycznego wykorzystania tej zasady w eksploatacji systemów liczących było wprowadzanie kolejnych, wydaj­niejszych trybów ich użytkowania. I tak, najprostrzym, a jednocześnie najstarszym, trybem wykorzystywania komputerów było oddanie go do wyłą­cznej dyspozycji jednego użytkownika na czas niezbędny do realizacji jego zadania obliczeniowego. Tryb ten jest zwany konwencjonalnym. Charakterystycznym jego ele­mentem była daleko posunięta integracja funkcji i obsza­rów działania programisty oraz operatora systemu. Wyni­kała ona z faktu, iż zazwyczaj ten pierwszy osobiście uruchamiał swój program i nadzorował jego wykonanie, albowiem – będąc dysponentem wszystkich możliwości systemu – mógł dynamicznie uczestniczyć w procesach obliczeniowych.

MYŚL BUDOWY

Urządzenia te są budowane z myślą o stworzeniu największych systemów cyfrowych, w których zastosowane byłyby techniczne układy nadzorczo-kontrolne, elementy o wysokim stopniu scalenia oraz w szerokim zakresie można byłoby „zrówno- leglić” działanie poszczególnych elementów składowych.Wśród przedstawicieli tej grupy komputerów należy wymienić: CDC 6600 (1964 r.) – superkomputer o prostej architekturze, z równolegle działającymi elementami skła­dowymi oraz rejestrami o charakterze pamięci notatniko­wej, wcześniej opisany CRAY 1 (1975 r.), wieloproceso­rowe superkomputery CRAY XMP (1984 r.) i CRAY 2 (1985 r.), a także CONVEX, zwany mini superkomputerem.O      aktualności wyżej opisanych wzorców może świad­czyć to, że dotyczą one różnych komputerów, niezależnie od poziomu technologii użytej do produkcji ich elementów składowych. Na przykład koncern Motorola po 10 latach prac wypuścił na rynek układ 68 020, który umożliwia stosowanie zapisu zmiennoprzecinkowego i wykorzysta­nie dużej pamięci wirtualnej, co w rezultacie daje realizację idei IBM 360 w technice mikroprocesorowej, zaś firma Semicondoctor National jako wzorcem dla swych wyro­bów posłużyła się architekturą minikomputera VAX.

CYKL ROZWOJOWY

Taki cykl rozwojowy jest charakterystyczny dla mikrokomputerów.Biorąc pod uwagę zmiany architektury komputerów, można obecnie wyróżnić cztery główne jej typy, a mianowicie:   prosty komputer (lata 1950-1960) oraz konwencjo­nalny mikroprocesor (1971 r.);  mikroprogramowany procesor interpretujący listę rozkazów (1964 r.);    mikroprogramowany procesor z pamięcią notatni­kową (1968 r.);    rozbudowany procesor z oddzielną pamięcią notatni­kową dla instrukcji i danych (1985 r.).Poglądowo typy te przedstawiono na rys. 17. Występu­jąca tam pamięć notatnikowa, zastała po raz pierwszy zastosowana w komputerach IBM 360/85 jako pamięć o małej pojemności służąca do przechowywania wcześniej odczytanych danych z pamięci operacyjnej. Dzięki takiemu zabiegowi rozbieżność między szybkościami działania pro­cesorów pamięci operacyjnej została zniwelowana do zera. Biorąc pod uwagę chronologię rozwoju poszczególnych klas komputerów, można szeregować kolejnych ich przed­stawicie. Warto zauważyć, że w ramach powyższego podziału mieszczą się także wszystkie te rozwiązania, które są określane mianem superkomputerów.

KOMPUTERY W SYSTEMACH CYFROWYCH

Komputery należące do tej grupy pozwalają na zmniejszenie rozmiarów programów użytkowych dzięki istnieniu daleko posuniętej odpowiedzialności między źródłową postacią rozkazu i pojedynczą instrukcją maszy­nową. Tymczasem idea komputerów o zredukowanej liś­cie rozkazowej wynika z dążenia do skrócenia czasu reali­zacji programów przez uproszczenie pracy centralnego procesora.Drugi kierunek zmian wyznaczają rozwiązania wykorzy­stujące wektorowe typy danych w celu przyspieszenia czasu trwania obliczeń (zwłaszcza na potrzeby prac naukowo-badawczych). Prototypem rozwiązań technicz­nych i architektonicznych w tym obszarze był komputer CRAY-I zbudowany w 1975 r.Trzecim, wśród najważniejszych, kierunkiem zmian jest zastosowanie mikroprocesorów, które umożliwiają rozsze­rzenie obszaru wykorzystywania technologii wieloproce­sorowych, a tym samym – przyczyniają się do podniesie­nia efektywności działania całych systemów cyfrowych. Niezależnie jednak od stopnia i zakresu wpływu poszczególnych wyznaczników na aktualny stan rozwoju komputerów, można stwierdzić że ogólny cykl zmian obejmuje następujące etapy: komputer o minimalnej liście rozkazów, komputer o zredukowanej liście rozkazów,

 

KOMPLEKSY MASZYN

Obecnie można spotkać tzw. kompleksy maszyn cyfro­wych, czyli zestawy komputerów pracujących w syste­mach wieloprocesorowych i wielomaszynowych. Współ­praca między nimi może być organizowana na jednym z trzech poziomów:    najniższy ma miejsce wtedy, gdy dwa procesory wykorzystują wspólną pamięć zewnętrzną jako środek komunikacji;   wyższy – gdy wykorzystywany jest kanał transmisji danych między maszynami;   najwyższy – gdy dwa procesory wykorzystują wspólne pole pamięci operacyjnej.Analiza dotychczasowych zastosowań komputerów w systemach cyfrowych wskazuje na istnienie zarysowa­nych kierunków zmian ich architektury. Głównym wyzna­cznikiem tego procesu jest dążenie do pełnej realizacji idei komputera o tzw. zredukowanej liście rozkazów, dostoso­wanej do obszaru i specyfiki jego zastosowania. Rozwią­zaniem konkurencyjnym są komputery o tzw. pełnej liście rozkazów, to znaczy takiej, która obejmuje działania na wszystkich typach danych i za pomocą operacji typowych dla współczesnych języków programowania wysokiego poziomu.

WYMIENIONE CECHY

Wyżej wymienione cechy wraz z równoległą i prawie niezależną pracą arytmometru, pamięci operacyjnej i kanałów wejścia-wyjścia przyczyniają się do wydatnego zwiększenia mocy obliczeniowej eksploatowanych kompu­terów. W tej grupie elementów wymienić należy wielo- programowość, która pozwala na jednoczesne przetwarza­nie od kilku do kilkunastu programów użytkowych, a także subprogramowość, czyli organizację własną programów. Ta ostatnia pozwala na wydzielanie w programach auto­nomicznych segmentów, między którymi program może przekazywać sterowanie, mając na uwadze efektywność wykorzystania zasobów systemu komputerowego. Inną cechą współczesnych systemów komputerowych jest wie­lodostępność, dzięki której z jednostką centralną może współpracować kilkadziesiąt urządzeń zewnętrznych zain­stalowanych zarówno w niewielkiej, jak i dużej odległości od niej. Wiele komputerów jest wyposażonych w tzw. kanały przemysłowe, które umożliwiają sterowanie w cza­sie rzeczywistym. Dzięki nim jest możliwe automatyczne zbieranie informacji z wielu punktów pomiarowych okreś­lonego procesu fizycznego, przetwarzanie ich przez kom­puter, a następnie na podstawie uzyskanych wyników przetwarzania, sterowanie wieloma urządzeniami wyko­nawczymi w czasie i z szybkością zgodną z przebiegiem procesu technologicznego.

OPARCIE SYSTEMU

Aby system operacyjny mógł tę funkcję właściwie zreali­zować, użytkownik powinien załączać do każdego swego programu informację pozwalającą go identyfikować oraz prowadzić właściwą gospodarkę zasobami systemu. Informacje te są podawane w postaci opisu pracy zleconej systemowi operacyjnemu. Typowy opis pracy zawiera nazwę pracy, wykaz urządzeń wejściowych i wyjściowych oraz pamięci zewnętrznych, podaje warunku wyjątkowe, określa nazwy wykorzystywanych programów biblioteki systemowej, postać wyniku końcowego itp. Biorąc powyższe pod uwagę, można stwierdzić, że reali­zując swoje funkcje, system operacyjny angażuje kompu­ter na czas, który użytkownik może uznać za bezproduk­tywnie stracony. Opinia ta będzie prawdziwa jedynie wtedy, gdy w wyniku działania systemu operacyjnego nie nastąpi automatyzacja wszystkich czynności niezbędnych przy zarządzaniu i operowaniu systemem, a w jej rezultacie wzrost efektywności działania systemu komputerowego.Główne funkcje współczesnych systemów operacyjnych to:  sterowanie współpracą elementów sprzętu liczącego;zarządzanie i kontrola wymiany informacji w syste­mie liczącym;   sterowanie procesami wejścia-wyjścia;   zarządzanie pamięciami;  organizacja przebiegu prac użytkowych;konwersacja z operatorem i użytkownikiem;   detekcja i korekcja błędów oprogramowania;sygnalizacja i lokalizacja awarii sprzętu.