(I) pierwsze systemy:
• urządzenia wejściowe - czytniki kart
- sygnaizacja błędów - lampki
- problemy - planowanie czasu i czas na przygotowania
- podawało się maszynie kartki z kodem źródłowym a ona wykonywała program
(II) proste systemy wsadowe
- programy nazywane 'monitorami'
- program zarządzający (rezydentny program zarządzający, który znajduje się w pamięci głównej, wczytuje następne zadanie do wykonania, zadanie to jest lokowane w pamięci użytkowej, a sterowanie przekazane temu zadaniu (czyli procesor teraz wykonuje rozkazy przychodzące z programu użytkownika, czyli od użytkownika danego programu), gdy zadanie jest zakończone następuje przerwanie i przekazanie sterowania programowi zarządzającemu, który pobiera kolejne zadanie, a wyniki są drukowane dla użytkowników
- program zarządzający ustawia w kolejce i podaje procesorowi zadania stanowiące wsad, przyspiesza to dziabnie systemu
Cechy takich systemów:
a) ochrona pamięci:
- wykonanie programu użytkownika nie może zmieniać pamięci programu zarządzającego, gdy tak się dzieje zwraca się błąd
b) czasomierz:
■ każdy program ma ustaloną granicę czasu na swoje wykonanie, jak ją przekroczy to zwraca się błąd i przekazuje sterowanie programowi zarządzającemu
c) rozkazy uprzywlejowane:
- są wykonywane tylko przez program zarządzający (np. we/wy)
- jeże! procesor napotka rozkaz uprzywilejowany, to zwraca błąd i przekazuje sterowane do PZ
- jezel program użytkowy choe wykonać rozkaz we/wy, to musi poprosić o zrobienie tego PZ
(III) wyrafinowane systemy wsadowe:
- urządzenia we/wy są wolniejsze w stosunku do procesora, dlatego procesor musi czekać na zakończene wykonywania rozkazów we/wy, aby kontynuować swoją pracę
• aby nie marnować czasu pamięć poszerzamy do welkośa wystarczającej db systemu operacyjnego (rezydentnego programu zarządzającego i 1,2,3 programów użytkowych), wtedy jak jeden z tych programów wykonuje zadania we/wy, procesor przeskakuje do drugiego i wykonuje jego rozkazy, itd. Gest to tzw. widoprogramowanie)
- takie systemy wymagają większej iiośb pamięci, aby przechować kika programów użytkowych jednocześnie, oraz algorytmu szeregowania zadań, żeby wiedzieć na które zadanie „przeskoczyć"
Wykorzystanie wieloprogramowania:
a) wleloprogramowane wsadowe:
- celem jest maksymalne wykorzystanie procesora
• źródłem rozkazów db systemu są rozkazy sterujące wykonywaniem zadania wraz z zadaniem
b) system z podziałem czasu (nastawiony na konwersację z użytkownikiem):
- celem jest rrmimalny czas odpowiedzi komputera na rozkaz użytkownika
- źródłem rozkazów db systemu są rozkazy wprowadzane do konsoli, terminala, klawiatury
XI - język sterowania zadaniami
Zmiany koncepcji systemów operacyjnych w czasie:
1) brak oprogramowania
2) kompilatory i przetwarzanie wsadowe
3) systemy podziału czasu
4) systemy wielodostępne
5) systemy rozproszone
Weloprog ramowane:
- zadania pojedyncze znajdują się w pamięci, a procesor przełącza się między nimi
- zadanie albo korzysta z procesora abo przechodzi na korzystanie z we/wy, wtedy procesor przechodzi do innego zadania
- zadanie może mieć trzy stany: korzysta z procesora, korzysta z rozkazów we/wy, oczekuje Proces - realizowany program, zadanie (termin wprowadzony przez Multics)
Rodzaje szeregowania procesów:
a) szeregowanie średniookresowe - w przypadku pamęa wirtualnej
b) szeregowane wysokiego poziomu (długookresowe) - decyzja dotycząca dodania do puli programu do wykonania
c) szeregowanie krótkookresowe - wybór tego programu z oczekujących, który się wykona