W PROCESIE PRZYGOTOWANIA ZADAŃ

Programy wykorzystywane w procesie przygotowania zadań dla systemu – to przede wszystkim programy aktua­lizacji, sortowania i łączenia zbiorów, wyszukiwania informacji, a także opracowywania i wyprowadzania sprawozdań. Podobnie jak programy obsługi technicznej, są dostarczane w formie firmowych pakietów opro­gramowania, które są uzupełniane w trakcie ich eksploata­cji.Programy symulujące umożliwiają symulację działania jednej maszyny cyfrowej przez drugą. Mogą one służyć do sprawdzania programów opracowanych dla przyszłego systemu cyfrowego za pomocą innego systemu. Taka moż­liwość pozwala wykorzystywać je na etapie projektowania systemów cyfrowych w celu badania przebiegów czaso­wych i funkcjonalnych przyszłego systemu oraz opraco­wywania ocen proponowanych rozwiązań.Oprogramowanie użytkowe tworzą programy, dzięki któ­rym – za pomocą systemu cyfrowego – użytkownik może rozwiązywać praktyczne problemy techniczne, gospodar­cze, naukowe itp. Programy te mogą pochodzić z kilku źró­deł: od producenta sprzętu komputerowego, wyspecjali­zowanej firmy produkującej oprogramowanie, innych użytkowników tego samego sprzętu, a także mogą być wytworzone przez samego użytkownika.

WŚRÓD ZNANYCH PROGRAMÓW

Wśród znanych programów diagnostycznych można wskazać dwa ich typy, mianowicie włączone do systemu operacyjnego i tworzące z nim integralną całość oraz wprowadzane do systemu i uruchamiane zgodnie z zaist­niałymi potrzebami. Pierwsze z nich służą do automaty­cznego i okresowego stwierdzania stanu technicznego eksploatowanego sprzętu, drugie zaś – do określania stanu przydatności eksploatacyjnej sprzętu po usunięciu (lub przeprowadzeniu remontu) lub lokalizacji źródła awarii.Programy obsługi procesu przetwarzania – to programy kopiujące i ładujące. Programy kopiujące służą do zapisy­wania zawartości określonych obszarów pamięci systemu na innych bądź wyprowadzania ich na różne urządzenia systemu. Mówiąc o programach ładujących, należy pamię­tać o tym, że każdy system cyfrowy wyposażony jest w kilka ich typów. Ogólnie rzecz biorąc, programy te wyko­rzystywane są do wprowadzenia do pamięci systemu danych lub programów, kiedy nie można wykorzystać w tym celu systemu operacyjnego (np. awaria).

GRUPY TRANSLATORÓW

W drugiej zaś – translatory języków deskryptorowych oraz operacyjnych. Wśród tych ostatnich wyróżnia się jeszcze grupy translatorów języków algorytmicznych, dialogowych oraz problemowych.W bibliotekach oprogramowania współczesnych syste­mów cyfrowych można spotkać także środki umożliwia­jące tworzenie opisów zadań za pomocą języków opero­wania systemami cyfrowymi zwanymi językami komend. Języki te zostały zaprojektowane w taki sposób, aby umoż­liwić użytkownikom systemów wyrażanie ich żądań w sposób możliwie prosty. Z tego punktu widzenia system operacyjny można traktować jako interpretatora wyrażeń zapisanych za pomocą języka komend.Programy pomocnicze dzielą się na trzy następujące grupy programów:obsługi technicznej;  obsługi procesu przetwarzania;   przygotowania zadań dla systemu. Programy obsługi technicznej tworzą zazwyczaj tzw. firmowe pakiety diagnostyczne. Pakiety te służą do sprawdzania sprzętu i lokalizacji uszkodzeń zarówno w całym systemie, jak i w poszczególnych jego elementach.

WYKORZYSTYWANE SYSTEMY

