31
Systemy operacyjne wykład – dr Marcin Czarnota laboratorium mgr Radosław Maj

Systemy operacyjne - Uniwersytet Jana Kochanowskiego w ... · • Urządzenia wejścia-wyjścia: –udostępnianie i sterowanie urządzeniami pamięci masowej, –alokacja przestrzeni

  • Upload
    buingoc

  • View
    218

  • Download
    0

Embed Size (px)

Citation preview

Systemy operacyjne

wykład ndash dr Marcin Czarnota

laboratorium

ndash mgr Radosław Maj

Systemy operacyjne Wykład 1 231

Plan wykładoacutew

1 Wprowadzenie

2 Procesy wątki i zasoby

3 Planowanie przydziału procesora

4 Zarządzanie pamięcią operacyjną pamięć wirtualna

5 Urządzenia wejścia ndash wyjścia

6 System plikoacutew

7 Wspoacutełbieżność i synchronizacja procesoacutew

8 Zakleszczanie

Systemy operacyjne Wykład 1 331

Literatura1 A Silberschatz PB Galvin G Gagne Podstawy

systemoacutew operacyjnych wydanie szoacuteste WNT 2005 wydanie sioacutedme WNT 2006

2 A N Tanenbaum Modern operating systems third edition Pearson 2008

3 W Stallings Systemy operacyjne Robomatic Wrocław 2004

4 C Sobaniec System operacyjny Linux mdash przewodnik użytkownika Nakom Poznań 2002

httpwazniakmimuweduplindexphphttpth-wwwifujedupl~placzekdydaktykaSOwyklady

Systemy operacyjne Wykład 1 431

Wprowadzenie

System operacyjny

bull definicje

bull rola i zadania

Klasyfikacja systemoacutew operacyjnych

Zasada działania systemu operacyjnego

Systemy operacyjne Wykład 1 531

Definicje systemu operacyjnego

System operacyjny jest zbiorem ręcznych i automatycznych procedur ktoacutere pozwalają grupie osoacuteb na efektywne wspoacutełdzielenie urządzeń maszyny cyfrowej

Per Brinch Hansen

Systemy operacyjne Wykład 1 631

Definicje systemu operacyjnego

System operacyjny (nadzorczy nadrzędny sterujący) jest to zorganizowany zespoacuteł programoacutew ktoacutere pośredniczą między sprzętem a użytkownikami dostarczając użytkownikom zestawu środkoacutew ułatwiających projektowanie kodowanie uruchamianie i eksploatację programoacutew oraz w tym samym czasie sterują przydziałem zasoboacutew dla zapewnienia efektywnego działania

Alan Shaw

Systemy operacyjne Wykład 1 731

Definicje systemu operacyjnego

System operacyjny jest programem ktoacutery działa jako pośrednik między użytkownikiem komputera a sprzętem komputerowym Zadaniem systemu operacyjnego jest tworzenie środowiska w ktoacuterym użytkownik może wykonywać programy w sposoacuteb wygodny i wydajny

Abraham Silberschatz

Systemy operacyjne Wykład 1 831

Definicje systemu operacyjnego

System operacyjny jest warstwą oprogramowania operującą bezpośrednio na sprzęcie ktoacuterej celem jest zarządzanie zasobami systemu komputerowego i stworzenie użytkownikowi środowiska łatwiejszego do zrozumienia i wykorzystania

Andrew Tanenbaum

Systemy operacyjne Wykład 1 931

Miejsce systemu operacyjnego w

architekturze systemu komputerowego

Programy użytkowe

kompilator

Edytor

tekstu

Baza

danych

Użytkownicy

System operacyjny

Systemkomputerowy

Systemy operacyjne Wykład 1 1031

Architektura systemu

komputerowego

Systemy operacyjne Wykład 1 1131

Struktura systemu operacyjnego

jądro systemuoperacyjnego

sprzęt

interpreterpoleceń

programysystemowe

Systemy operacyjne Wykład 1 1231

Zadania systemu operacyjnego

bull Definicja interfejsu użytkownikabull Udostępnianie systemu plikoacutewbull Udostępnianie środowiska do wykonywania

programoacutew użytkownikandash mechanizm ładowania i uruchamiania

programoacutewndash mechanizmy synchronizacji i komunikacji

procesoacutewbull Sterowanie urządzeniami wejścia-wyjściabull Obsługa podstawowej klasy błędoacutew

Systemy operacyjne Wykład 1 1331

Zarządzanie zasobami systemu

komputerowego

bull Przydział zasoboacutewbull Planowanie dostępu do zasoboacutewbull Ochrona i autoryzacja dostępu do zasoboacutewbull Odzyskiwanie zasoboacutewbull Rozliczanie mdash gromadzenie danych o

wykorzystaniu zasoboacutew

Systemy operacyjne Wykład 1 1431

Zasoby zarządzane przez system

operacyjnybull Procesor mdash przydział czasu procesorabull Pamięć

ndash alokacja przestrzeni adresowej dla procesoacutewndash ochrona i transformacja adresoacutew

bull Urządzenia wejścia-wyjściandash udostępnianie i sterowanie urządzeniami pamięci

masowejndash alokacja przestrzeni dyskowejndash udostępnianie i sterownie drukarkami

skanerami itpbull Informacja (system plikoacutew)

ndash organizacja i udostępnianie informacjindash ochrona i autoryzacja dostępu do informacji

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 231

Plan wykładoacutew

1 Wprowadzenie

2 Procesy wątki i zasoby

3 Planowanie przydziału procesora

4 Zarządzanie pamięcią operacyjną pamięć wirtualna

5 Urządzenia wejścia ndash wyjścia

