Podstawy Systemów Operacyjnych – A. Silberschatz 2.1 ę · Podstawy Systemów Operacyjnych –...

5
1 I. Pardyka – Akademia Świętokrzyska 2.1 Podstawy Systemów Operacyjnych – A. Silberschatz Struktury systemów komputerowych Dzialanie systemu komputerowego Struktura we/wy Struktura pamięci Hierarchia pamięci Ochrona sprzętowa Architektura I. Pardyka – Akademia Świętokrzyska 2.2 Podstawy Systemów Operacyjnych – A. Silberschatz Architektura systemu komputerowego I. Pardyka – Akademia Świętokrzyska 2.3 Podstawy Systemów Operacyjnych – A. Silberschatz Dzialanie systemu komputerowego CPU i urządzenia we/wy mogą pracować wspólbieżnie. Każdym urządzeniem steruje kontroler (sterownik urządzenia). Każdy sterownik posiada lokalny bufor. CPU przesyla dane z/do pamięci do/z lokalnego bufora. Pod pojęciem we/wy rozumie się urządzenie wraz z buforem sterownika. Sterownik urządzenia informuje CPU, że zakończyl operację we/wy generując przerwanie (interrupt). I. Pardyka – Akademia Świętokrzyska 2.4 Podstawy Systemów Operacyjnych – A. Silberschatz Przerwania Przerwanie przekazuje sterowanie do procedury obslugi przerwania za pośrednictwem wektora przerwań (interrupt vector), który zawiera adresy wszystkich procedur obslugi. Konieczność zapamiętania adresu przerwanej instrukcji. Przychodzące przerwania są blokowane na czas obslugi aktualnie obslugiwanego. Pulapka (trap) to przerwanie generowane programowo, powodowane przez bląd lub żądanie użytkownika. System operacyjny jest sterowany przerwaniami (interrupt driven). I. Pardyka – Akademia Świętokrzyska 2.5 Podstawy Systemów Operacyjnych – A. Silberschatz Obsluga przerwań (Interrupt Handling) System operacyjny zachowuje stan CPU: stan licznika programu Stan innych rejestrów. Określa typ przerwania: odpytywanie (polling) Wektorowe (vectored interrupt system) Dla każdego typu przerwań oddzielne procedury. I. Pardyka – Akademia Świętokrzyska 2.6 Podstawy Systemów Operacyjnych – A. Silberschatz Wykres czasowy przerwań w trakcie operacji wyjścia

Transcript of Podstawy Systemów Operacyjnych – A. Silberschatz 2.1 ę · Podstawy Systemów Operacyjnych –...

Page 1: Podstawy Systemów Operacyjnych – A. Silberschatz 2.1 ę · Podstawy Systemów Operacyjnych – A. Silberschatz 2.15 I.Pardyka–AkademiaŚwiętokrzyska Hierarchia urządzeńpamięciowych

1

I. Pardyka – Akademia Świętokrzyska2.1Podstawy Systemów Operacyjnych – A. Silberschatz

Struktury systemów komputerowych

Działanie systemu komputerowegoStruktura we/wyStruktura pamięci

Hierarchia pamięciOchrona sprzętowa

Architektura

I. Pardyka – Akademia Świętokrzyska2.2Podstawy Systemów Operacyjnych – A. Silberschatz

Architektura systemu komputerowego

I. Pardyka – Akademia Świętokrzyska2.3Podstawy Systemów Operacyjnych – A. Silberschatz

Działanie systemu komputerowego

CPU i urządzenia we/wy mogą pracować współbieżnie.Każdym urządzeniem steruje kontroler (sterownikurządzenia).

Każdy sterownik posiada lokalny bufor.CPU przesyła dane z/do pamięci do/z lokalnego bufora.

Pod pojęciem we/wy rozumie się urządzenie wraz zbuforem sterownika.

Sterownik urządzenia informuje CPU, że zakończyłoperację we/wy generując przerwanie (interrupt).

I. Pardyka – Akademia Świętokrzyska2.4Podstawy Systemów Operacyjnych – A. Silberschatz

Przerwania

Przerwanie przekazuje sterowanie do procedury obsługiprzerwania za pośrednictwem wektora przerwań(interrupt vector), który zawiera adresy wszystkichprocedur obsługi.Konieczność zapamiętania adresu przerwanej instrukcji.

Przychodzące przerwania są blokowane na czas obsługiaktualnie obsługiwanego.

Pułapka (trap) to przerwanie generowane programowo,powodowane przez błąd lub żądanie użytkownika.

System operacyjny jest sterowany przerwaniami (interruptdriven).

I. Pardyka – Akademia Świętokrzyska2.5Podstawy Systemów Operacyjnych – A. Silberschatz

Obsługa przerwań (Interrupt Handling)

System operacyjny zachowuje stan CPU:stan licznika programu