Wykorzystywane systemy ope­racyjne dopuszczają dwa tryby pracy systemu cyfrowego: przetwarzanie wsadowe i zdalne przetwarzanie danych;    wieloprogramowość realizowana w formach prze­twarzania wsadowego i zdalnego przetwarzania danych;    wirtualizacja pamięci, czyli jednorodne traktowanie wszystkich obszarów pamięci systemu, niezależnie od tego, czy są one związane z pamięcią operacyjną kompu­tera, czy też z urządzeniami pamięci zewnętrznych; rozdzielność architektury procesora i systemu wyra­żająca się przejęciem większości dotychczasowych funkcji systemu operacyjnego przez sprzęt. Dzięki temu systemy cyfrowe o modułowej strukturze są przystosowane do wymagań zdalnego przetwarzania danych i są przez nie sterowane. Z systemami operacyjnymi, zaliczanymi do tej grupy, są związane takie rozwiązania jak „proto-systemy”, dzięki którym staje się możliwe użycie komputerów do rozwiązywania problemów bez formalnej znajomości pro­gramowania, oraz systemy odporne na awarie, a także umożliwiające zdalną naprawę jednostek, które uległy awariom.Translatory języków programowania oraz programy je wspomagające tworzą tzw. biblioteki, które ze względu na rodzaj zastosowań nazywane są bibliotekami języków zorientowanych maszynowo lub problemowo. W pier­wszej z nich znajduje się translator języka maszynowego wykorzystywanego komputera oraz języków symboli­cznych.

STRUKTURA OPROGRAMOWANIA

Warto także zauważyć, że zastosowanie zdalnego prze­twarzania wsadowego nie przyczynia się do skrócenia dłu­gości kolejki oczekujących zadań użytkowych, a więc me powoduje również skrócenia czasu oczekiwania użytkow­nika na wyniki realizacji jego programu. Tę wadę syste­mów przetwarzania wsadowego, tzw. stosunkowo dłu­giego czasu realizacji zadania użytkowego, eliminują systemy wielodostępne, o których będzie mowa w dalszej części .Oprogramowanie współczesnych systemów cyfrowych można podzielić na dwie grupy, a mianowicie: oprogra­mowanie systemowe (zwane też podstawowym) oraz użytkowe.Pierwszą grupę tworzą systemy operacyjne, translatory języków programowania, programy i podprogramy zwią­zane z poszczególnymi translatorami, programy pomocni­cze oraz symulujące. Najwyższą dynamiką zmian w tej grupie wyróżniają się systemy operacyjne, których rozwój wyznaczają następujące etapy: jednoprogramowość (programy realizowane są sze­regowo, jeden po drugim).

WARTO WSPOMNIEĆ

Warto także wspomnieć o samoobsługowej odmianie pracy w trybie wsadowym. Rozwiązanie to jest dostoso­wane do specyfiki i potrzeb użytkowników realizujących w sposób masowy krótkie zadania obliczeniowe. Sytuacja taka ma miejsce zwłaszcza w ośrodkach uczelnianych. Istota takiego rozwiązania sprowadza się do tego, że w czasie organizowanych sesji są uruchamiane typowe pro­gramy lub moduły, do których użytkownicy sami przygo­towują dane, wykorzystują je, a co najważniejsze w krót­kim czasie otrzymują wyniki obliczeń. Rozwiązanie to jednak narzuca pewne ograniczenia, które odnoszą się do wielkości zadania (nie więcej niż 400 wierszy druku) czasu pracy procesora (np. 200 s) oraz wykorzystywanego obszaru pamięci operacyjnej (np. 30 słów).Należy jednak pamiętać o tym, że dotychczasowe doświadczenia w eksploatacji systemów zdalnego prze­twarzania wykazują, iż elementem ograniczającym obszar ich zastosowania jest niewystarczająca szybkość trans­misji dostępnych linii telekomunikacyjnych. W rezultacie takiego stanu rzeczy rozwiązanie to jest stosowane tam, gdzie partie przesyłanych danych są stosunkowo niewiel­kie, a czas ich transmisji nie jest parametrem krytycznym.

ODDZIELNA GRUPA

Oddzielną grupę stanowią organizacje użytkowania systemów cyfrowych, w których odległości między jed­nostkami centralnymi a urządzeniami umożliwiającymi kontakt użytkowania z komputerem są znaczne. W grupie tej wymienić należy tryby zdalnego przetwarzania wsa­dowego oraz dialogowego wprowadzania zadań. Wyko­rzystanie tych trybów staje się możliwe w systemach, w których użytkownicy mają do dyspozycji własne stacje abonenckie połączone z komputerami za pomocą odpo­wiednich urządzeń łączności. Dzięki nim przy użyciu swojego terminalu użytkownik może wprowadzać dane i pro­gramy do komputera oraz uzyskiwać wyniki ich realizacji. Różnica między wymienionymi trybami polega na tym, że pierwszy z nich dopuszcza jedynie pasywną rolę użytkow­nika (tzw. pełne jego odseparowanie od przebiegu realiza­cji wprowadzonych zadań), drugi zaś – daleko posuniętą aktywność dzięki wyprowadzanym informacjom o stanie realizacji wprowadzonych zadań oraz pewnym formom dopuszczalnej ingerencji w tok wykonywania programów.