6 System plikoacutew

7 Wspoacutełbieżność i synchronizacja procesoacutew

8 Zakleszczanie

Systemy operacyjne Wykład 1 331

Literatura1 A Silberschatz PB Galvin G Gagne Podstawy

systemoacutew operacyjnych wydanie szoacuteste WNT 2005 wydanie sioacutedme WNT 2006

2 A N Tanenbaum Modern operating systems third edition Pearson 2008

3 W Stallings Systemy operacyjne Robomatic Wrocław 2004

4 C Sobaniec System operacyjny Linux mdash przewodnik użytkownika Nakom Poznań 2002

httpwazniakmimuweduplindexphphttpth-wwwifujedupl~placzekdydaktykaSOwyklady

Systemy operacyjne Wykład 1 431

Wprowadzenie

System operacyjny

bull definicje

bull rola i zadania

Klasyfikacja systemoacutew operacyjnych

Zasada działania systemu operacyjnego

Systemy operacyjne Wykład 1 531

Definicje systemu operacyjnego

System operacyjny jest zbiorem ręcznych i automatycznych procedur ktoacutere pozwalają grupie osoacuteb na efektywne wspoacutełdzielenie urządzeń maszyny cyfrowej

Per Brinch Hansen

Systemy operacyjne Wykład 1 631

Definicje systemu operacyjnego

System operacyjny (nadzorczy nadrzędny sterujący) jest to zorganizowany zespoacuteł programoacutew ktoacutere pośredniczą między sprzętem a użytkownikami dostarczając użytkownikom zestawu środkoacutew ułatwiających projektowanie kodowanie uruchamianie i eksploatację programoacutew oraz w tym samym czasie sterują przydziałem zasoboacutew dla zapewnienia efektywnego działania

Alan Shaw

Systemy operacyjne Wykład 1 731

Definicje systemu operacyjnego

System operacyjny jest programem ktoacutery działa jako pośrednik między użytkownikiem komputera a sprzętem komputerowym Zadaniem systemu operacyjnego jest tworzenie środowiska w ktoacuterym użytkownik może wykonywać programy w sposoacuteb wygodny i wydajny

Abraham Silberschatz

Systemy operacyjne Wykład 1 831

Definicje systemu operacyjnego

System operacyjny jest warstwą oprogramowania operującą bezpośrednio na sprzęcie ktoacuterej celem jest zarządzanie zasobami systemu komputerowego i stworzenie użytkownikowi środowiska łatwiejszego do zrozumienia i wykorzystania

Andrew Tanenbaum

Systemy operacyjne Wykład 1 931

Miejsce systemu operacyjnego w

architekturze systemu komputerowego

Programy użytkowe

kompilator

Edytor

tekstu

Baza

danych

Użytkownicy

System operacyjny

Systemkomputerowy

Systemy operacyjne Wykład 1 1031

Architektura systemu

komputerowego

Systemy operacyjne Wykład 1 1131

Struktura systemu operacyjnego

jądro systemuoperacyjnego

sprzęt

interpreterpoleceń

programysystemowe

Systemy operacyjne Wykład 1 1231

Zadania systemu operacyjnego

bull Definicja interfejsu użytkownikabull Udostępnianie systemu plikoacutewbull Udostępnianie środowiska do wykonywania

programoacutew użytkownikandash mechanizm ładowania i uruchamiania

programoacutewndash mechanizmy synchronizacji i komunikacji

procesoacutewbull Sterowanie urządzeniami wejścia-wyjściabull Obsługa podstawowej klasy błędoacutew

Systemy operacyjne Wykład 1 1331

Zarządzanie zasobami systemu

komputerowego

bull Przydział zasoboacutewbull Planowanie dostępu do zasoboacutewbull Ochrona i autoryzacja dostępu do zasoboacutewbull Odzyskiwanie zasoboacutewbull Rozliczanie mdash gromadzenie danych o

wykorzystaniu zasoboacutew

Systemy operacyjne Wykład 1 1431

Zasoby zarządzane przez system

operacyjnybull Procesor mdash przydział czasu procesorabull Pamięć

ndash alokacja przestrzeni adresowej dla procesoacutewndash ochrona i transformacja adresoacutew

bull Urządzenia wejścia-wyjściandash udostępnianie i sterowanie urządzeniami pamięci

masowejndash alokacja przestrzeni dyskowejndash udostępnianie i sterownie drukarkami

skanerami itpbull Informacja (system plikoacutew)

ndash organizacja i udostępnianie informacjindash ochrona i autoryzacja dostępu do informacji

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 331

Literatura1 A Silberschatz PB Galvin G Gagne Podstawy

systemoacutew operacyjnych wydanie szoacuteste WNT 2005 wydanie sioacutedme WNT 2006

2 A N Tanenbaum Modern operating systems third edition Pearson 2008

3 W Stallings Systemy operacyjne Robomatic Wrocław 2004

4 C Sobaniec System operacyjny Linux mdash przewodnik użytkownika Nakom Poznań 2002

httpwazniakmimuweduplindexphphttpth-wwwifujedupl~placzekdydaktykaSOwyklady

Systemy operacyjne Wykład 1 431

Wprowadzenie

System operacyjny

bull definicje

bull rola i zadania

Klasyfikacja systemoacutew operacyjnych

Zasada działania systemu operacyjnego

Systemy operacyjne Wykład 1 531

Definicje systemu operacyjnego

System operacyjny jest zbiorem ręcznych i automatycznych procedur ktoacutere pozwalają grupie osoacuteb na efektywne wspoacutełdzielenie urządzeń maszyny cyfrowej

Per Brinch Hansen

Systemy operacyjne Wykład 1 631

