Systemy operacyjne Copyright, 2000 © Jerzy R. Nawrocki Wprowadzenie do informatyki Wykład 7
J.Nawrocki, Wprowadzenie.., Wykład 7 2 Plan wykładu Wprowadzenie System operacyjny Historia systemów operacyjnych Podstawowe pojęcia Komunikacja międzyprocesowa
J.Nawrocki, Wprowadzenie.., Wykład 7 3 Wprowadzenie System komputerowy Sprzęt System operacyjny Oprogramowanie aplikacyjne
J.Nawrocki, Wprowadzenie.., Wykład 7 4 Sprzęt System operacyjny Oprogramowanie aplikacyjne Wprowadzenie System komputerowy - przykłady Procesor, pamięć, dysk, CDROM,... Windows NT, UNIX, QNX,.. System F-K, MS Word, Gra komputerowa,..
J.Nawrocki, Wprowadzenie.., Wykład 7 5 System operacyjny.. jako maszyna wirtualna 16 komend: czytanie, pisanie, przesunięcie głowicy, inicjacja, odczyt położenia głowicy, rekalibracja,... Sterowanie napędem dysków elastycznych PD765
J.Nawrocki, Wprowadzenie.., Wykład 7 6 System operacyjny.. jako maszyna wirtualna Komenda czytania 13 parametrów wejściowych w 9 bajtach: adres bloku, liczba sektorów na ścieżce, tryb zapisu na nośniku, przestrzeń międzysektorowa, pola statusu i błędów w 7 bajtach. Czy silnik włączony ? Jeśli nie to włącz i czekaj. Sterowanie napędem dysków elastycznych PD765
J.Nawrocki, Wprowadzenie.., Wykład 7 7 Dysk.. jako zarządca zasobów System operacyjny System operacyjny = zestaw reguł pozwalających grupie osób na efektywne współdzielenie zasobów systemu komputerowego. Procesor Pamięć System komputerowy
J.Nawrocki, Wprowadzenie.., Wykład 7 8 Generacje systemów operacyjnych Historia systemów operacyjnych : Lampy elektronowe : Tranzystory i systemy wsadowe : Układy scalone i systemy wieloprogramowe : Komputery osobiste
J.Nawrocki, Wprowadzenie.., Wykład 7 9 Wieloprogramowość / -zadaniowość Historia systemów operacyjnych Program 1 System oper. Program 2 Program 3 WieloprogramowośćWielozadaniowość Cray
J.Nawrocki, Wprowadzenie.., Wykład 7 10 Proces Podstawowe pojęcia Proces = Program w trakcie wykonania Program Wartości rejestrów Licznik rozkazów Dane...
J.Nawrocki, Wprowadzenie.., Wykład 7 11 Procesy na 1 procesorze Podstawowe pojęcia A A B B C C D D
J.Nawrocki, Wprowadzenie.., Wykład 7 12 Procesy na 1 procesorze Podstawowe pojęcia A A B B C C D D
J.Nawrocki, Wprowadzenie.., Wykład 7 13 Procesy na 1 procesorze Podstawowe pojęcia A A B B C C D D
J.Nawrocki, Wprowadzenie.., Wykład 7 14 Procesy na 1 procesorze Podstawowe pojęcia A A B B C C D D
J.Nawrocki, Wprowadzenie.., Wykład 7 15 Procesy na 1 procesorze Podstawowe pojęcia A A B B C C D D
J.Nawrocki, Wprowadzenie.., Wykład 7 16 Procesy na 1 procesorze Podstawowe pojęcia A A B B C C D D
J.Nawrocki, Wprowadzenie.., Wykład 7 17 Stany procesu Podstawowe pojęcia Wykonywany Gotowy Zablokowany
J.Nawrocki, Wprowadzenie.., Wykład 7 18 Komunikacja międzyprocesowa X:= Z; X:= X + 1; Z:= X Y:= Z; Y:= Y + 3; Z:= Y Z: 7 Z:= Z + 1Z:= Z + 3
J.Nawrocki, Wprowadzenie.., Wykład 7 19 Komunikacja międzyprocesowa X:= Z; X:= X + 1; Z:= X Y:= Z; Y:= Y + 3; Z:= Y Z: 7 Z:= Z + 1Z:= Z + 3 X= 8
J.Nawrocki, Wprowadzenie.., Wykład 7 20 Komunikacja międzyprocesowa X:= Z; X:= X + 1; Z:= X Y:= Z; Y:= Y + 3; Z:= Y Y= 10 Z: 7 Z:= Z + 1Z:= Z + 3 X= 8
J.Nawrocki, Wprowadzenie.., Wykład 7 21 Komunikacja międzyprocesowa Ścisła wymiana
J.Nawrocki, Wprowadzenie.., Wykład 7 22 Komunikacja międzyprocesowa Ścisła wymiana
J.Nawrocki, Wprowadzenie.., Wykład 7 23 Komunikacja międzyprocesowa Ścisła wymiana
J.Nawrocki, Wprowadzenie.., Wykład 7 24 Komunikacja międzyprocesowa Ścisła wymiana
J.Nawrocki, Wprowadzenie.., Wykład 7 25 Komunikacja międzyprocesowa Ścisła wymiana
J.Nawrocki, Wprowadzenie.., Wykład 7 26 Komunikacja międzyprocesowa Ścisła wymiana
J.Nawrocki, Wprowadzenie.., Wykład 7 27 Komunikacja międzyprocesowa Ścisła wymiana
J.Nawrocki, Wprowadzenie.., Wykład 7 28 Komunikacja międzyprocesowa Ścisła wymiana
J.Nawrocki, Wprowadzenie.., Wykład 7 29 Komunikacja międzyprocesowa Ścisła wymiana
J.Nawrocki, Wprowadzenie.., Wykład 7 30 Komunikacja międzyprocesowa Ścisła wymiana
J.Nawrocki, Wprowadzenie.., Wykład 7 31 Komunikacja międzyprocesowa Ścisła wymiana
J.Nawrocki, Wprowadzenie.., Wykład 7 32 Komunikacja międzyprocesowa Ścisła wymiana
J.Nawrocki, Wprowadzenie.., Wykład 7 33 Komunikacja międzyprocesowa Ścisła wymiana Bum!
J.Nawrocki, Wprowadzenie.., Wykład 7 34 Komunikacja międzyprocesowa Ścisła wymiana sekcja_krytyczna
J.Nawrocki, Wprowadzenie.., Wykład 7 35 Komunikacja międzyprocesowa Ścisła wymiana while true do begin sekcja_krytyczna(); inne_czynności() end; while true do begin sekcja_krytyczna(); inne_czynności() end;
J.Nawrocki, Wprowadzenie.., Wykład 7 36 Komunikacja międzyprocesowa Ścisła wymiana while true do begin while kolej <> 0 do; sekcja_krytyczna(); kolej:= 1; inne_czynności() end; while true do begin while kolej <> 1 do; sekcja_krytyczna(); kolej:= 0; inne_czynności() end; 0 1
J.Nawrocki, Wprowadzenie.., Wykład 7 37 Wyj1: mov Stan1, 0 ret Wej1: mov rej, Stan1 mov Stan1, 1 cmp rej, 0 jne Wej1 ret Komunikacja międzyprocesowa Instrukcja TSL Zajęta Wolna
J.Nawrocki, Wprowadzenie.., Wykład 7 38 Wej1: mov rej, Stan1 mov Stan1, 1 cmp rej, 0 jne Wej1 ret Komunikacja międzyprocesowa Instrukcja TSL Wej1: mov rej, Stan1 mov Stan1, 1 cmp rej, 0 jne Wej1 ret
J.Nawrocki, Wprowadzenie.., Wykład 7 39 Wej1: mov rej, 1 xchg rej, Stan1 cmp rej, 0 jne Wej1 ret Wyj1: mov Stan1, 0 ret Komunikacja międzyprocesowa Instrukcja TSL
J.Nawrocki, Wprowadzenie.., Wykład 7 40 Semafory binarne
J.Nawrocki, Wprowadzenie.., Wykład 7 41 Semafory binarne
J.Nawrocki, Wprowadzenie.., Wykład 7 42 Sekcja krytyczna Semafory binarne
J.Nawrocki, Wprowadzenie.., Wykład 7 43 Semafory binarne Sekcja krytyczna
J.Nawrocki, Wprowadzenie.., Wykład 7 44 Semafory binarne Sekcja krytyczna
J.Nawrocki, Wprowadzenie.., Wykład 7 45 Semafory binarne Sekcja krytyczna down
J.Nawrocki, Wprowadzenie.., Wykład 7 46 Semafory binarne Sekcja krytyczna
J.Nawrocki, Wprowadzenie.., Wykład 7 47 Semafory binarne Sekcja krytyczna up
J.Nawrocki, Wprowadzenie.., Wykład 7 48 Semafory binarne Sekcja krytyczna
J.Nawrocki, Wprowadzenie.., Wykład 7 49 Producent-Konsument Magazyn Producent Konsument Produkuj_elem Wstaw_elem
J.Nawrocki, Wprowadzenie.., Wykład 7 50 Producent-Konsument Magazyn Producent Konsument Produkuj_elem Wstaw_elem Pobierz_elem
J.Nawrocki, Wprowadzenie.., Wykład 7 51 Producent-Konsument Magazyn Producent Konsument Produkuj_elem Wstaw_elem Pobierz_elem Konsumuj_elem
J.Nawrocki, Wprowadzenie.., Wykład 7 52 Producent-Konsument Magazyn Producent Konsument Produkuj_elem Wstaw_elem Pobierz_elem Konsumuj_elem
J.Nawrocki, Wprowadzenie.., Wykład 7 53 While true do begin produkuj_elem; down (empty); down (mutex); wstaw_elem; up (mutex); up (full) end; Producent-Konsument Semafory binarne i uogólnione Producent While true do begin down (full); down (mutex); pobierz_elem; up (mutex); up (empty); konsumuj_elm end; Konsument
J.Nawrocki, Wprowadzenie.., Wykład 7 54 Komunikacja międzyprocesowa Czytelnicy i pisarze Mysli; Pisze Czytaj; Korzystaj
J.Nawrocki, Wprowadzenie.., Wykład 7 55 Podsumowanie Programowanie współbieżne jest znacznie trudniejsze niż sekwencyjne. Wreszcie!
J.Nawrocki, Wprowadzenie.., Wykład 7 56 Literatura A. Tanenbaum, Operating Systems: Design and Implementation, Prentice- Hall, 1987.
J.Nawrocki, Wprowadzenie.., Wykład 7 57 Ocena wykładu 1. Wrażenie ogólne? (1 - 6) 2. Zbyt wolno czy zbyt szybko? 3. Czy dowiedziałeś się czegoś ważnego? 4. Co poprawić i jak?