1.System operacyjny jako element systemu komputerowego; funkcje.
System operacyjny - program pośredniczący między użytkownikiem i sprzętem. Jego zadaniem jest tworzenie środowiska, w którym użytkownik może wykonywać programy wygodnie i wydajnie a praca jest bezbłędna.
System operacyjny nadzoruje i koordynuje posługiwanie się sprzętem przez różne programy użytkowe, pracujące na zlecenie użytkowników.
System operacyjny(S.O.) musi stosować taktykę wybierania kolejności obsługi i rozwiązywania konfliktów w skutek jednoczesnego żądania tego samego zasobu. Musi też ochraniać jednych użytkowników prze drugimi, nadzorować przechowywanie danych i dokonywać pomiarów użytkowania sprzętu.
S.O. udostępnia użytkownikowi maszyny wirtualne, maszyny symulowane przez system wykonują programy napisane w ich języku.
S.O. dostarcza środków właściwego użycia, sprzętu, oprogramowania i danych oraz przydziela zasoby programów użytkownika, gdy są one nieodzowne do wykonywania zadań.
S.O. jest programem sterującym, przeciwdziałającym błędom, nadzorującym programy użytkowe, obsługującym i kontrolującym urządzenia WE/WY.
2.Buforowanie i spooling; cechy
Buforowanie - jest to metoda jednoczesnego wykonywania obliczeń i operacji WE/WY dla pojedynczego zadania.
Wejście - po przeczytaniu danych, kody procesor może zacząć je przetwarzać poleca się urządzeniu wejściowemu, rozpoczęcie czytania następnych danych.
Wyjście - procesor przesyła wyniki do bufora skąd może je pobrać urządzenia wyjściowe. Następuje wygładzanie wahań czasu zużytego na przetwarzanie rekordu.
Spooling - jednoczesna bezpośrednia praca urządzeń. Spooling pozwala na czytanie danych z max. wyprzedzeniem z urządzeń wejściowych i przechowywanie wyników dla urządzeń wyjściowych, gdy będą gotowe.
Przetwarzane zdalne odbywa się z właściwą prędkością bez interwencji jednostki centralnej.
Wytwarzana jest pula zadań - pewna liczba zadań gotowych do wykonania, poddana planowaniu.
3. Przerwanie w systemach z obsługą przerwań.
Przerwanie - sygnał synchronizujący wpisywany przez urządzenie peryferyjne do rejestru związanego z procesorem centralnym.
Po wykonaniu każdej instrukcji procesor sprawdza zawartość tego rejestru. Gdy pojawi się sygnał przerwania procesor wstrzymuje wykonywanie aktualnego programu i rozpoczyna wykonywanie procedury obsługi przerwań, potem wraca wznawiając program.
5. Realizacja rozkazów wejścia i wyjścia jako rozkazów uprzywilejowanych.
Niektóre rozkazy uprzywilejowane to włączenie i wyłączenie systemu przerwań, przejście z trybu użytkownika w tryb monitora, zmiana bitu trybu pracy, rozkazy WE/WY. użytkownik nie może ich wykonywać w trybie użytkownika, lecz może zlecić je S.O. do wykonania w trybie monitora.
Odwołanie do systemu działa jak przerwanie programowe - pułapka monitora sprawdza rozkaz uprzywilejowany, identyfikuje parametr odwołania - rodzaj usługi np. czytanie. za pośrednictwem wektora przerwań sterowanie jest przekazywane do odpowiedniej procedury obsługi. System wykonuje zamówienie i przekazuje sterowanie do rozkazu kolejnego po odwołaniu.
6. Struktury systemów operacyjnych- opisać jedną.
Struktura prosta
Programy Użytkowe
Rezydujące programy użytkowe
Programy obsługi z poziomu S.O.
Programy obsługi urządzeń z poziomu ROM BIOS
Brak wyraźnego wydzielenia poziomów funkcjonalnych. Programy użytkowe mogą korzystać z podstawowych procedur WE/WY w celu bezpośredniego pisania na ekran lub dyski. Brak dualnego trybu pracy i ochrony sprzętowej, możliwość załamania systemu.
7. Funkcja bloku kontrolnego w zmianach stanu procesu np. kolejki planowania (schemat wraz z krótkim opisem).
Każdy proces jest reprezentowany w systemie przez swój blok kontrolny. Jest to blok danych opisujący:
- stan (nowy, gotowy, aktywny, czekający, wstrzymany)
- licznik rozkazów (adres następnej instrukcji do wykonania w procesie)
- rejestry (informacje w nich zapamiętane przechowywane są podczas przerwań)
- wykaz otwartych plików
- informacje o stanie urządzeń WE/WY (nie zrealizowane zamówienia, urządzenia przydzielone)
- ograniczenia pamięci
- informacji do rozliczeń.
Kolejki planowania
Wchodzące do systemu procesy trafiają do kolejki. Wyróżnia się 2 typy kolejek.
1) kolejka procesów gotowych - jest to lista procesów gotowych do wykonania, czekających na przydział procesora
2) kolejka do urządzeń - lista procesów czekających na konkretne urządzenie.