Definicje systemu operacyjnego

System operacyjny (nadzorczy nadrzędny sterujący) jest to zorganizowany zespoacuteł programoacutew ktoacutere pośredniczą między sprzętem a użytkownikami dostarczając użytkownikom zestawu środkoacutew ułatwiających projektowanie kodowanie uruchamianie i eksploatację programoacutew oraz w tym samym czasie sterują przydziałem zasoboacutew dla zapewnienia efektywnego działania

Alan Shaw

Systemy operacyjne Wykład 1 731

Definicje systemu operacyjnego

System operacyjny jest programem ktoacutery działa jako pośrednik między użytkownikiem komputera a sprzętem komputerowym Zadaniem systemu operacyjnego jest tworzenie środowiska w ktoacuterym użytkownik może wykonywać programy w sposoacuteb wygodny i wydajny

Abraham Silberschatz

Systemy operacyjne Wykład 1 831

Definicje systemu operacyjnego

System operacyjny jest warstwą oprogramowania operującą bezpośrednio na sprzęcie ktoacuterej celem jest zarządzanie zasobami systemu komputerowego i stworzenie użytkownikowi środowiska łatwiejszego do zrozumienia i wykorzystania

Andrew Tanenbaum

Systemy operacyjne Wykład 1 931

Miejsce systemu operacyjnego w

architekturze systemu komputerowego

Programy użytkowe

kompilator

Edytor

tekstu

Baza

danych

Użytkownicy

System operacyjny

Systemkomputerowy

Systemy operacyjne Wykład 1 1031

Architektura systemu

komputerowego

Systemy operacyjne Wykład 1 1131

Struktura systemu operacyjnego

jądro systemuoperacyjnego

sprzęt

interpreterpoleceń

programysystemowe

Systemy operacyjne Wykład 1 1231

Zadania systemu operacyjnego

bull Definicja interfejsu użytkownikabull Udostępnianie systemu plikoacutewbull Udostępnianie środowiska do wykonywania

programoacutew użytkownikandash mechanizm ładowania i uruchamiania

programoacutewndash mechanizmy synchronizacji i komunikacji

procesoacutewbull Sterowanie urządzeniami wejścia-wyjściabull Obsługa podstawowej klasy błędoacutew

Systemy operacyjne Wykład 1 1331

Zarządzanie zasobami systemu

komputerowego

bull Przydział zasoboacutewbull Planowanie dostępu do zasoboacutewbull Ochrona i autoryzacja dostępu do zasoboacutewbull Odzyskiwanie zasoboacutewbull Rozliczanie mdash gromadzenie danych o

wykorzystaniu zasoboacutew

Systemy operacyjne Wykład 1 1431

Zasoby zarządzane przez system

operacyjnybull Procesor mdash przydział czasu procesorabull Pamięć

ndash alokacja przestrzeni adresowej dla procesoacutewndash ochrona i transformacja adresoacutew

bull Urządzenia wejścia-wyjściandash udostępnianie i sterowanie urządzeniami pamięci

masowejndash alokacja przestrzeni dyskowejndash udostępnianie i sterownie drukarkami

skanerami itpbull Informacja (system plikoacutew)

ndash organizacja i udostępnianie informacjindash ochrona i autoryzacja dostępu do informacji

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 431

Wprowadzenie

System operacyjny

bull definicje

bull rola i zadania

Klasyfikacja systemoacutew operacyjnych

Zasada działania systemu operacyjnego

Systemy operacyjne Wykład 1 531

Definicje systemu operacyjnego

System operacyjny jest zbiorem ręcznych i automatycznych procedur ktoacutere pozwalają grupie osoacuteb na efektywne wspoacutełdzielenie urządzeń maszyny cyfrowej

Per Brinch Hansen

Systemy operacyjne Wykład 1 631

Definicje systemu operacyjnego

System operacyjny (nadzorczy nadrzędny sterujący) jest to zorganizowany zespoacuteł programoacutew ktoacutere pośredniczą między sprzętem a użytkownikami dostarczając użytkownikom zestawu środkoacutew ułatwiających projektowanie kodowanie uruchamianie i eksploatację programoacutew oraz w tym samym czasie sterują przydziałem zasoboacutew dla zapewnienia efektywnego działania

Alan Shaw

Systemy operacyjne Wykład 1 731

Definicje systemu operacyjnego

System operacyjny jest programem ktoacutery działa jako pośrednik między użytkownikiem komputera a sprzętem komputerowym Zadaniem systemu operacyjnego jest tworzenie środowiska w ktoacuterym użytkownik może wykonywać programy w sposoacuteb wygodny i wydajny

Abraham Silberschatz

Systemy operacyjne Wykład 1 831

Definicje systemu operacyjnego

System operacyjny jest warstwą oprogramowania operującą bezpośrednio na sprzęcie ktoacuterej celem jest zarządzanie zasobami systemu komputerowego i stworzenie użytkownikowi środowiska łatwiejszego do zrozumienia i wykorzystania

Andrew Tanenbaum

Systemy operacyjne Wykład 1 931

Miejsce systemu operacyjnego w

architekturze systemu komputerowego

Programy użytkowe

kompilator

Edytor

tekstu

Baza

danych

Użytkownicy

System operacyjny

Systemkomputerowy

Systemy operacyjne Wykład 1 1031

Architektura systemu

komputerowego

Systemy operacyjne Wykład 1 1131

Struktura systemu operacyjnego

jądro systemuoperacyjnego

sprzęt

interpreterpoleceń

programysystemowe

Systemy operacyjne Wykład 1 1231

Zadania systemu operacyjnego