Stan innych rejestrów.

Określa typ przerwania:odpytywanie (polling)Wektorowe (vectored interrupt system)

Dla każdego typu przerwań oddzielne procedury.

I. Pardyka – Akademia Świętokrzyska2.6Podstawy Systemów Operacyjnych – A. Silberschatz

Wykres czasowy przerwań w trakcie operacji wyjścia

Page 2: Podstawy Systemów Operacyjnych – A. Silberschatz 2.1 ę · Podstawy Systemów Operacyjnych – A. Silberschatz 2.15 I.Pardyka–AkademiaŚwiętokrzyska Hierarchia urządzeńpamięciowych

2

I. Pardyka – Akademia Świętokrzyska2.7Podstawy Systemów Operacyjnych – A. Silberschatz

Struktura we/wy – tryby pracy

Po rozpoczęciu operacji we/wy, sterowanie jest zwracaneprogramowi użytkownika dopiero po zakończeniu operacjiwe/wy.

Instrukcja wait (czekaj) wprowadza CPU w stan bezczynny (iddle)aż do następnego przerwaniaPętla wait (rywalizacja o dostęp do pamięci).Co najwyżej jedno zamówienie na transmisje danych pozostajenieobsłuzone, wykluczona jest równoczesna praca urządzeń.

Po rozpoczęciu operacji we/wy, sterowanie jest zwracaneprogramowi użytkownika natychmiast, nie czekając nazakończenie operacji we/wy.

Odwołanie do systemu operacyjnego (System call) – żądanieskierowane do systemu, aby pozwolił użytkownikowi nazakończenie operacji we/wy.Tablica stanów urządzeń (Device-status table) dla każdegourządzenia zawiera: typ, adres i stan (nieoperatywne, bezczynne,zajęte).System operacyjny odwołuje się do tej tablicy aby określić stanurządzenia i modyfikować jej zawartość, odnotowując przerwanie.

I. Pardyka – Akademia Świętokrzyska2.8Podstawy Systemów Operacyjnych – A. Silberschatz

Metody obsługi we/wy

Synchroniczna Asynchroniczna

I. Pardyka – Akademia Świętokrzyska2.9Podstawy Systemów Operacyjnych – A. Silberschatz

Tabela stanu urządzenia

I. Pardyka – Akademia Świętokrzyska2.10Podstawy Systemów Operacyjnych – A. Silberschatz

Struktura bezpośredniego dostępu dopamięci (DMA)

Dla urządzeń we/wy mogących przesyłać informacje zprędkością porównywalną do prędkości pamięci.Sterownik urządzenia przesyła bloki danych do/z pamięcigłównej bez pośrednictwa CPU.Przerwania generowane są po każdym bloku, a nie pokażdym bajcie.

I. Pardyka – Akademia Świętokrzyska2.11Podstawy Systemów Operacyjnych – A. Silberschatz

Storage Structure

Pamięć główna, operacyjna (Main memory) – pamięć, doktórej CPU ma dostęp bezpośredni.Pamięć pomocnicza (Secondary storage) – rozszerzeniepamięci głównej o część nieulotną.Dyski magnetyczne (Magnetic disks) – metalowe lubszklane talerze pokryte warstwą materiałumagnetycznego.

Powierzchnia dysku jest logicznie podzielona na ścieżki(tracks), które dzielą się na sektory.

Sterownik dysku odpowiada za interakcję urządzenia ikomputera.

I. Pardyka – Akademia Świętokrzyska2.12Podstawy Systemów Operacyjnych – A. Silberschatz

Mechanizm przesuwania głowic

Page 3: Podstawy Systemów Operacyjnych – A. Silberschatz 2.1 ę · Podstawy Systemów Operacyjnych – A. Silberschatz 2.15 I.Pardyka–AkademiaŚwiętokrzyska Hierarchia urządzeńpamięciowych

3

I. Pardyka – Akademia Świętokrzyska2.13Podstawy Systemów Operacyjnych – A. Silberschatz

Mechanizm przesuwania głowic

I. Pardyka – Akademia Świętokrzyska2.14Podstawy Systemów Operacyjnych – A. Silberschatz

Hierarchia pamięci

Ze względu na:PrędkośćKosztUlotność

Caching – kopiowanie informacji do szybkiej pamięcisystemu (kieszeni); pamięć główna może być traktowanajako pamięć kieszeniowa dla pamięci pomocniczej.

I. Pardyka – Akademia Świętokrzyska2.15Podstawy Systemów Operacyjnych – A. Silberschatz

Hierarchia urządzeń pamięciowych

I. Pardyka – Akademia Świętokrzyska2.16Podstawy Systemów Operacyjnych – A. Silberschatz

Pamięć kieszeniowa

Szybka pamięć do przechowywania danych ostatnioużywanych.