WŁAŚCIWE OKREŚLENIE PRIORYTETU

Dzięki właściwemu określeniu priorytetów reali­zowanych programów użytkownicy mogą mieć – chociaż tylko pośredni – wpływ na przebieg wykonywania obliczeń lub przetwarzania danych.Należy jednak wyraźnie podkreślić, że zastosowanie przetwarzania wielokrotnego może mieć miejsce jedynie dzięki zastosowaniu mechanizmów tzw. podziału czasu procesora oraz pamięci operacyjnej między poszczególne programy. Spełnienie tego warunku jest możliwe tylko w komputerach wyposażonych w odpowiednie kanały (mul- tipleksorowe lub selektorowe), służące do przesyłania danych między pamięcią operacyjną a urządzeniami zewnętrznymi komputera, niezależnie od działania innych układów. W wielu współczesnych systemach cyfrowych można spotkać pamięci zewnętrzne o dostępie swobodnym. Dzięki tym urządzeniom stało się możliwe swobodne kształtowanie kolejności zadań obliczeniowych w ramach danego wsadu. Wykorzystanie tej możliwości jest nazy­wane trybem przetwarzania zadań lub dialogowym wpro­wadzaniem zadań i wyraźnie odróżnianym od przetwarza­nia wsadowego. Zastosowanie opisywanego trybu zapew­nia sprawniejszą ralizację wybranych zadań.

ODRÓŻNIAJĄCY ELEMENT

Elementem odróżniającym ten ostatni tryb użytkowania od poprzednio opisywanego jest odejście od zasady, że zainicjowane zadanie musi być realizowane do końca. Przetwarzanie wieloprogramowe (oraz związana z nim cecha komputerów zwana wieloprogramowaniem) poz­wala na taką organizację wykorzystania procesora, dzięki której w momencie pojawienia się warunków uniemożli­wiających realizację wykonywanego programu (np. brak danych) następuje jego zawieszenie, a procesor przystę­puje do wykonywania innego programu. W ten sposób wykorzystuje się wszystkie ewentualne przestoje proce­sora charakterystyczne dla pracy w trybie konwencjonal­nym lub wsadowym z nieautonomicznymi urządzeniami zewnętrznymi. Oczywiście, w momencie zniknięcia warun­ków powodujących zawieszenie uprzednio realizowanego i programu aktualnie wykonywany zostaje zawieszony, a procesor przechodzi do kontynuacji przebiegu pier­wszego. Jednakże organizacja ta wymaga określenia prio­rytetów realizowanych programów po to, aby tok realizacji programu ważniejszego (czyli o wyższym priorytecie) był przerywany wyłącznie w przypadkach przyczyn obiektyw­nych (np. wspomniany brak danych), realizacja zaś pro­gramów mniej ważnych (a więc o nizszych priorytetach) mogła mieć miejsce w okresach zawieszenia tych pier­wszych.

WPŁYW POJĘCIA

Pojęcie to ma nie tylko zastosowanie na etapie organizacji procesu użytkowania systemu cyfrowego, ale także określa okres utraty kontroli użytkownika nad swoim zadaniem. Mając powyższe na względzie, przyjmuje się, że praca w trybie wsadowym może mieć zastosowanie zwła­szcza tam, gdzie potrzeby związane z użytkowaniem systemów cyfrowych maję charakter zapotrzebowań seryjnych na realizację zadań zgłaszanych szeregowo i okresowo.Uzyskanie większej przepustowości systemu cyfrowego, a zwłaszcza lepsze wykorzystanie jego procesora, stało się możliwe dzięki zastosowaniu trybu tzw. przetwarzania wielokrotnego. Istota tego rozwiązania polega na tym, że komputer może jednocześnie realizować więcej niż jedno zadanie. Biorąc pod uwagę użytkowe formy zastosowania tego pomysłu, należy wyróżnić przetwarzanie wieloproce­sorowe i wieloprogramowe. Pierwsze z nich ma miejsce wtedy, gdy w systemie pracują co najmniej dwa proce­sory pracujące autonomicznie, wykorzystując wspólną pamięć i rozdzielające między siebie różne funkcje. Przet­warzanie wieloprogramowe oparte jest na szczególnej pracy procesora, który w kolejnych odstępach czasu reali­zuje następujące po sobie fragmenty różnych programów, dając w efekcie wrażenie ich jednoczesnego wyko­nywania.