bull Definicja interfejsu użytkownikabull Udostępnianie systemu plikoacutewbull Udostępnianie środowiska do wykonywania

programoacutew użytkownikandash mechanizm ładowania i uruchamiania

programoacutewndash mechanizmy synchronizacji i komunikacji

procesoacutewbull Sterowanie urządzeniami wejścia-wyjściabull Obsługa podstawowej klasy błędoacutew

Systemy operacyjne Wykład 1 1331

Zarządzanie zasobami systemu

komputerowego

bull Przydział zasoboacutewbull Planowanie dostępu do zasoboacutewbull Ochrona i autoryzacja dostępu do zasoboacutewbull Odzyskiwanie zasoboacutewbull Rozliczanie mdash gromadzenie danych o

wykorzystaniu zasoboacutew

Systemy operacyjne Wykład 1 1431

Zasoby zarządzane przez system

operacyjnybull Procesor mdash przydział czasu procesorabull Pamięć

ndash alokacja przestrzeni adresowej dla procesoacutewndash ochrona i transformacja adresoacutew

bull Urządzenia wejścia-wyjściandash udostępnianie i sterowanie urządzeniami pamięci

masowejndash alokacja przestrzeni dyskowejndash udostępnianie i sterownie drukarkami

skanerami itpbull Informacja (system plikoacutew)

ndash organizacja i udostępnianie informacjindash ochrona i autoryzacja dostępu do informacji

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 531

Definicje systemu operacyjnego

System operacyjny jest zbiorem ręcznych i automatycznych procedur ktoacutere pozwalają grupie osoacuteb na efektywne wspoacutełdzielenie urządzeń maszyny cyfrowej

Per Brinch Hansen

Systemy operacyjne Wykład 1 631

Definicje systemu operacyjnego

System operacyjny (nadzorczy nadrzędny sterujący) jest to zorganizowany zespoacuteł programoacutew ktoacutere pośredniczą między sprzętem a użytkownikami dostarczając użytkownikom zestawu środkoacutew ułatwiających projektowanie kodowanie uruchamianie i eksploatację programoacutew oraz w tym samym czasie sterują przydziałem zasoboacutew dla zapewnienia efektywnego działania

Alan Shaw

Systemy operacyjne Wykład 1 731

Definicje systemu operacyjnego

System operacyjny jest programem ktoacutery działa jako pośrednik między użytkownikiem komputera a sprzętem komputerowym Zadaniem systemu operacyjnego jest tworzenie środowiska w ktoacuterym użytkownik może wykonywać programy w sposoacuteb wygodny i wydajny

Abraham Silberschatz

Systemy operacyjne Wykład 1 831

Definicje systemu operacyjnego

System operacyjny jest warstwą oprogramowania operującą bezpośrednio na sprzęcie ktoacuterej celem jest zarządzanie zasobami systemu komputerowego i stworzenie użytkownikowi środowiska łatwiejszego do zrozumienia i wykorzystania

Andrew Tanenbaum

Systemy operacyjne Wykład 1 931

Miejsce systemu operacyjnego w

architekturze systemu komputerowego

Programy użytkowe

kompilator

Edytor

tekstu

Baza

danych

Użytkownicy

System operacyjny

Systemkomputerowy

Systemy operacyjne Wykład 1 1031

Architektura systemu

komputerowego

Systemy operacyjne Wykład 1 1131

Struktura systemu operacyjnego

jądro systemuoperacyjnego

sprzęt

interpreterpoleceń

programysystemowe

Systemy operacyjne Wykład 1 1231

Zadania systemu operacyjnego

bull Definicja interfejsu użytkownikabull Udostępnianie systemu plikoacutewbull Udostępnianie środowiska do wykonywania

programoacutew użytkownikandash mechanizm ładowania i uruchamiania

programoacutewndash mechanizmy synchronizacji i komunikacji

procesoacutewbull Sterowanie urządzeniami wejścia-wyjściabull Obsługa podstawowej klasy błędoacutew

Systemy operacyjne Wykład 1 1331

Zarządzanie zasobami systemu

komputerowego

bull Przydział zasoboacutewbull Planowanie dostępu do zasoboacutewbull Ochrona i autoryzacja dostępu do zasoboacutewbull Odzyskiwanie zasoboacutewbull Rozliczanie mdash gromadzenie danych o

wykorzystaniu zasoboacutew

Systemy operacyjne Wykład 1 1431

Zasoby zarządzane przez system

operacyjnybull Procesor mdash przydział czasu procesorabull Pamięć

ndash alokacja przestrzeni adresowej dla procesoacutewndash ochrona i transformacja adresoacutew

bull Urządzenia wejścia-wyjściandash udostępnianie i sterowanie urządzeniami pamięci

masowejndash alokacja przestrzeni dyskowejndash udostępnianie i sterownie drukarkami

skanerami itpbull Informacja (system plikoacutew)

ndash organizacja i udostępnianie informacjindash ochrona i autoryzacja dostępu do informacji

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 631

Definicje systemu operacyjnego

System operacyjny (nadzorczy nadrzędny sterujący) jest to zorganizowany zespoacuteł programoacutew ktoacutere pośredniczą między sprzętem a użytkownikami dostarczając użytkownikom zestawu środkoacutew ułatwiających projektowanie kodowanie uruchamianie i eksploatację programoacutew oraz w tym samym czasie sterują przydziałem zasoboacutew dla zapewnienia efektywnego działania

Alan Shaw

Systemy operacyjne Wykład 1 731

Definicje systemu operacyjnego

System operacyjny jest programem ktoacutery działa jako pośrednik między użytkownikiem komputera a sprzętem komputerowym Zadaniem systemu operacyjnego jest tworzenie środowiska w ktoacuterym użytkownik może wykonywać programy w sposoacuteb wygodny i wydajny