Potrzebny system zarządzania pamięcią kieszeniowej.

I. Pardyka – Akademia Świętokrzyska2.17Podstawy Systemów Operacyjnych – A. Silberschatz

Przesyłanie A z dysku do rejestru

I. Pardyka – Akademia Świętokrzyska2.18Podstawy Systemów Operacyjnych – A. Silberschatz

Ochrona sprzętowa

Operacji trybu dualnego (rozkazy uprzywilejowane)We/wyPamięci

CPU

Page 4: Podstawy Systemów Operacyjnych – A. Silberschatz 2.1 ę · Podstawy Systemów Operacyjnych – A. Silberschatz 2.15 I.Pardyka–AkademiaŚwiętokrzyska Hierarchia urządzeńpamięciowych

4

I. Pardyka – Akademia Świętokrzyska2.19Podstawy Systemów Operacyjnych – A. Silberschatz

Operacje w trybie dualnym

Dzielenie zasobów systemowych wymaga aby SOzapewnił, żeby żaden nieprawidłowo działający programnie powodował błędnego wykonania innego programu.SO rozróżnia dwa tryby pracy:1. Tryb użytkownika (User mode) – wykonywanie w imieniu

użytkownika.2. Tryb monitora albo systemowy, czasem: tryb jądra (Monitor

mode) – wykonanie w imieniu systemu operacyjnego.

I. Pardyka – Akademia Świętokrzyska2.20Podstawy Systemów Operacyjnych – A. Silberschatz

Tryby pracy

Bit trybu pracy (Mode bit) wskazuje na bieżący tryb:monitor (0), user (1).W przypadku przerwania lub błędu sprzętoweprzełączanie w tryb systemowy.

Instrukcje uprzywilejowane wykonują się tylko w trybiesystemowym.

monitor user

Interrupt/fault

set user mode

I. Pardyka – Akademia Świętokrzyska2.21Podstawy Systemów Operacyjnych – A. Silberschatz

Ochrona we/wy

Instrukcje we/wy - uprzywilejowane.SO powinien zapewnić, że użytkownik nigdy nie przejmiekontroli nad komputerem pracującym w trybiesystemowym (przechwyci wektor przerwań).

I. Pardyka – Akademia Świętokrzyska2.22Podstawy Systemów Operacyjnych – A. Silberschatz

Operacja we/wy

I. Pardyka – Akademia Świętokrzyska2.23Podstawy Systemów Operacyjnych – A. Silberschatz

Ochrona pamięci

Ochrona wektora przerwań i procedur obsługi przerwań.Rejestry sprzętowe:

Rejestr bazowy (Base register) – przechowujenajmniejszy dopuszczalny adres pamięci fizycznej.

Rejestr zakresu (Limit register) – zawiera rozmiar obszaru

Pamięć poza przyznanym obszarem jest chroniona.

I. Pardyka – Akademia Świętokrzyska2.24Podstawy Systemów Operacyjnych – A. Silberschatz

Rejestry: bazowy i zakresu

Page 5: Podstawy Systemów Operacyjnych – A. Silberschatz 2.1 ę · Podstawy Systemów Operacyjnych – A. Silberschatz 2.15 I.Pardyka–AkademiaŚwiętokrzyska Hierarchia urządzeńpamięciowych

5

I. Pardyka – Akademia Świętokrzyska2.25Podstawy Systemów Operacyjnych – A. Silberschatz

Sprzętowa ochrona adresu

I. Pardyka – Akademia Świętokrzyska2.26Podstawy Systemów Operacyjnych – A. Silberschatz

Zmiany rejestrów

W trybie monitora SO ma nieograniczony dostęp dopamięci systemu i użytkownika.

Instrukcje ładowania rejestrów bazowego i zakresu sąuprzywilejowane.

I. Pardyka – Akademia Świętokrzyska2.27Podstawy Systemów Operacyjnych – A. Silberschatz

Ochrona CPU

Zegar (Timer) – generuje cyklicznie przerwania, abyzapewnić SO kontrolę nad pracą.

Zegar jest dekrementowany za każdym taktem.Gdy osiągnie 0, generowane jest przerwanie.

Zwykle w systemach z podziałem czasu.

Ustawianie zegara jest operacją uprzywilejowaną.

I. Pardyka – Akademia Świętokrzyska2.28Podstawy Systemów Operacyjnych – A. Silberschatz

Struktury sieci

Lokalne - Local Area Networks (LAN)Rozległe - Wide Area Networks (WAN)

I. Pardyka – Akademia Świętokrzyska2.29Podstawy Systemów Operacyjnych – A. Silberschatz

Struktura sieci lokalnej LAN

I. Pardyka – Akademia Świętokrzyska2.30Podstawy Systemów Operacyjnych – A. Silberschatz

Struktura sieci rozległej WAN