Informatyka 2 - Wydział Elektryczny
Transkrypt
Informatyka 2 - Wydział Elektryczny
Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 2/20 Plan wykładu nr 5 Definicja systemu operacyjnego Informatyka 2 Zarządzanie procesami definicja procesu blok kontrolny procesu dwu- i pięciostanowy model procesu Politechnika Białostocka - Wydział Elektryczny Zarządzanie dyskowymi operacjami we-wy Elektrotechnika, semestr III, studia stacjonarne I stopnia strategie szeregowania żądań dostępu do dysku (FCFS, SSTF, SCAN, C-SCAN) Rok akademicki 2013/2014 metody przydziału pamięci dyskowej (alokacja ciągła, alokacja listowa, alokacja indeksowa) Wykład nr 5 (26.11.2013) dr inż. Jarosław Forenc Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 3/20 System operacyjny - definicja Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 4/20 System operacyjny - definicja System operacyjny - jest to program sterujący wykonywaniem aplikacji i działający jako interfejs pomiędzy aplikacjami (użytkownikiem) a sprzętem komputerowym System operacyjny - administrator zasobów - zarządza i przydziela zasoby systemu komputerowego oraz steruje wykonaniem programu użytkownik końcowy nie jest zainteresowany sprzętem, interesują go tylko aplikacje (programy użytkowe) do zasobów systemu zalicza się: aplikacje są tworzone przez programistów za pomocą języków programowania zasób systemu - każdy element systemu, który może być przydzielony innej części systemu lub oprogramowaniu aplikacyjnemu czas procesora pamięć operacyjną urządzenia zewnętrzne Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 5/20 Zarządzanie procesami Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 6/20 Blok kontrolny procesu struktura danych tworzona i zarządzana przez system operacyjny, a opisująca właściwości procesu Definicja procesu: proces - program w trakcie wykonania proces - ciąg wykonań instrukcji wyznaczanych kolejnymi wartościami licznika rozkazów wynikających z wykonywanej procedury (programu) proces - jednostka, którą można przypisać procesorowi i wykonać identyfikator - unikatowy numer skojarzony z procesem, dzięki któremu można odróżnić go od innych procesów stan procesu: nowy, gotowy, uruchomiony, zablokowany, anulowany priorytet - niski, normalny, wysoki, czasu rzeczywistego Proces składa się z kilku elementów: kod programu dane potrzebne programowi (zmienne, przestrzeń robocza, bufory) kontekst wykonywanego programu (stan procesu) - dane wewnętrzne, dzięki którym system operacyjny może nadzorować proces i nim sterować licznik programu - adres kolejnego rozkazu w programie, który ma zostać wykonany wskaźniki pamięci - wskaźniki do kodu programu, danych skojarzonych z procesem, dodatkowych bloków pamięci dane kontekstowe - dane znajdujące się w rejestrach procesora, gdy proces jest wykonywany informacje na temat stanu żądań we-wy - informacje na temat urządzeń we-wy przypisanych do tego procesu Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 7/20 Dwustanowy model procesu Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 8/20 Dwustanowy model procesu najprostszy model polega na tym, że w dowolnej chwili proces jest wykonywany przez procesor (uruchomiony) lub nie (nie uruchomiony) procesy, które nie są uruchomione czekają w kolejce na wykonanie Program przydzielający Wejście Proces nie uruchomiony Uruchomiony proces Wyjście Przerwa system operacyjny tworząc nowy proces, tworzy blok kontrolny procesu po czym wprowadza proces do systemu jako nie uruchomiony w pewnym momencie aktualnie wykonywany proces zostaje przerwany i program przydzielający wybiera inny proces do wykonania stan poprzednio uruchomionego procesu jest zmieniany z uruchomionego na nie uruchomiony jeśli wykonywanie procesu zostało anulowane lub zakończone, to opuszcza on system, a program przydzielający wybiera kolejny proces z kolejki, który zostanie wykonany Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 9/20 Pięciostanowy model procesu Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 10/20 Pięciostanowy model procesu w dwustanowym modelu procesu kolejka działa na zasadzie FIFO, a procesor wykonuje procesy cyklicznie z kolejki uruchomiony - proces aktualnie wykonywany problem pojawia się w przypadku, gdy kolejny proces pobierany do wykonania z kolejki jest zablokowany, gdyż oczekuje na zakończenie operacji we-wy zablokowany - proces oczekujący na zakończenie operacji we-wy gotowy - proces gotowy do wykonania przy najbliższej możliwej okazji nowy - proces, który właśnie został utworzony (ma utworzony blok kontrolny procesu, nie został jeszcze załadowany do pamięci), ale nie został jeszcze przyjęty do grupy procesów oczekujących na wykonanie rozwiązaniem powyższego problemu jest podział procesów nieuruchomionych na gotowe do wykonania i zablokowane Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 anulowany - proces, który został wstrzymany lub anulowany z jakiegoś powodu dr inż. Jarosław Forenc 11/20 Pięciostanowy model procesu podział procesów nieuruchomionych na gotowe do wykonania i zablokowane wymaga zastosowania minimum dwóch kolejek Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 12/20 Zarządzanie dyskowymi operacjami we/wy operacje na dyskach twardych są obecnie o kilka rzędów wielkości wolniejsze niż operacje na pamięci operacyjnej wydajność systemu przechowywania danych ma zatem bardzo duży wpływ na wydajność całego systemu komputerowego zazwyczaj w systemie istnieje wiele procesów zgłaszających żądanie operacji odczytu/zapisu różnych ścieżek na dysku załóżmy, że głowica znajduje się nad ścieżką nr 53 i wymagany jest dostęp (odczyt lub zapis ścieżek) o następujących numerach: 98, 183, 37, 122, 14, 124, 65, 67 gdy pojawia się zdarzenie system operacyjny musi przejrzeć kolejkę szukając procesów, który związane są z danym zdarzeniem w celu zapewnienia większej wydajności lepiej jest gdy dla każdego zdarzenia istnieje oddzielna kolejka Algorytmy szeregowania żądań dostępu do dysku: FIFO (FCFS) SCAN SSTF C-SCAN Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 13/20 Algorytm FIFO (First In First Out) Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 14/20 Algorytm SSFT (Shortest (Shortest Service Time First) przetwarza żądania dyskowych operacji we-wy w kolejności ich napływania (kolejność sekwencyjna) przetwarza żądanie dyskowej operacji we-wy, które wiąże się z najkrótszym przesunięciem głowicy z jej bieżącej lokalizacji przykład: 98, 183, 37, 122, 14, 124, 65, 67 przykład: 98, 183, 37, 122, 14, 124, 65, 67 0 14 37 53 65 67 98 122 124 183 200 inna nazwa: FCFS - First Come First Served inne tłumaczenie skrótu SSTF - Short Seek Time First zalety: prosty w implementacji zalety: lepsza wydajność od algorytmu FIFO wady: długi czas wyszukiwania wady: „zagłodzenie żądań” przy dużej liczbie napływających żądań Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 15/20 Algorytm SCAN Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 16/20 Algorytm C-SCAN głowica porusza się od prawej strony do lewej (i na odwrót) obsługując żądania, które napotka po drodze głowica porusza się od lewej strony do prawej obsługując żądania, które napotka po drodze przykład: 98, 183, 37, 122, 14, 124, 65, 67 po dojściu do ostatniej ścieżki powraca na początek dysku (nie obsługując żadnych żądań po drodze) i rozpoczyna od nowa przykład: 98, 183, 37, 122, 14, 124, 65, 67 0 14 37 53 65 67 98 122 124 algorytm ten nazywany jest także skanowaniem lub algorytmem windy zmniejsza się w ten sposób maksymalne opóźnienie związane z nowymi żądaniami 183 200 Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 17/20 Przydział pamięci dyskowej - alokacja ciągła dr inż. Jarosław Forenc 18/20 Przydział pamięci dyskowej - alokacja listowa każdy plik zajmuje ciąg kolejnych bloków na dysku każdy plik jest listą powiązanych ze sobą bloków dyskowych, które mogą znajdować się w dowolnym miejscu na dysku plik zdefiniowany jest przez adres pierwszego bloku i ilość kolejnych zajmowanych bloków w katalogu dla każdego pliku zapisany jest wskaźnik do pierwszego i ostatniego bloku pliku zalety: małe opóźnienia w transmisji danych, łatwy dostęp do dysku każdy blok zawiera wskaźnik do następnego bloku wady: trudność w znalezieniu miejsca na nowy plik Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc 19/20 Przydział pamięci dyskowej - alokacja indeksowa Informatyka 2, studia stacjonarne I stopnia Rok akademicki 2013/2014, Wykład nr 5 dr inż. Jarosław Forenc Koniec wykładu nr 5 każdy plik ma własny blok indeksowy, będący tablicą adresów bloków dyskowych w katalogu zapisany jest dla każdego pliku adres bloku indeksowego Dziękuję za uwagę! 20/20