Abraham Silberschatz

Systemy operacyjne Wykład 1 831

Definicje systemu operacyjnego

System operacyjny jest warstwą oprogramowania operującą bezpośrednio na sprzęcie ktoacuterej celem jest zarządzanie zasobami systemu komputerowego i stworzenie użytkownikowi środowiska łatwiejszego do zrozumienia i wykorzystania

Andrew Tanenbaum

Systemy operacyjne Wykład 1 931

Miejsce systemu operacyjnego w

architekturze systemu komputerowego

Programy użytkowe

kompilator

Edytor

tekstu

Baza

danych

Użytkownicy

System operacyjny

Systemkomputerowy

Systemy operacyjne Wykład 1 1031

Architektura systemu

komputerowego

Systemy operacyjne Wykład 1 1131

Struktura systemu operacyjnego

jądro systemuoperacyjnego

sprzęt

interpreterpoleceń

programysystemowe

Systemy operacyjne Wykład 1 1231

Zadania systemu operacyjnego

bull Definicja interfejsu użytkownikabull Udostępnianie systemu plikoacutewbull Udostępnianie środowiska do wykonywania

programoacutew użytkownikandash mechanizm ładowania i uruchamiania

programoacutewndash mechanizmy synchronizacji i komunikacji

procesoacutewbull Sterowanie urządzeniami wejścia-wyjściabull Obsługa podstawowej klasy błędoacutew

Systemy operacyjne Wykład 1 1331

Zarządzanie zasobami systemu

komputerowego

bull Przydział zasoboacutewbull Planowanie dostępu do zasoboacutewbull Ochrona i autoryzacja dostępu do zasoboacutewbull Odzyskiwanie zasoboacutewbull Rozliczanie mdash gromadzenie danych o

wykorzystaniu zasoboacutew

Systemy operacyjne Wykład 1 1431

Zasoby zarządzane przez system

operacyjnybull Procesor mdash przydział czasu procesorabull Pamięć

ndash alokacja przestrzeni adresowej dla procesoacutewndash ochrona i transformacja adresoacutew

bull Urządzenia wejścia-wyjściandash udostępnianie i sterowanie urządzeniami pamięci

masowejndash alokacja przestrzeni dyskowejndash udostępnianie i sterownie drukarkami

skanerami itpbull Informacja (system plikoacutew)

ndash organizacja i udostępnianie informacjindash ochrona i autoryzacja dostępu do informacji

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 731

Definicje systemu operacyjnego

System operacyjny jest programem ktoacutery działa jako pośrednik między użytkownikiem komputera a sprzętem komputerowym Zadaniem systemu operacyjnego jest tworzenie środowiska w ktoacuterym użytkownik może wykonywać programy w sposoacuteb wygodny i wydajny

Abraham Silberschatz

Systemy operacyjne Wykład 1 831

Definicje systemu operacyjnego

System operacyjny jest warstwą oprogramowania operującą bezpośrednio na sprzęcie ktoacuterej celem jest zarządzanie zasobami systemu komputerowego i stworzenie użytkownikowi środowiska łatwiejszego do zrozumienia i wykorzystania

Andrew Tanenbaum

Systemy operacyjne Wykład 1 931

Miejsce systemu operacyjnego w

architekturze systemu komputerowego

Programy użytkowe

kompilator

Edytor

tekstu

Baza

danych

Użytkownicy

System operacyjny

Systemkomputerowy

Systemy operacyjne Wykład 1 1031

Architektura systemu

komputerowego

Systemy operacyjne Wykład 1 1131

Struktura systemu operacyjnego

jądro systemuoperacyjnego

sprzęt

interpreterpoleceń

programysystemowe

Systemy operacyjne Wykład 1 1231

Zadania systemu operacyjnego

bull Definicja interfejsu użytkownikabull Udostępnianie systemu plikoacutewbull Udostępnianie środowiska do wykonywania

programoacutew użytkownikandash mechanizm ładowania i uruchamiania

programoacutewndash mechanizmy synchronizacji i komunikacji

procesoacutewbull Sterowanie urządzeniami wejścia-wyjściabull Obsługa podstawowej klasy błędoacutew

Systemy operacyjne Wykład 1 1331

Zarządzanie zasobami systemu

komputerowego

bull Przydział zasoboacutewbull Planowanie dostępu do zasoboacutewbull Ochrona i autoryzacja dostępu do zasoboacutewbull Odzyskiwanie zasoboacutewbull Rozliczanie mdash gromadzenie danych o

wykorzystaniu zasoboacutew

Systemy operacyjne Wykład 1 1431

Zasoby zarządzane przez system

operacyjnybull Procesor mdash przydział czasu procesorabull Pamięć

ndash alokacja przestrzeni adresowej dla procesoacutewndash ochrona i transformacja adresoacutew

bull Urządzenia wejścia-wyjściandash udostępnianie i sterowanie urządzeniami pamięci

masowejndash alokacja przestrzeni dyskowejndash udostępnianie i sterownie drukarkami

skanerami itpbull Informacja (system plikoacutew)

ndash organizacja i udostępnianie informacjindash ochrona i autoryzacja dostępu do informacji

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 831

Definicje systemu operacyjnego

System operacyjny jest warstwą oprogramowania operującą bezpośrednio na sprzęcie ktoacuterej celem jest zarządzanie zasobami systemu komputerowego i stworzenie użytkownikowi środowiska łatwiejszego do zrozumienia i wykorzystania

Andrew Tanenbaum

Systemy operacyjne Wykład 1 931

Miejsce systemu operacyjnego w

architekturze systemu komputerowego

Programy użytkowe

kompilator

Edytor

tekstu

Baza

danych

Użytkownicy

System operacyjny

Systemkomputerowy

Systemy operacyjne Wykład 1 1031

Architektura systemu

komputerowego

Systemy operacyjne Wykład 1 1131

Struktura systemu operacyjnego

jądro systemuoperacyjnego

sprzęt

interpreterpoleceń

programysystemowe

Systemy operacyjne Wykład 1 1231

Zadania systemu operacyjnego

bull Definicja interfejsu użytkownikabull Udostępnianie systemu plikoacutewbull Udostępnianie środowiska do wykonywania

programoacutew użytkownikandash mechanizm ładowania i uruchamiania

programoacutewndash mechanizmy synchronizacji i komunikacji

procesoacutewbull Sterowanie urządzeniami wejścia-wyjściabull Obsługa podstawowej klasy błędoacutew

Systemy operacyjne Wykład 1 1331

Zarządzanie zasobami systemu

komputerowego

bull Przydział zasoboacutewbull Planowanie dostępu do zasoboacutewbull Ochrona i autoryzacja dostępu do zasoboacutewbull Odzyskiwanie zasoboacutewbull Rozliczanie mdash gromadzenie danych o

wykorzystaniu zasoboacutew

Systemy operacyjne Wykład 1 1431

Zasoby zarządzane przez system

operacyjnybull Procesor mdash przydział czasu procesorabull Pamięć

ndash alokacja przestrzeni adresowej dla procesoacutewndash ochrona i transformacja adresoacutew

bull Urządzenia wejścia-wyjściandash udostępnianie i sterowanie urządzeniami pamięci

masowejndash alokacja przestrzeni dyskowejndash udostępnianie i sterownie drukarkami

skanerami itpbull Informacja (system plikoacutew)

ndash organizacja i udostępnianie informacjindash ochrona i autoryzacja dostępu do informacji

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 931

Miejsce systemu operacyjnego w

architekturze systemu komputerowego

Programy użytkowe

kompilator

Edytor

tekstu

Baza

danych

Użytkownicy

System operacyjny

Systemkomputerowy

Systemy operacyjne Wykład 1 1031

Architektura systemu

komputerowego

Systemy operacyjne Wykład 1 1131

Struktura systemu operacyjnego

jądro systemuoperacyjnego

sprzęt

interpreterpoleceń

programysystemowe

Systemy operacyjne Wykład 1 1231

Zadania systemu operacyjnego

bull Definicja interfejsu użytkownikabull Udostępnianie systemu plikoacutewbull Udostępnianie środowiska do wykonywania

programoacutew użytkownikandash mechanizm ładowania i uruchamiania

programoacutewndash mechanizmy synchronizacji i komunikacji

procesoacutewbull Sterowanie urządzeniami wejścia-wyjściabull Obsługa podstawowej klasy błędoacutew

Systemy operacyjne Wykład 1 1331

Zarządzanie zasobami systemu

komputerowego

bull Przydział zasoboacutewbull Planowanie dostępu do zasoboacutewbull Ochrona i autoryzacja dostępu do zasoboacutewbull Odzyskiwanie zasoboacutewbull Rozliczanie mdash gromadzenie danych o

wykorzystaniu zasoboacutew

Systemy operacyjne Wykład 1 1431

Zasoby zarządzane przez system

operacyjnybull Procesor mdash przydział czasu procesorabull Pamięć

ndash alokacja przestrzeni adresowej dla procesoacutewndash ochrona i transformacja adresoacutew

bull Urządzenia wejścia-wyjściandash udostępnianie i sterowanie urządzeniami pamięci

masowejndash alokacja przestrzeni dyskowejndash udostępnianie i sterownie drukarkami

skanerami itpbull Informacja (system plikoacutew)

ndash organizacja i udostępnianie informacjindash ochrona i autoryzacja dostępu do informacji

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 1031

Architektura systemu

komputerowego

Systemy operacyjne Wykład 1 1131

Struktura systemu operacyjnego

jądro systemuoperacyjnego

sprzęt

interpreterpoleceń

programysystemowe

Systemy operacyjne Wykład 1 1231

Zadania systemu operacyjnego

bull Definicja interfejsu użytkownikabull Udostępnianie systemu plikoacutewbull Udostępnianie środowiska do wykonywania

programoacutew użytkownikandash mechanizm ładowania i uruchamiania

programoacutewndash mechanizmy synchronizacji i komunikacji

procesoacutewbull Sterowanie urządzeniami wejścia-wyjściabull Obsługa podstawowej klasy błędoacutew

Systemy operacyjne Wykład 1 1331

Zarządzanie zasobami systemu

komputerowego

bull Przydział zasoboacutewbull Planowanie dostępu do zasoboacutewbull Ochrona i autoryzacja dostępu do zasoboacutewbull Odzyskiwanie zasoboacutewbull Rozliczanie mdash gromadzenie danych o

wykorzystaniu zasoboacutew

Systemy operacyjne Wykład 1 1431

Zasoby zarządzane przez system

operacyjnybull Procesor mdash przydział czasu procesorabull Pamięć

ndash alokacja przestrzeni adresowej dla procesoacutewndash ochrona i transformacja adresoacutew

bull Urządzenia wejścia-wyjściandash udostępnianie i sterowanie urządzeniami pamięci

masowejndash alokacja przestrzeni dyskowejndash udostępnianie i sterownie drukarkami

skanerami itpbull Informacja (system plikoacutew)

ndash organizacja i udostępnianie informacjindash ochrona i autoryzacja dostępu do informacji

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 1131

Struktura systemu operacyjnego

jądro systemuoperacyjnego

sprzęt

interpreterpoleceń

programysystemowe

Systemy operacyjne Wykład 1 1231

Zadania systemu operacyjnego

bull Definicja interfejsu użytkownikabull Udostępnianie systemu plikoacutewbull Udostępnianie środowiska do wykonywania

programoacutew użytkownikandash mechanizm ładowania i uruchamiania

programoacutewndash mechanizmy synchronizacji i komunikacji

procesoacutewbull Sterowanie urządzeniami wejścia-wyjściabull Obsługa podstawowej klasy błędoacutew

Systemy operacyjne Wykład 1 1331

Zarządzanie zasobami systemu

komputerowego

bull Przydział zasoboacutewbull Planowanie dostępu do zasoboacutewbull Ochrona i autoryzacja dostępu do zasoboacutewbull Odzyskiwanie zasoboacutewbull Rozliczanie mdash gromadzenie danych o

wykorzystaniu zasoboacutew

Systemy operacyjne Wykład 1 1431

Zasoby zarządzane przez system

operacyjnybull Procesor mdash przydział czasu procesorabull Pamięć

ndash alokacja przestrzeni adresowej dla procesoacutewndash ochrona i transformacja adresoacutew

bull Urządzenia wejścia-wyjściandash udostępnianie i sterowanie urządzeniami pamięci

masowejndash alokacja przestrzeni dyskowejndash udostępnianie i sterownie drukarkami

skanerami itpbull Informacja (system plikoacutew)

ndash organizacja i udostępnianie informacjindash ochrona i autoryzacja dostępu do informacji

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 1231

Zadania systemu operacyjnego

bull Definicja interfejsu użytkownikabull Udostępnianie systemu plikoacutewbull Udostępnianie środowiska do wykonywania

programoacutew użytkownikandash mechanizm ładowania i uruchamiania

programoacutewndash mechanizmy synchronizacji i komunikacji

procesoacutewbull Sterowanie urządzeniami wejścia-wyjściabull Obsługa podstawowej klasy błędoacutew

Systemy operacyjne Wykład 1 1331

Zarządzanie zasobami systemu

komputerowego

bull Przydział zasoboacutewbull Planowanie dostępu do zasoboacutewbull Ochrona i autoryzacja dostępu do zasoboacutewbull Odzyskiwanie zasoboacutewbull Rozliczanie mdash gromadzenie danych o

wykorzystaniu zasoboacutew

Systemy operacyjne Wykład 1 1431

Zasoby zarządzane przez system

operacyjnybull Procesor mdash przydział czasu procesorabull Pamięć

ndash alokacja przestrzeni adresowej dla procesoacutewndash ochrona i transformacja adresoacutew

bull Urządzenia wejścia-wyjściandash udostępnianie i sterowanie urządzeniami pamięci

masowejndash alokacja przestrzeni dyskowejndash udostępnianie i sterownie drukarkami

skanerami itpbull Informacja (system plikoacutew)

ndash organizacja i udostępnianie informacjindash ochrona i autoryzacja dostępu do informacji

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 1331

Zarządzanie zasobami systemu

komputerowego

bull Przydział zasoboacutewbull Planowanie dostępu do zasoboacutewbull Ochrona i autoryzacja dostępu do zasoboacutewbull Odzyskiwanie zasoboacutewbull Rozliczanie mdash gromadzenie danych o

wykorzystaniu zasoboacutew

Systemy operacyjne Wykład 1 1431

Zasoby zarządzane przez system

operacyjnybull Procesor mdash przydział czasu procesorabull Pamięć

ndash alokacja przestrzeni adresowej dla procesoacutewndash ochrona i transformacja adresoacutew

bull Urządzenia wejścia-wyjściandash udostępnianie i sterowanie urządzeniami pamięci

masowejndash alokacja przestrzeni dyskowejndash udostępnianie i sterownie drukarkami

skanerami itpbull Informacja (system plikoacutew)

ndash organizacja i udostępnianie informacjindash ochrona i autoryzacja dostępu do informacji

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 1431

Zasoby zarządzane przez system

operacyjnybull Procesor mdash przydział czasu procesorabull Pamięć

ndash alokacja przestrzeni adresowej dla procesoacutewndash ochrona i transformacja adresoacutew

bull Urządzenia wejścia-wyjściandash udostępnianie i sterowanie urządzeniami pamięci

masowejndash alokacja przestrzeni dyskowejndash udostępnianie i sterownie drukarkami

skanerami itpbull Informacja (system plikoacutew)

ndash organizacja i udostępnianie informacjindash ochrona i autoryzacja dostępu do informacji

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 1531

Podział systemoacutew operacyjnych

ze względu na sposoacuteb przetwarzania

ze względu na liczbę wykonywanych programoacutew

ze względu na liczbę użytkownikoacutew

inne

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 1631

Sposoacuteb przetwarzania

bull Systemy przetwarzania bezpośredniego (on-lineprocessing systems) mdash systemy interakcyjne

ndash występuje bezpośrednia interakcja pomiędzyużytkownikiem a systemem

ndash wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu

bull Systemy przetwarzania pośredniego (off-lineprocessing systems) mdash systemy wsadowe

ndash występuje znacząca zwłoka czasowa międzyprzedłożeniem a rozpoczęciem wykonywania zadania

ndash niemożliwa jest ingerencja użytkownika wwykonywanie zadania

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 1731

Liczba wykonywanych programoacutew

bull Systemy jednozadaniowe mdash niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego

bull Systemy wielozadaniowe mdash dopuszczalne jest istnienie jednocześnie wielu zadań (procesoacutew)ktoacuterym zgodnie z pewną strategią przydzielanyjest procesor

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 1831

Liczba użytkownikoacutew

bull Systemy dla jednego użytkownika mdash zasobyprzeznaczone są dla jednego użytkownika (np w przypadku komputeroacutew osobistych) nie mamechanizmoacutew autoryzacji a mechanizmy ochrony informacji są ograniczone

bull Systemy wielodostępne mdash wielu użytkownikoacutew może korzystać ze zasoboacutew systemu komputerowego a system operacyjnygwarantuje ich ochronę przed nieupoważnionąingerencją

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 1931

Inne systemy operacyjnebull Systemy czasu rzeczywistego (real-time systems)

mdash zorientowane na przetwarzanie z uwzględnieniemostrych kryterioacutew czasowych

bull Systemy sieciowe i rozproszone (network anddistributed systems) mdash umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzającychczyli zbiorem jednostek (komputeroacutew) ktoacutere sąpołączone siecią komputerową i nie wspoacutełdzieląfizycznie zasoboacutew

bull Systemy operacyjne komputeroacutew naręcznych mdashtworzone dla rozwiązań typu PDA czy telefonoacutew komoacuterkowych podlegają istotnym ograniczeniomzasobowym (wolny procesor mała pamięć niewielkiekran)

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 2031

Zasada działania systemu

operacyjnego

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy mikroprocesora

poziom systemu operacyjnego

poziom asemblera

poziom języka zorientowanego problemowo

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 2131

Architektura von Neumanna

bull Zaroacutewno program (kody rozkazoacutew) jak i dane(argumenty rozkazu operandy) znajdują się wpamięci operacyjnej

bull Rozkazy wykonywane są w kolejności w jakiej zostały umieszczone w programie (i tym samym w pamięci) a zmiana tej kolejności może nastąpić wwyniku wykonania specjalnego rozkazu np skoku wywołania podprogramu powrotu z podprogramu itp

bull W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 2231

Cykl rozkazowy

bull Cykl rozkazowy mdash cykl działań procesora i jegointerakcji z pamięcią operacyjną związanych z realizacją rozkazu

bull Cykl rozkazowy składa się z faz zwanychcyklami maszynowymi

bull Typowe fazy cyklu rozkazowegondash pobranie kodu rozkazu mdash odczyt pamięcindash pobranie operandu mdash odczyt pamięcindash składowanie operandu mdash zapis pamięci

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 2331

Cykl rozkazowy ndash pobranie rozkazu

pobraniekodu

rozkazu

wystawienieadresu kodu

rozkazu

dekodowanieoperacji

pobranieoperandu

wystawienieadresu

operandu

faza pobraniarozkazu

faza pobraniaargumentu

pam

ięć IO

CPU

łańcuch

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 2431

Cykl rozkazowy ndash wykonanie

rozkazu

sprawdzeniezgłoszeniaprzerwań

wykonanieoperacji

przerwanie

zapisoperandu

wystawienieadresu

operandu

faza składowania wyniku

faza przerwania

brakprzerwań

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 2531

Podstawy działania systemu

operacyjnegobull Odwołania do jądra systemu przez system

przerwań lub specjalne instrukcje (przerwanieprogramowe)

bull Sprzętowa ochrona pamięcibull Dualny tryb pracy mdash tryb użytkownika (user

mode) i tryb systemowy (tryb jądra systemmode)

bull Wyroacuteżnienie instrukcji uprzywilejowanychwykonywanych tylko w trybie systemowym

bull Uprzywilejowanie instrukcji wejścia-wyjściabull Przerwanie zegarowe

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 2631

Przerwania i ich obsługaPrzerwanie jest reakcją na asynchroniczne zdarzeniepolegającą na automatycznym zapamiętaniu bieżącegostanu procesora w celu poacuteźniejszego odtworzenia orazprzekazaniu sterowania do ustalonej procedury obsługiprzerwania

Obsługa przerwań (interrupt handling)

bull System operacyjny zachowuje stan CPU1048617 - stan licznika programu1048617 - stan innych rejestroacutewbull Określa typ przerwania1048617 - odpytywanie (polling)1048617 - wektorowe (vectored interrupt system)bull Dla każdego typu przerwań oddzielne procedury

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 2731

Typy przerwań

bull Przerwania zewnętrznemdash od urządzeń zewnętrznych

bull Przerwania programowemdash wykonanie specjalnej instrukcji

bull Przerwania diagnostycznemdash pułapki błędy programowe i sprzętowe

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 2831

Przerwania cd

ujęcie wielowarstwowe

poziom mikroarchitektury

poziom maszynowy procesora

poziom systemu operacyjnego

przerwaniediagnostyczne

przerwanieprogramowe

przerwaniezewnętrzne

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 2931

Przerwania zegarowebull Przerwanie zegarowe generowane jest przez

czasomierz (timer) po wyznaczonym okresie czasu

bull Obsługa przerwania zegarowego oznacza przekazaniesterowania do jądra systemu operacyjnego umożliwiając w ten sposoacuteb wykonanie pewnych zdańokresowych

czasprogram jądra

program 1

program 2

pro

gra

my

użytk

ow

nik

a przerwaniezagarowe

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 3031

Ochrona pamięci

bull W wyniku wykonywaniaprogramu następujeodwołanie do komoacuterekpamięci o określonychadresach

bull Dostępne obszary pamięci opisane są przez dwa parametry bazę(base) i granicę (limit)

adres

ge

lt

rejestrbazowy

rejestrgraniczny

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika

Systemy operacyjne Wykład 1 3131

Tryby (pierścienie) ochrony

trybjądra

trybmodułoacutew sterujących

tryb użytkownika