2.1 Wstęp Kryteria planowania Algorytmy planowania Systemy wieloprocesorowe i czasu rzeczywistego...

Wielkość: px
Rozpocząć pokaz od strony:

Download "2.1 Wstęp Kryteria planowania Algorytmy planowania Systemy wieloprocesorowe i czasu rzeczywistego..."

Transkrypt

1 Plan prezentacji Spis treści 1 Planowanie przydziału procesora Wstęp Kryteria planowania Algorytmy planowania Systemy wieloprocesorowe i czasu rzeczywistego Zarzadzanie pamięcia Wstęp Wymiana Przydział ciągły pamięci Stronicowanie i segmentacja Stronicowanie Segmentacja Segmentacja ze stronicowaniem Planowanie przydziału procesora 1.1 Wstęp Wprowadzenie Pierwsze komputery: Działa jedno zadanie Operator szereguje zadania W trakcie operacji we/wy procesor jest bezczynny Systemy wieloprogramowe: W systemie jest uruchomionych wiele zadań Lepsze wykorzystanie procesora System musi decydować o przydziale procesora do zadania Cele planowania zadań Organizacja środowiska wieloprogramowego Optymalizacja wykorzystania procesora i sprzętu Zapewnienie pracy współbieżnej i interaktywnej Fazy procesora i wejścia-wyjścia Wykonywanie procesu można podzielić na wykonywane naprzemiennie fazy: fazę procesora proces intensywnie korzysta z procesora fazę wejścia wyjścia proces wykonuje operację wejścia-wyjścia Proces zaczyna się fazą procesora, po której następuje faza wejścia-wyjścia W ostatniej fazie procesora następuje zakończenie procesu 1

2 Fazy procesora i wejścia-wyjścia Proces ograniczony przez wejście-wyjście będzie miał wiele, bardzo krótkich faz procesora Proces ograniczony przez procesor będzie miał długie fazy procesora, ale będzie ich mało Większość procesów ma bardzo krótkie fazy procesora Planowanie zadań Decyzję o przydziale procesora można podejmować w następujących wypadkach: 1. Proces przeszedł w stan oczekiwania 2. Proces zakończył zadanie 3. Proces przeszedł ze stanu aktywności w stan gotowości (np. po przerwaniu) 4. Proces przeszedł ze stanu oczekiwania w stan gotowości (np. po zakończeniu operacji we/wy) Planowanie zadań Planowanie niewywłaszczajace Jeżeli wybór procesu do wykonywania zachodzi tylko w przypadkach 1 i 2, tj. przy przejściu procesu w stan oczekiwania lub jego zakończeniu, to mówimy o planowaniu niewywłaszczajacym. Planowanie z wywłaszczeniem Jeżeli dopuszcza się przydział procesora innemu zadaniu po wystąpieniu innych zdarzeń (przerwanie, zakończenie operacji we/wy), to mówimy o planowaniu wywłaszczajacym. Pojęcia Planista krótkoterminowy (short-term scheduler) podejmuje decyzję, który z oczekujących procesów jako następny powinien mieć przydzielony procesor Ekspedytor (dyspozytor, dispatcher) moduł, w którego gestii są działania związane z przełączaniem procesów: wstrzymanie procesu przełączanie kontekstu wznowienie procesu 1.2 Kryteria planowania Kryteria planowania Wykorzystanie procesora Przepustowość Długość cyklu przetwarzania Czas oczekiwania Czas odpowiedzi (reakcji) Zwykle wykorzystuje się z kryteria złożone, uwzględniające różne czynniki. 2

3 Kryteria planowania Wykorzystanie procesora Procent czasu procesora wykorzystany na wykonywanie zadań. Dotyczy całego systemu Może zależeć od charakteru wykonywanych zadań Typowo mieści się w przedziale 40 90% Dąży się do maksymalizacji Kryteria planowania Przepustowość Liczba procesów zakończonych w jednostce czasu. Dotyczy całego systemu Ściśle zależy od charakteru wykonywanych zadań Dąży się do maksymalizacji Kryteria planowania Długość cyklu przetwarzania Czas od nadejścia procesu do jego zakończenia. Obejmuje czas oczekiwania na przydział procesora, operacji wejścia wyjścia oraz przetwarzania Zależy od charakteru wykonywanego zadania Dąży się do minimalizacji Kryteria planowania Czas oczekiwania Łączny czas oczekiwania procesu w stanie gotowy. Zależy od warunków pracy systemu Najbardziej obiektywny Dąży się do minimalizacji Kryteria planowania Czas odpowiedzi Czas pomiędzy wysłaniem żądania a początkiem odpowiedzi na nie. Obejmuje czas przetwarzania Zależy od charakteru wykonywanego zadania Minimalizacja wartości średniej Korzystna mała wariancja 3

4 Sensowny i przewidywalny czas odpowiedzi Ostatni warunek ( Sensowny i przewidywalny czas odpowiedzi sprowadza się do sumy dwóch poprzedzających. Sensowność czasu odpowiedzi sprowadza się do akceptowalnego średniego czasu odpowiedzi. Przewidywalność czasu odpowiedzi skorelowana jest z wariancją czasu odpowiedzi. Wariancja jest miarą zmienności parametru intuicyjnie można ją kojarzyć z rozrzutem wartości cechy wokół średniej (zgrabną ścisłą definicję można znaleźć np. w Wikipedii). Mała wariancja oznacza, że czas odpowiedzi systemu jest zwykle zbliżony do wartości średniej, a więc w odczuciu użytkownika czas odpowiedzi jest przewidywalny. 1.3 Algorytmy planowania Algorytmy planowania przydziału procesora FCFS (Pierwszy zgłoszony - pierwszy obsłużony) SJF (Najpierw najkrótsze zadanie) Planowanie priorytetowe Planowanie karuzelowe (rotacyjne) Wielopoziomowe planowanie kolejek Algorytm Pierwszy zgłoszony pierwszy obsłużony Zgłoszenia obsługiwane są w kolejności nadchodzenia Czas oczekiwania zależy od kolejności obsługi zgłoszeń Algorytm niewywłaszczający Algorytm Pierwszy zgłoszony pierwszy obsłużony Przykład praktyczny Przykład praktyczny Trzy procesy: P1 ma fazę procesora o długości 24ms P2 i P3 mają fazę procesora o długości 3ms Procesy nadchodzą do kolejki w chwili 0 w różnej kolejności: P1, P2, P3 P2, P3, P1 Jaki będzie średni czas oczekiwania? 4

5 Algorytm Pierwszy zgłoszony pierwszy obsłużony Przykład praktyczny Kolejność wykonanie P1, P2, P3 Średni czas oczekiwania: ( )/3 = 17ms Kolejność wykonania P2, P3, P1 Średni czas oczekiwania: ( )/3 = 3ms Najpierw najkrótsze zadanie (SJF) Najpierw wykonywane jest najkrótsze zadanie (najkrótsza faza procesora) Algorytm optymalny Pod uwagę powinna być brana długość następnej fazy procesora: brak możliwości dokładnego określenia szacowanie na podstawie dotychczasowego zachowania procesu Najpierw najkrótsze zadanie (SJF) Szacowanie czasu trwania następnej fazy procesora Średnia długość dotychczasowych faz procesora Średnia wykładnicza τ n+1 = αt n + (1 α)τ n t n τ n długość poprzedniej fazy procesora prognozowana długość poprzedniej fazy procesora (historia) α współczynnik określający wpływ długości poprzedniej fazy procesora na wynik Najpierw najkrótsze zadanie (SJF) SJF bez wywłaszczenia proces jest dodawany do puli procesów gotowych bieżący proces nie jest przerywany nowy proces jest uwzględniany przy wyborze następnego procesu SJF z wywłaszczeniem (najpierw najkrótszy pozostały czas) proces jest dodawany do puli procesów gotowych jeśli czas wykonania procesu jest krótszy niż pozostały czas wykonania bieżącego procesu proces bieżący jest wywłaszczany 5

6 Najpierw najkrótsze zadanie (SJF) Przykład praktyczny Przykład Cztery procesy przychodzą do wykonania: Proces Czas przybycia Czas trwania fazy P P P P Przy stosowaniu algorytmu FCFS średni czas oczekiwania wynosi 11.25ms Jakie będą czasy oczekiwania dla różnych wariantów algorytmu SJF? Najpierw najkrótsze zadanie (SJF) Przykład praktyczny Bez wywłaszczania Średni czas oczekiwania: (0 + (8 1) + (17 2) + (12 3))/4 = 7.75ms Z wywłaszczaniem Średni czas oczekiwania: (( ) + (1 1) + (17 2) + (5 3))/4 = 6.5ms Planowanie priorytetowe Każdemu procesowi przydzielany jest priorytet Procesy są wykonywane w kolejności mającego priorytetu Priorytet wyrażany jest liczbowo: zwykle liczba całkowita znaczenie liczb jest umowne, najmniejsza liczba może oznaczać najwyższy priorytet Planowanie może odbywać się z wywłaszczeniem lub bez Planowanie priorytetowe Priorytet wewnętrzny Przy ustalaniu priorytetu brane pod uwagę są właściwości procesu: limit czasu średnia długość fazy procesora Priorytet zewnętrzny Priorytet ustalany jest na podstawie kryteriów zewnętrznych dla systemu operacyjnego: ważność procesu osoba, dla której proces jest wykonywany 6

7 Planowanie priorytetowe Planowanie priorytetowe może prowadzić do zagłodzeń: proces o niskim priorytecie może nie dostać czasu procesora postarzanie procesu stopniowe podwyższanie priorytetu w miarę upływu czasu Algorytm SJF jest algorytmem priorytetowym: priorytet jest odwrotnością długości następnej fazy procesora im dłuższa faza procesora tym niższy priorytet Planowanie rotacyjne Procesy umieszczane są w kolejce, wg. algorytmu FCFS Proces jest wykonywany przez pewien krótki czas (kwant czasu): jeśli zakończył fazę procesora jest usuwany z kolejki jeśli nie skończył fazy procesora jest wywłaszczany i przenoszony na koniec kolejki Planowanie rotacyjne jest zawsze wywłaszczające Inna nazwa algorytm karuzelowy, dla małych kwantów czasu dzielenie procesora Planowanie rotacyjne Przykład Trzy procesy: P 1 czas trwania fazy procesora 24ms P 2 i P 3 czas trwania fazy procesora 3ms Planowanie karuzelowe, kwant czasu 4ms Średni czas oczekiwania: ( )/3 = 5.66ms Planowanie rotacyjne Wraz ze wzrostem długości kwantu czasu zbliżamy się do algorytmu FCFS Spadek długości kwantu czasu powoduje częstsze przełączanie kontekstu Typowa długość kwantu czasu 10 do 100ms: krótszy kwant czasu lepsze wrażenie współbieżności dłuższy kwant czasu rzadsze przełączanie kontekstu Wskazane by kwant czasu był długi w porównaniu do czasu przełączania kontekstu 7

8 Wielopoziomowe planowanie kolejek Procesy podzielone są na kategorie: procesy systemowe procesy pierwszoplanowe procesy drugoplanowe Każda kategoria ma własną kolejkę procesów gotowych Każda kolejka ma przypisany priorytet procesy systemowe mają najwyższy priorytet procesy drugoplanowe mają priorytet najniższy Procesy z kolejek o wyższym priorytecie mają pierwszeństwo Wielopoziomowe planowanie kolejek Rysunek 1: Wielopoziomowe planowanie kolejek Wielopoziomowe kolejki ze sprzężeniem zwrotnym W klasycznych kolejkach wielopoziomowych proces nie może być przeniesiony do innej kolejki Prosta implementacja Mała elastyczność Planowanie wielopoziomowych kolejek ze sprzężeniem zwrotnym likwiduje te niedogodności Uogólnienie algorytmów planowania Największy stopień złożoności 8

9 Wielopoziomowe kolejki ze sprzężeniem zwrotnym System posiada kilka kolejek o coraz niższych priorytetach Kolejka o najniższym priorytecie używa algorytmu FCFS Kolejki o wyższych priorytetach używają algorytmu rotacyjnego Im wyższy priorytet, tym krótszy kwant czasu Wszystkie procesy pierwotnie przypisywane są do kolejki o najwyższym priorytecie Jeśli proces wykona swoją fazę w przydzielonym mu kwancie czasu, pozostaje w kolejce, w przeciwnym wypadku zostaje zdegradowany Procesy z kolejek o wyższym priorytecie mają pierwszeństwo Wielopoziomowe kolejki ze sprzężeniem zwrotnym Rysunek 2: Wielopoziomowe planowanie kolejek ze sprzężeniem zwrotnym Wielopoziomowe kolejki ze sprzężeniem zwrotnym Parametry algorytmu: Ilość kolejek Algorytm planowania dla każdej kolejki Warunki awansu i/lub degradacji Zasady pierwotnego przydziału do kolejki 1.4 Systemy wieloprocesorowe i czasu rzeczywistego Planowanie w systemach wieloprocesorowych Wieloprzetwarzanie symetryczne (SMP): wiele, jednakowych procesorów wspólna kolejka zadań do wykonania optymalne wykorzystanie zasobów kłopotliwe korzystanie z zasobów współdzielonych konieczne zapewnienie integralności kolejki zadań 9

10 Planowanie w systemach wieloprocesorowych Wieloprzetwarzanie asymetryczne: procesory o różnych możliwościach konieczne uwzględnienie możliwości procesorów architektury master-slave jeden procesor organizuje pracę i rozdziela zadania pozostałe procesory wykonują zlecone zadania prosta implementacja nie zawsze pełne wykorzystanie możliwości sprzętu Planowanie w czasie rzeczywistym Rygorystyczne (twarde) systemy czasy rzeczywistego Czas wykonania operacji jest nieprzekraczalny. System musi znać czas wykonywania operacji w systemie Jeśli planista nie jest w stanie zapewnić wymaganego czasu wykonania zadania - odrzuca je Trudne w realizacji Łagodne (miękkie) systemy czasu rzeczywistego Czas wykonania operacji powinien być jak najkrótszy. Proces powinien mieć najwyższy możliwy priorytet Realizowalne w większości systemów operacyjnych Planowanie w czasie rzeczywistym Garść pojęć Problemy planowania w czasie rzeczywistym Opóźnienie ekspedycji Czas od momentu poinformowania planisty o uruchomieniu procesu do momentu jego zadziałania. Wywłaszczenie jądra i funkcji systemowych Inwersja priorytetów Blokowanie przez proces o niskim priorytecie zasobów potrzebnych procesowi o wyższym priorytecie. Protokół dziedziczenia priorytetów 10

11 2 Zarzadzanie pamięcia 2.1 Wstęp Pamięć Pamięć operacyjna jest tablicą bajtów (słów) posiadających adresy Obok czasu procesora pamięć jest niezbędnym zasobem potrzebnym do wykonywania programów Współbieżne wykonywanie procesów wymaga współdzielenia pamięci Wiazanie adresów Aby móc sięgnąć do pamięci trzeba podać adres W kodzie źródłowym adres jest zapisany symbolicznie (nazwa zmiennej) Wykonywany program musi posługiwać się adresami Wiazanie adresów Proces odwzorowania nazw na adresy komórek pamięci nazywa się wiązaniem adresów Dygresja: od kodu źródłowego do procesu Kod źródłowy zawiera adresy symboliczne nazwy funkcji nazwy zmiennych W trakcie kompilacji adresy są tłumaczone: na adresy bezwzględne kod absolutny na adresy względne kod relokowalny 11

12 Dygresja: od kodu źródłowego do procesu Kod absolutny Adresy zapisane jako bezwzględne Kod absolutny musi być zawsze ładowany w ten sam obszar pamięci Kod relokowalny Adresy zapisane jako odległość od adresu bazowego Adres bazowy jest ustalany w trakcie ładowania Dygresja: od kodu źródłowego do procesu Jeśli kod programu jest kodem relokowalnym, ostateczne wiązanie adresów odbywa się na etapie ładowania Niektóre systemy dopuszczają relokację na etapie wykonania Logiczna i fizyczna przestrzeń adresowa Adres logiczny Przestrzeń adresowa procesu może być różnie odwzorowywana w pamięci operacyjnej. Z tego powodu proces operuje na adresach logicznych (wirtualnych), które są odwzorowywane w pamięci komputera. Adres fizyczny Rzeczywisty adres komórki pamięci używany przez jednostkę pamięci. Adres logiczny i fizyczny będą jednakowe przy wiązaniu adresów na etapie kompilacji (kod absolutny). 12

13 Logiczna i fizyczna przestrzeń adresowa Logiczna przestrzeń adresowa Przestrzeń adresowa programu Fizyczna przestrzeń adresowa Przestrzeń adresów fizycznych Jednostka zarzadzania pamięcia Sprzętowe urządzenie odwzorowujące logiczną przestrzeń adresową procesu na adresy fizyczne. Logiczna i fizyczna przestrzeń adresowa Rysunek 3: Odwzorowanie adresów logicznych na pamięć fizyczną Logiczna i fizyczna przestrzeń adresowa Rysunek 4: Przykładowa realizacja jednostki zarządzania pamięcią 2.2 Wymiana Wymiana Aby proces mógł być wykonywany musi znajdować się w pamięci operacyjnej Współbieżnie wykonywane procesy muszą dzielić dostępną pamięć Nieaktywny proces można wysłać do pamięci pomocniczej, by zwolnić pamięć operacyjną dla działających procesów 13

14 Schemat wymiany Wymiana Potrzebna jest pamięć pomocnicza: szybka pojemna Prędkość działania pamięci pomocniczej ogranicza prędkość przełączania kontekstu czas wymiany powinien być krótki w porównaniu do czasu wykonywania czas wymiany jest proporcjonalny do ilości wymienianych danych dla 1MB danych i dysku o transferze 5MB/sek czas przesłania jest rzędu 210ms Wymiana Ograniczenia Wymianie nie mogą podlegać procesy oczekujące na zakończenie operacji we/wy Jeśli procesy są nierelokowalne muszą być sprowadzone w to samo miejsce w pamięci Niska wydajność We współczesnych systemach wymiana następuje tylko wtedy, gdy brakuje pamięci operacyjnej 2.3 Przydział ciagły pamięci Przydział pamięci Aby proces mógł działać musi mieć przydzieloną pamięć W środowisku wieloprogramowym trzeba zapewnić ochronę pamięci: pamięci systemu operacyjnego pamięci należącej do poszczególnych procesów Z punktu widzenia zarządzania pamięcią najwygodniejszy jest ciągły przydział pamięci 14

15 Ciagły przydział pamięci Rysunek 5: Ochrona pamięci przy ciągłym przydziale pamięci Ciagły przydział pamięci Metody przydziału Stały podział pamięci na obszary (partycje): proces ma przydzielony jeden z obszarów liczba obszarów jest stała stała liczba procesów w systemie Przydział pamięci w zależności od potrzeb: procesowi przydzielana jest niezbędna ilość pamięci ilość uruchomionych procesów w systemie może się zmieniać Ciagły przydział pamięci Dziura określa się wolny obszar pamięci. 1. Na początku cała wolna pamięć stanowi jedną dziurę 2. Uruchamianym procesom przydzielana jest pamięć z dziur proces dostaje tylko tyle pamięci, ile aktualnie potrzebuje pamięć zostaje przydzielona w wystarczająco dużej dziurze jeśli brak odpowiedniej dziury, proces czeka na zwolnienie pamięci przez inne procesy 3. Zwalniana pamięć tworzy nowe dziury lub jest wliczana w obszar sąsiadujących dziur Strategie przydziału pamięci 1. Pierwsze dopasowanie 2. Najlepsze dopasowanie 3. Najgorsze dopasowanie Strategie przydziału pamięci Pierwsze dopasowanie Przydzielana jest pierwsza znaleziona dziura o wystarczającym rozmiarze Szybkie wyszukiwanie Dobre wykorzystanie pamięci 15

16 Strategie przydziału pamięci Najlepsze dopasowanie Przydzielane jest miejsce w najmniejszej pasującej dziurze Wymaga przejrzenia całej listy wolnych obszarów pamięci, chyba że jest ona uporządkowana rosnąco Wykorzystanie pamięci porównywalne ze strategią pierwszego dopasowania Strategie przydziału pamięci Najgorsze dopasowanie Przydzielane jest miejsce w największej dostępnej dziurze Wymaga przejrzenia całej listy wolnych obszarów pamięci, chyba że jest ona uporządkowana malejąco Niekorzystne wykorzystanie pamięci Problemy przydziału ciagłego Pomiędzy obszarami pamięci poszczególnych procesów pozostają wolne miejsca może istnieć wystarczająca ilość wolnego miejsca ale może ono być poszatkowane na małe kawałki Do którego końca dziury wyrównywać przydzielany obszar pamięci? Reguła 50% W przypadku przedziału według strategii pierwszego dopasowania przydział N bloków pamięci powoduje utratę (w skutek fragmentacji zewnętrznej) 0.5N bloków pamięci Fragmentacja zewnętrzna Fragmentacja zewnętrzna Rozbicie wolnego obszaru na wiele fragmentów, zbyt małych, by je wykorzystać. Środki zaradcze: Upakowanie (defragmentacja) czasochłonna wymaga, by przesuwane zasoby były relokowalne Dopuszczenie przydzielania nieciągłych obszarów pamięci komplikuje zarządzanie pamięci Fragmentacja wewnętrzna Co zrobić, jeśli dostępna dziura jest niewiele większa od wymaganego rozmiaru pamięci? Utrzymanie informacji o wolnym miejscu może być kosztowniejsze niż ilość wolnego miejsca... Przydzielenie tej pamięci procesowi uwolni system z konieczności przechowywania informacji o niej Podobnie jak w przypadku systemu plików, pamięć dzieli się na bloki o stałej wielkości i przydziela procesowi całkowitą ich ilość Fragmentacja wewnętrzna Fragmentacja wewnętrzną nazywamy różnicę pomiędzy przydzielonym obszarem pamięci a rzeczywistym zapotrzebowaniem na pamięć 16

17 2.4 Stronicowanie i segmentacja Stronicowanie Koncepcja stronicowania Pamięć fizyczna jest podzielona na bloki o stałej długości ramki Pamięć pomocnicza jest podzielona na bloki o tym samym rozmiarze co ramki strony Strony mogą być ładowane do dowolnych ramek Powiązanie adresu logicznego z fizycznym odbywa się sprzętowo Przestrzeń adresowa procesu jest jednowymiarowa i jednolita Model stronicowania Rysunek 6: Realizacja stronicowania Stronicowanie Rozmiar strony jest zdeterminowany przez sprzęt Rozmiar strony będący potęgą 2 ułatwia adresowanie: Przestrzeń adresowa m-bitowa Rozmiar strony 2 n n młodszych bitów określa offset Pozostałe m n bitów określa numer strony Przykładowo: przestrzeń adresowa 16-bitowa rozmiar strony 1024 (2 10 ) jednostki = 6 bitów dla numeru strony, tj. 64 (2 6 ) strony 17

18 Pamięć przydziela się pełnymi stronami fragmentacja wewnętrzna Stronicowanie Ochrona i współdzielenie: strona może być współdzielona przez kilka procesów konieczna jest informacja czy strona jest prawidłowa, dostępna tylko do odczytu lub do odczytu i zapisu brak korelacji strona typ danych Rozmiar tablicy stron: dla stron o o rozmiarze 4kB i przestrzeni adresowej 2 32 tablica indeksowa będzie miała rozmiar 4MB (4 bajty na stronę) aby usprawnić zarządzanie pamięcią stosuje się wielopoziomowe tablice stron Segmentacja Koncepcja segmentacji Stronicowanie zakłada przedstawienie pamięci jako jednowymiarowej tablicy podzielonej na jednakowej długości strony Z punktu widzenia programisty mamy różne "typy"pamięci: program główny zmienne stałe funkcje stos Poszczególne bloki danych nie mają jednakowego rozmiaru Przestrzeń adresowa procesu jest dwuwymiarowa Koncepcja segmentacji Przestrzeń adresowa składa się z segmentów Każdy segment posiada nazwę oraz informację o długości Dla celów implementacyjnych każdemu segmentowi przypisany jest numer Adres stanowi para: nazwa (numer) segmentu oraz pozycji w segmencie 18

19 Model segmentacji Rysunek 7: Realizacja segmentacji Segmentacja Ochrona danych Ochrona i współdzielenie na poziomie segmentów Segmenty mają konkretną semantykę dane w obrębie segmentu są używane w określony sposób: można zakazać zapisu do segmentu z kodem programu można zapobiegać wykonywaniu danych Przekroczenia zakresów wykrywane sprzętowo Segmentacja Współdzielenie danych Segmenty mogą być współdzielone Dzielone mogą być dane i kod programu Współdzielony kod musi być jednoznaczny 19

20 2.4.3 Segmentacja ze stronicowaniem Segmentacja ze stronicowaniem Połączenie techniki segmentacji ze stronicowaniem: proces widzi segmenty pamięci adres segmentów przeliczany jest na adres pośredni zwany adresem liniowym adres liniowy poprzez stronicowanie odwzorowywany jest na pamięć fizyczną Segmentacja ze stronicowaniem Schemat Rysunek 8: Schemat segmentacji ze stronicowaniem Segmentacja ze stronicowaniem Połączenie zalet segmentacji i stronicowania: logiczna struktura pamięci ułatwiona wymiana Sprzętowe wsparcie w rodzinie procesorów x86 Długie adresy duże tablice segmentów i stron 20

Planowanie przydziału procesora

Planowanie przydziału procesora Dariusz Wawrzyniak Plan wykładu Komponenty jądra związane z szeregowaniem Ogólna koncepcja planowania Kryteria oceny algorytmów planowania Algorytmy planowania (2) 1 Komponenty jądra w planowaniu Planista

Bardziej szczegółowo

Planowanie przydziału procesora CPU scheduling. Koncepcja szeregowania. Planista przydziału procesora (planista krótkoterminowy) CPU Scheduler

Planowanie przydziału procesora CPU scheduling. Koncepcja szeregowania. Planista przydziału procesora (planista krótkoterminowy) CPU Scheduler Planowanie przydziału procesora CPU scheduling Koncepcja szeregowania Koncepcja szeregowania (Basic Concepts) Kryteria szeregowania (Scheduling Criteria) Algorytmy szeregowania (Scheduling Algorithms)

Bardziej szczegółowo

Planowanie przydziału procesora

Planowanie przydziału procesora Planowanie przydziału procesora Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Komponenty jądra związane z szeregowaniem Ogólna koncepcja planowania Kryteria oceny uszeregowania Algorytmy

Bardziej szczegółowo

Zarządzanie procesami i wątkami

Zarządzanie procesami i wątkami SOE - Systemy Operacyjne Wykład 4 Zarządzanie procesami i wątkami dr inŝ. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Pojęcie procesu (1) Program zbiór instrukcji dla procesora

Bardziej szczegółowo

Pamięć. Jan Tuziemski Źródło części materiałów: os-book.com

Pamięć. Jan Tuziemski Źródło części materiałów: os-book.com Pamięć Jan Tuziemski Źródło części materiałów: os-book.com Cele wykładu Przedstawienie sposobów organizacji pamięci komputera Przedstawienie technik zarządzania pamięcią Podstawy Przed uruchomieniem program

Bardziej szczegółowo

Przełączanie kontekstu. Planista średnioterminowy. Diagram kolejek. Kolejki planowania procesów. Planiści

Przełączanie kontekstu. Planista średnioterminowy. Diagram kolejek. Kolejki planowania procesów. Planiści Kolejki planowania procesów Diagram kolejek Kolejka zadań (job queue) - tworzą ją procesy wchodzące do systemu. Kolejka procesów gotowych (ready queue) - procesy gotowe do działania, umieszczone w pamięci,

Bardziej szczegółowo

Fazy procesora i wejścia-wyjścia. Planowanie przydziału procesora. Czasy faz procesora. Planowanie przydziału procesora

Fazy procesora i wejścia-wyjścia. Planowanie przydziału procesora. Czasy faz procesora. Planowanie przydziału procesora Planowanie przydziału procesora W pamięci operacyjnej znajduje się kilka procesów jednocześnie. Kiedy jakiś proces musi czekać, system operacyjny odbiera mu procesor i oddaje do dyspozycji innego procesu.

Bardziej szczegółowo

Planowanie przydziału procesora

Planowanie przydziału procesora Planowanie przydziału procesora W pamięci operacyjnej znajduje się kilka procesów jednocześnie. Kiedy jakiś proces musi czekać, system operacyjny odbiera mu procesor i oddaje do dyspozycji innego procesu.

Bardziej szczegółowo

Zarządzanie pamięcią operacyjną

Zarządzanie pamięcią operacyjną SOE Systemy Operacyjne Wykład 7 Zarządzanie pamięcią operacyjną dr inż. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Hierarchia pamięci czas dostępu Rejestry Pamięć podręczna koszt

Bardziej szczegółowo

Wykład 6. Planowanie (szeregowanie) procesów (ang. process scheduling) Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB

Wykład 6. Planowanie (szeregowanie) procesów (ang. process scheduling) Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB Wykład 6 Planowanie (szeregowanie) procesów (ang. process scheduling) Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB Rodzaje planowania Planowanie długoterminowe. Decyzja o

Bardziej szczegółowo

Zarządzanie procesorem

Zarządzanie procesorem Zarządzanie procesorem 1. Koncepcja procesu 2. Blok kontrolny procesu 3. Planowanie (szeregowanie) procesów! rodzaje planistów! kryteria planowania 4. Algorytmy planowania! FCFS! SJF! RR! planowanie priorytetowe!

Bardziej szczegółowo

Wykład 7. Zarządzanie pamięcią

Wykład 7. Zarządzanie pamięcią Wykład 7 Zarządzanie pamięcią -1- Świat idealny a świat rzeczywisty W idealnym świecie pamięć powinna Mieć bardzo dużą pojemność Mieć bardzo krótki czas dostępu Być nieulotna (zawartość nie jest tracona

Bardziej szczegółowo

Zarządzanie pamięcią w systemie operacyjnym

Zarządzanie pamięcią w systemie operacyjnym Zarządzanie pamięcią w systemie operacyjnym Cele: przydział zasobów pamięciowych wykonywanym programom, zapewnienie bezpieczeństwa wykonywanych procesów (ochrona pamięci), efektywne wykorzystanie dostępnej

Bardziej szczegółowo

Planowanie przydziału procesora

Planowanie przydziału procesora Planowanie przydziału procesora Ogólna koncepcja planowania Tryb decyzji określa moment czasu, w którym oceniane i porównywane są priorytety procesów i dokonywany jest wybór procesu do wykonania. Funkcja

Bardziej szczegółowo

Zarządzanie pamięcią operacyjną zagadnienia podstawowe

Zarządzanie pamięcią operacyjną zagadnienia podstawowe Zarządzanie pamięcią operacyjną zagadnienia podstawowe Pamięć jako zasób systemu komputerowego Pamięć jest zasobem służący do przechowywania danych. Z punktu widzenia systemu pamięć jest zasobem o strukturze

Bardziej szczegółowo

PRZYDZIAŁ PAMIĘCI OPERACYJNEJ

PRZYDZIAŁ PAMIĘCI OPERACYJNEJ PRZYDZIAŁ PAMIĘCI OPERACYJNEJ dr inż. Krzysztof Patan Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski k.patan@issi.uz.zgora.pl Wstęp Pamięć komputera wielka tablica słów (bajtów)

Bardziej szczegółowo

Ogólna koncepcja planowania. Planowanie przydziału procesora. Komponenty jądra w planowaniu. Tryb decyzji. Podejmowanie decyzji o wywłaszczeniu

Ogólna koncepcja planowania. Planowanie przydziału procesora. Komponenty jądra w planowaniu. Tryb decyzji. Podejmowanie decyzji o wywłaszczeniu Planowanie przydziału procesora Ogólna koncepcja planowania Tryb decyzji określa moment czasu, w którym oceniane i porównywane są priorytety procesów i dokonywany jest wybór procesu do wykonania. Funkcja

Bardziej szczegółowo

Zarządzanie pamięcią operacyjną

Zarządzanie pamięcią operacyjną Dariusz Wawrzyniak Plan wykładu Pamięć jako zasób systemu komputerowego hierarchia pamięci przestrzeń owa Wsparcie dla zarządzania pamięcią na poziomie architektury komputera Podział i przydział pamięci

Bardziej szczegółowo

KOMPONENTY SYSTEMÓW OPERACYJNYCH

KOMPONENTY SYSTEMÓW OPERACYJNYCH KOMPONENTY SYSTEMÓW OPERACYJNYCH dr hab. inż. Krzysztof Patan, prof. PWSZ Instytut Politechniczny Państwowa Wyższa Szkoła Zawodowa w Głogowie k.patan@issi.uz.zgora.pl PRZYDZIAŁ CZASU PROCESORA Cel: Stałe

Bardziej szczegółowo

Zarządzanie pamięcią. Od programu źródłowego do procesu. Dołączanie dynamiczne. Powiązanie programu z adresami w pamięci

Zarządzanie pamięcią. Od programu źródłowego do procesu. Dołączanie dynamiczne. Powiązanie programu z adresami w pamięci Zarządzanie pamięcią Przed wykonaniem program musi być pobrany z dysku i załadowany do pamięci. Tam działa jako proces. Podczas wykonywania, proces pobiera rozkazy i dane z pamięci. Większość systemów

Bardziej szczegółowo

Od programu źródłowego do procesu

Od programu źródłowego do procesu Zarządzanie pamięcią Przed wykonaniem program musi być pobrany z dysku i załadowany do pamięci. Tam działa jako proces. Podczas wykonywania, proces pobiera rozkazy i dane z pamięci. Większość systemów

Bardziej szczegółowo

4. Procesy pojęcia podstawowe

4. Procesy pojęcia podstawowe 4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa

Bardziej szczegółowo

Stronicowanie w systemie pamięci wirtualnej

Stronicowanie w systemie pamięci wirtualnej Pamięć wirtualna Stronicowanie w systemie pamięci wirtualnej Stronicowanie z wymianą stron pomiędzy pamięcią pierwszego i drugiego rzędu. Zalety w porównaniu z prostym stronicowaniem: rozszerzenie przestrzeni

Bardziej szczegółowo

Systemy Operacyjne - zarządzanie procesami

Systemy Operacyjne - zarządzanie procesami Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 26 października 2010 1 1 Proces sekwencyjny 2 Cykl życia procesu 3 Deskryptor procesu 4 współbieżne 2 3 1 Motywacja 2 Kolejki 3 Planiści

Bardziej szczegółowo

Materiały pomocnicze 1

Materiały pomocnicze 1 TECHNIKI DZIELENIA OGRANICZONEGO ZBIORU ZASOBÓW wzajemne wyłączanie procesów od zasobów niepodzielnych PRZYDZIAŁ ZASOBÓW I PLANOWANIE zapobieganie zakleszczeniom zapewnienie dużego wykorzystania zasobów

Bardziej szczegółowo

Systemy operacyjne III

Systemy operacyjne III Systemy operacyjne III WYKŁAD Jan Kazimirski Pamięć wirtualna Stronicowanie Pamięć podzielona na niewielki bloki Bloki procesu to strony a bloki fizyczne to ramki System operacyjny przechowuje dla każdego

Bardziej szczegółowo

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2010/2011 Wykład nr 7 (24.01.2011) dr inż. Jarosław Forenc Rok akademicki

Bardziej szczegółowo

Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86

Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86 Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86 Spis treści Wprowadzenie... 11 1. Architektura procesorów rodziny x86... 17 1.1. Model procesorów

Bardziej szczegółowo

4. Procesy pojęcia podstawowe

4. Procesy pojęcia podstawowe 4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa

Bardziej szczegółowo

Pytania do treści wykładów:

Pytania do treści wykładów: Pytania do treści wykładów: Wprowadzenie: 1. Jakie zadania zarządzania realizowane są dla następujących zasobów: a) procesor, b) pamięć, c) plik? 2. W jaki sposób przekazywane jest sterowanie do jądra

Bardziej szczegółowo

SOE Systemy Operacyjne Wykład 8 Pamięć wirtualna dr inż. Andrzej Wielgus

SOE Systemy Operacyjne Wykład 8 Pamięć wirtualna dr inż. Andrzej Wielgus SOE Systemy Operacyjne Wykład 8 Pamięć wirtualna dr inż. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Pamięć wirtualna Stronicowanie na żądanie większość współczesnych systemów

Bardziej szczegółowo

Programowanie współbieżne Wykład 2. Iwona Kochańska

Programowanie współbieżne Wykład 2. Iwona Kochańska Programowanie współbieżne Wykład 2 Iwona Kochańska Miary skalowalności algorytmu równoległego Przyspieszenie Stały rozmiar danych N T(1) - czas obliczeń dla najlepszego algorytmu sekwencyjnego T(p) - czas

Bardziej szczegółowo

SYSTEMY OPERACYJNE WYKLAD 4 - zarządzanie pamięcią

SYSTEMY OPERACYJNE WYKLAD 4 - zarządzanie pamięcią Wrocław 2007 SYSTEMY OPERACYJNE WYKLAD 4 - zarządzanie pamięcią Paweł Skrobanek C-3, pok. 323 e-mail: pawel.skrobanek@pwr.wroc.pl www.equus.wroc.pl/studia.html 1 PLAN: 2. Pamięć rzeczywista 3. Pamięć wirtualna

Bardziej szczegółowo

ZARZĄDZANIE PAMIĘCIĄ OPERACYJNĄ

ZARZĄDZANIE PAMIĘCIĄ OPERACYJNĄ ZARZĄDZANIE PAMIĘCIĄ OPERACYJNĄ Wiązanie adresów adr.symbol -> adr. względne ->adresy pamięci kompilacja; kod bezwzględny (*.com) ładowanie; kod przemieszczalny wykonanie adr.względne -> adr. bezwzględne

Bardziej szczegółowo

Planowanie przydziału procesora

Planowanie przydziału procesora Planowanie przydziału procesora Pojęcia podstawowe. Kryteria planowania. Algorytmy planowania. Planowanie wieloprocesorowe. Planowanie w czasie rzeczywistym. Ocena algorytmów. Wiesław Płaczek Systemy Operacyjne:

Bardziej szczegółowo

Logiczny model komputera i działanie procesora. Część 1.

Logiczny model komputera i działanie procesora. Część 1. Logiczny model komputera i działanie procesora. Część 1. Klasyczny komputer o architekturze podanej przez von Neumana składa się z trzech podstawowych bloków: procesora pamięci operacyjnej urządzeń wejścia/wyjścia.

Bardziej szczegółowo

Systemy Operacyjne Zarządzanie pamięcią operacyjną

Systemy Operacyjne Zarządzanie pamięcią operacyjną Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 4 stycznia 2007 1 Zagadnienia podstawowe 1 Wiązanie adresów 2 Ładowanie dynamiczne 3 Łączenie dynamiczne 4 Nakładki 2 3 Przydział ciągłych

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 12 Wspomaganie systemu operacyjnego: pamięć wirtualna Partycjonowanie Pamięć jest dzielona, aby mogło korzystać z niej wiele procesów. Dla jednego procesu przydzielana jest

Bardziej szczegółowo

Celem wykładu jest przedstawienie zagadnień planowania przydziału procesora, czyli szeregowania procesów w dostępie do procesora.

Celem wykładu jest przedstawienie zagadnień planowania przydziału procesora, czyli szeregowania procesów w dostępie do procesora. Celem wykładu jest przedstawienie zagadnień planowania przydziału procesora, czyli szeregowania procesów w dostępie do procesora. Planowanie takie sprowadza się do wyboru jednego z procesów (lub wątków)

Bardziej szczegółowo

Pamięć wirtualna. Jan Tuziemski Źródło części materiałów: os-book.com

Pamięć wirtualna. Jan Tuziemski Źródło części materiałów: os-book.com Pamięć wirtualna Jan Tuziemski Źródło części materiałów: os-book.com Pamięć wirtualna Na poprzednich wykładach omówiono sposoby zarządzania pamięcią Są one potrzebne ponieważ wykonywane rozkazy procesów

Bardziej szczegółowo

Systemy Operacyjne Pamięć wirtualna cz. 2

Systemy Operacyjne Pamięć wirtualna cz. 2 Systemy Operacyjne Pamięć wirtualna cz. 2 Arkadiusz Chrobot Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 20 stycznia 2007 1 1 Wstęp 2 Minimalna liczba ramek 3 Algorytmy przydziału

Bardziej szczegółowo

SYSTEMY OPERACYJNE WYKLAD 6 - wątki

SYSTEMY OPERACYJNE WYKLAD 6 - wątki Wrocław 2007 SYSTEMY OPERACYJNE WYKLAD 6 - wątki Paweł Skrobanek C-3, pok. 323 e-mail: pawel.skrobanek@pwr.wroc.pl www.equus.wroc.pl/studia.html 1 PLAN: 1. Wątki 2. Planowanie przydziału procesora (szeregowanie

Bardziej szczegółowo

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności.

Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle. Krzysztof Banaś, Obliczenia wysokiej wydajności. Wydajność systemów a organizacja pamięci, czyli dlaczego jednak nie jest aż tak źle Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Organizacja pamięci Organizacja pamięci współczesnych systemów komputerowych

Bardziej szczegółowo

Zarządzanie zasobami pamięci

Zarządzanie zasobami pamięci Zarządzanie zasobami pamięci System operacyjny wykonuje programy umieszczone w pamięci operacyjnej. W pamięci operacyjnej przechowywany jest obecnie wykonywany program (proces) oraz niezbędne dane. Jeżeli

Bardziej szczegółowo

Informatyka, systemy, sieci komputerowe

Informatyka, systemy, sieci komputerowe Informatyka, systemy, sieci komputerowe Systemy operacyjne wykład 2 Procesy i wątki issk 1 SO koncepcja procesu i zasobu Proces jest elementarną jednostką pracy zarządzaną przez system operacyjny, wykonującym

Bardziej szczegółowo

Przykłady implementacji planowania przydziału procesora

Przykłady implementacji planowania przydziału procesora Przykłady implementacji planowania przydziału procesora Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Tradycyjne szeregowanie w systemie UNIX Szeregowanie w systemie Linux z jądrem

Bardziej szczegółowo

architektura komputerów w. 8 Zarządzanie pamięcią

architektura komputerów w. 8 Zarządzanie pamięcią architektura komputerów w. 8 Zarządzanie pamięcią Zarządzanie pamięcią Jednostka centralna dysponuje zwykle duża mocą obliczeniową. Sprawne wykorzystanie możliwości jednostki przetwarzającej wymaga obecności

Bardziej szczegółowo

Zarządzanie pamięcią. Podstawy Wymiana (swapping). Przydział ciągły pamięci. Stronicowanie. Segmentacja. Segmentacja ze stronicowaniem.

Zarządzanie pamięcią. Podstawy Wymiana (swapping). Przydział ciągły pamięci. Stronicowanie. Segmentacja. Segmentacja ze stronicowaniem. Zarządzanie pamięcią Podstawy Wymiana (swapping). Przydział ciągły pamięci. Stronicowanie. Segmentacja. Segmentacja ze stronicowaniem. Zarządzanie pamięcią podstawy pamięć operacyjna (główna) (main memory,

Bardziej szczegółowo

Planowanie przydziału procesora

Planowanie przydziału procesora Dariusz Wawrzyniak Celem wykładu jest przedstawienie zagadnień planowania przydziału procesora, czyli szeregowania procesów w dostępie do procesora. Planowanie takie sprowadza się do wyboru jednego z procesów

Bardziej szczegółowo

4. Procesy pojęcia podstawowe

4. Procesy pojęcia podstawowe 4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa

Bardziej szczegółowo

przydziału procesora Przykłady implementacji planowania przydziału procesora Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

przydziału procesora Przykłady implementacji planowania przydziału procesora Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Tradycyjne szeregowanie w systemie UNIX Szeregowanie w systemie Linux z jądrem 2.6 Szeregowanie w systemie Windows 2000/XP (2) Szeregowanie

Bardziej szczegółowo

Zarządzanie w systemach i sieciach komputerowych. Dr inż. Robert Wójcik. Wykład 3. Zarządzanie przydziałami procesora w systemach komputerowych

Zarządzanie w systemach i sieciach komputerowych. Dr inż. Robert Wójcik. Wykład 3. Zarządzanie przydziałami procesora w systemach komputerowych Zarządzanie w systemach i sieciach komputerowych Dr inż. Robert Wójcik Wykład 3. Zarządzanie przydziałami procesora w systemach komputerowych 3.1. Planowanie przydziału procesora http://wazniak.mimuw.edu.pl/index.php

Bardziej szczegółowo

Pamięć wirtualna. A gdyby tak w pamięci przebywała tylko ta część programu, która jest aktualnie wykonywana?

Pamięć wirtualna. A gdyby tak w pamięci przebywała tylko ta część programu, która jest aktualnie wykonywana? Pamięć wirtualna Pytanie: Czy proces rezerwuje pamięć i gospodaruje nią w sposób oszczędny? Procesy często zawierają ogromne fragmenty kodu obsługujące sytuacje wyjątkowe Zadeklarowane tablice lub rozmiary

Bardziej szczegółowo

Systemy operacyjne III

Systemy operacyjne III Systemy operacyjne III WYKŁAD 2 Jan Kazimirski 1 Procesy w systemie operacyjnym 2 Proces Współczesne SO w większości są systemami wielozadaniowymi. W tym samym czasie SO obsługuje pewną liczbę zadań procesów

Bardziej szczegółowo

Prezentacja systemu RTLinux

Prezentacja systemu RTLinux Prezentacja systemu RTLinux Podstawowe założenia RTLinux jest system o twardych ograniczeniach czasowych (hard real-time). Inspiracją dla twórców RTLinux a była architektura systemu MERT. W zamierzeniach

Bardziej szczegółowo

Podstawy informatyki. System operacyjny. dr inż. Adam Klimowicz

Podstawy informatyki. System operacyjny. dr inż. Adam Klimowicz Podstawy informatyki System operacyjny dr inż. Adam Klimowicz System operacyjny OS (ang. Operating System) Program komputerowy bądź zbiór programów, który zarządza udostępnianiem zasobów komputera aplikacjom.

Bardziej szczegółowo

Systemy operacyjne, architektura komputerów

Systemy operacyjne, architektura komputerów Systemy operacyjne, architektura komputerów 1. Struktura komputera: procesor, we/wy, magistrala, pamiec. Działanie komputera. Linie magistrali systemowej. Linia danych do przenoszenia danych np. szyna

Bardziej szczegółowo

Planowanie przydziału procesora

Planowanie przydziału procesora Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Celem wykładu jest przedstawienie zagadnień planowania przydziału procesora, czyli szeregowania procesów w dostępie do procesora. Planowanie takie sprowadza

Bardziej szczegółowo

System plików warstwa fizyczna

System plików warstwa fizyczna System plików warstwa fizyczna Dariusz Wawrzyniak Przydział miejsca na dysku Przydział ciągły (ang. contiguous allocation) cały plik zajmuje ciąg kolejnych bloków Przydział listowy (łańcuchowy, ang. linked

Bardziej szczegółowo

System plików warstwa fizyczna

System plików warstwa fizyczna System plików warstwa fizyczna Dariusz Wawrzyniak Plan wykładu Przydział miejsca na dysku Zarządzanie wolną przestrzenią Implementacja katalogu Przechowywanie podręczne Integralność systemu plików Semantyka

Bardziej szczegółowo

System plików warstwa fizyczna

System plików warstwa fizyczna System plików warstwa fizyczna Dariusz Wawrzyniak Przydział miejsca na dysku Zarządzanie wolną przestrzenią Implementacja katalogu Przechowywanie podręczne Integralność systemu plików Semantyka spójności

Bardziej szczegółowo

Organizacja typowego mikroprocesora

Organizacja typowego mikroprocesora Organizacja typowego mikroprocesora 1 Architektura procesora 8086 2 Architektura współczesnego procesora 3 Schemat blokowy procesora AVR Mega o architekturze harwardzkiej Wszystkie mikroprocesory zawierają

Bardziej szczegółowo

Zbigniew S. Szewczak Podstawy Systemów Operacyjnych

Zbigniew S. Szewczak Podstawy Systemów Operacyjnych Zbigniew S. Szewczak Podstawy Systemów Operacyjnych Wykład 7 Planowanie przydziału procesora. Toruń, 2004 Odrabianie wykładów czwartek, 1.04.2004, S7, g. 12.00 za 19.05 czwartek, 15.04.2004, S7, g. 12.00

Bardziej szczegółowo

SYSTEMY OPERACYJNE LABORATORIUM 2014/2015

SYSTEMY OPERACYJNE LABORATORIUM 2014/2015 1 SYSTEMY OPERACYJNE LABORATORIUM 2014/2015 ZASADY OCENIANIA ZADAŃ PROGRAMISTYCZNYCH: Zadania laboratoryjne polegają na symulacji i badaniu własności algorytmów/mechanizmów stosowanych w systemach operacyjnych.

Bardziej szczegółowo

Szeregowanie zadań w Linux Kernel 2.6. Daniel Górski Przemysław Jakubowski

Szeregowanie zadań w Linux Kernel 2.6. Daniel Górski Przemysław Jakubowski Szeregowanie zadań w Linux Kernel 2.6 Daniel Górski Przemysław Jakubowski Plan prezentacji Szeregowanie procesów - Szeregowanie - Cele szeregowania - Scheduler 2.6 - Struktury danych używane w 2.6 - Multiprocesorowość

Bardziej szczegółowo

Mikroprocesor Operacje wejścia / wyjścia

Mikroprocesor Operacje wejścia / wyjścia Definicja Mikroprocesor Operacje wejścia / wyjścia Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz Operacjami wejścia/wyjścia nazywamy całokształt działań potrzebnych

Bardziej szczegółowo

projektowanie systemu

projektowanie systemu projektowanie systemu cel użytkownika: system operacyjny powinien być wygodny, łatwy w użyciu, prosty do nauczenia, niezawodny, bezpieczny i szybki cel producenta: system operacyjny powinien być łatwy

Bardziej szczegółowo

Procesy, wątki i zasoby

Procesy, wątki i zasoby Procesy, wątki i zasoby Koncepcja procesu i zasobu, Obsługa procesów i zasobów, Cykl zmian stanów procesu i kolejkowanie, Klasyfikacja zasobów, Wątki, Procesy i wątki we współczesnych systemach operacyjnych.

Bardziej szczegółowo

Wprowadzenie do systemów operacyjnych. mgr inż. Krzysztof Szałajko

Wprowadzenie do systemów operacyjnych. mgr inż. Krzysztof Szałajko Wprowadzenie do systemów operacyjnych mgr inż. Krzysztof Szałajko Co to jest system operacyjny? Co to jest system komputerowy? 2 / 37 Definicja: system operacyjny System operacyjny jest programem pośredniczącym

Bardziej szczegółowo

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2009/2010 Wykład nr 8 (29.01.2009) dr inż. Jarosław Forenc Rok akademicki

Bardziej szczegółowo

dr inŝ. Jarosław Forenc

dr inŝ. Jarosław Forenc Rok akademicki 2009/2010, Wykład nr 8 2/19 Plan wykładu nr 8 Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2009/2010

Bardziej szczegółowo

1.1 Definicja procesu

1.1 Definicja procesu 1 Procesy pojęcia podstawowe 1 1.1 Definicja procesu Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa

Bardziej szczegółowo

Procesy i wątki. Blok kontrolny procesu. Proces. Proces - elementy. Stan procesu

Procesy i wątki. Blok kontrolny procesu. Proces. Proces - elementy. Stan procesu Proces Procesy i wątki Proces jest wykonywanym programem. Wykonanie procesu musi przebiegać w sposób sekwencyjny ( w dowolnej chwili na zamówienie naszego procesu może być wykonany co najwyżej jeden rozkaz

Bardziej szczegółowo

SYSTEMY OPERACYJNE: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX)

SYSTEMY OPERACYJNE: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX) (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX) W informatyce występują ściśle obok siebie dwa pojęcia: sprzęt (ang. hardware) i oprogramowanie

Bardziej szczegółowo

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia stacjonarne I stopnia Rok akademicki 2016/2017 Wykład nr 7 (11.01.2017) Rok akademicki 2016/2017, Wykład

Bardziej szczegółowo

Nakładki. Kod przebiegu 2: 80 kb Tablica symboli: 20 kb wspólne podprogramy: 30 kb Razem: 200 kb

Nakładki. Kod przebiegu 2: 80 kb Tablica symboli: 20 kb wspólne podprogramy: 30 kb Razem: 200 kb Pamięć wirtualna Nakładki Nakładki są potrzebne jeśli proces jest większy niż ilość dostępnej pamięci. Przykład - dwuprzebiegowy asembler mamy do dyspozycji 150 kb pamięci, a poszczególne elementy zadania

Bardziej szczegółowo

WYKŁAD. Zarządzanie pamięcią operacyjną

WYKŁAD. Zarządzanie pamięcią operacyjną WYKŁAD Zarządzanie pamięcią operacyjną Celem wykładu jest przedstawienie podejść do zarządzania jednym z kluczowych zasobów systemu komputerowego pamięcią operacyjną. Ponieważ zarządzanie pamięcią operacyjną

Bardziej szczegółowo

ARCHITEKTURA PROCESORA,

ARCHITEKTURA PROCESORA, ARCHITEKTURA PROCESORA, poza blokami funkcjonalnymi, to przede wszystkim: a. formaty rozkazów, b. lista rozkazów, c. rejestry dostępne programowo, d. sposoby adresowania pamięci, e. sposoby współpracy

Bardziej szczegółowo

Jądro systemu operacyjnego

Jądro systemu operacyjnego Jądro systemu operacyjnego Jądro (ang. kernel) jest to podstawowa część systemu operacyjnego, która jest odpowiedzialna za wszystkie jego zadania. Zapewnia ono usługi systemowe takie jak: komunikacja między

Bardziej szczegółowo

Od programu źródłowego do procesu

Od programu źródłowego do procesu Zarządzanie pamięcią Przed wykonaniem program musi być pobrany z dysku i załadowany do pamięci. Tam działa jako proces. Podczas wykonywania, proces pobiera rozkazy i dane z pamięci. Większość systemów

Bardziej szczegółowo

Celem wykładu jest przedstawienie podejść do zarządzania jednym z kluczowych zasobów systemu komputerowego pamięcią operacyjną. Ponieważ zarządzanie

Celem wykładu jest przedstawienie podejść do zarządzania jednym z kluczowych zasobów systemu komputerowego pamięcią operacyjną. Ponieważ zarządzanie Celem wykładu jest przedstawienie podejść do zarządzania jednym z kluczowych zasobów systemu komputerowego pamięcią operacyjną. Ponieważ zarządzanie pamięcią operacyjną uwarunkowane jest rozwiązaniami

Bardziej szczegółowo

Materiały pomocnicze 1

Materiały pomocnicze 1 JĄDRO SYSEMU Jądro systemu stanowi główny interfejs między sprzętem (surową maszyną), a systemem operacyjnym. JĄDRO SYSEMU inne elementy systemu jądro systemu surowa maszyna 2 PODSAWOWE UDOGODIEIA SPRZĘOWE

Bardziej szczegółowo

Zarz arz dzanie pam dzanie ięci ę ą

Zarz arz dzanie pam dzanie ięci ę ą Zarządzanie pamięcią Zarządzanie pamięcią Przed wykonaniem program musi być pobrany z dysku i załadowany do pamięci. Tam działa jako proces. Podczas wykonywania, proces pobiera rozkazy i dane z pamięci.

Bardziej szczegółowo

1. Rola pamięci operacyjnej

1. Rola pamięci operacyjnej 1. Rola pamięci operacyjnej Pamięć operacyjna jest jedną z podstawowych części systemu komputerowego. Do niej trafiają niemal wszystkie dane programów (a także i same programy - zostanie to wyjaśnione

Bardziej szczegółowo

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami Rok akademicki 2015/2016, Wykład nr 6 2/21 Plan wykładu nr 6 Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia niestacjonarne I stopnia Rok akademicki 2015/2016

Bardziej szczegółowo

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1

Wydajność systemów a organizacja pamięci. Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Wydajność systemów a organizacja pamięci Krzysztof Banaś, Obliczenia wysokiej wydajności. 1 Motywacja - memory wall Krzysztof Banaś, Obliczenia wysokiej wydajności. 2 Organizacja pamięci Organizacja pamięci:

Bardziej szczegółowo

Proces y i y w i ąt ą ki

Proces y i y w i ąt ą ki Procesy i wątki Proces Proces jest wykonywanym programem. Wykonanie procesu musi przebiegać w sposób sekwencyjny ( w dowolnej chwili na zamówienie naszego procesu może być wykonany co najwyżej jeden rozkaz

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Wykład 7 Jan Kazimirski 1 Pamięć podręczna 2 Pamięć komputera - charakterystyka Położenie Procesor rejestry, pamięć podręczna Pamięć wewnętrzna pamięć podręczna, główna Pamięć zewnętrzna

Bardziej szczegółowo

Systemy operacyjne. Paweł Pełczyński

Systemy operacyjne. Paweł Pełczyński Systemy operacyjne Paweł Pełczyński ppelczynski@swspiz.pl 1 Program przedmiotu Wprowadzenie Struktura systemów operacyjnych Procesy i Wątki Komunikacja międzyprocesowa Szeregowanie procesów Zarządzanie

Bardziej szczegółowo

Zarz arz dzanie pam dzanie ięci ę ą

Zarz arz dzanie pam dzanie ięci ę ą Zarządzanie pamięcią Zarządzanie pamięcią Przed wykonaniem program musi być pobrany z dysku i załadowany do pamięci. Tam działa jako proces. Podczas wykonywania, proces pobiera rozkazy i dane z pamięci.

Bardziej szczegółowo

16MB - 2GB 2MB - 128MB

16MB - 2GB 2MB - 128MB FAT Wprowadzenie Historia FAT jest jednym z najstarszych spośród obecnie jeszcze używanych systemów plików. Pierwsza wersja (FAT12) powstała w 1980 roku. Wraz z wzrostem rozmiaru dysków i nowymi wymaganiami

Bardziej szczegółowo

System plików. Warstwowy model systemu plików

System plików. Warstwowy model systemu plików System plików System plików struktura danych organizująca i porządkująca zasoby pamięci masowych w SO. Struktura ta ma charakter hierarchiczny: urządzenia fizyczne strefy (partycje) woluminy (w UNIXie:

Bardziej szczegółowo

Celem wykładu jest wprowadzenie fundamentalnych pojęć, integralnie związanych z systemem operacyjnym, na których opiera się przetwarzanie we

Celem wykładu jest wprowadzenie fundamentalnych pojęć, integralnie związanych z systemem operacyjnym, na których opiera się przetwarzanie we Celem wykładu jest wprowadzenie fundamentalnych pojęć, integralnie związanych z systemem operacyjnym, na których opiera się przetwarzanie we współczesnych systemach komputerowych pojęcia procesu i pojęcia

Bardziej szczegółowo

Procesy, zasoby i wątki

Procesy, zasoby i wątki Procesy, zasoby i wątki Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Koncepcja procesu i zasobu Obsługa procesów i zasobów Cykl zmian stanów procesu i kolejkowanie Klasyfikacja zasobów

Bardziej szczegółowo

Procesy, zasoby i wątki

Procesy, zasoby i wątki Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Koncepcja procesu i zasobu Obsługa procesów i zasobów Cykl zmian stanów procesu i kolejkowanie Klasyfikacja zasobów Wątki Procesy i wątki

Bardziej szczegółowo

Procesy, zasoby i wątki

Procesy, zasoby i wątki Dariusz Wawrzyniak Koncepcja procesu i zasobu Obsługa procesów i zasobów Cykl zmian stanów procesu i kolejkowanie Klasyfikacja zasobów Wątki Procesy i wątki we współczesnych systemach operacyjnych Plan

Bardziej szczegółowo

Analiza ilościowa w przetwarzaniu równoległym

Analiza ilościowa w przetwarzaniu równoległym Komputery i Systemy Równoległe Jędrzej Ułasiewicz 1 Analiza ilościowa w przetwarzaniu równoległym 10. Analiza ilościowa w przetwarzaniu równoległym...2 10.1 Kryteria efektywności przetwarzania równoległego...2

Bardziej szczegółowo

Podstawowe zagadnienia informatyki

Podstawowe zagadnienia informatyki Podstawowe zagadnienia informatyki Artur Opaliński (pokój E112) e-mail: (p. wykład administracyjny) URL: (p. wykład administracyjny) Obsługa pamięci Treść wykładu Adresowanie pamięci Architektury pamięci

Bardziej szczegółowo

Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania

Architektura Systemów Komputerowych. Jednostka ALU Przestrzeń adresowa Tryby adresowania Architektura Systemów Komputerowych Jednostka ALU Przestrzeń adresowa Tryby adresowania 1 Jednostka arytmetyczno- logiczna ALU ALU ang: Arythmetic Logic Unit Argument A Argument B A B Ci Bit przeniesienia

Bardziej szczegółowo

Projektowanie oprogramowania systemów PROCESY I ZARZĄDZANIE PROCESAMI

Projektowanie oprogramowania systemów PROCESY I ZARZĄDZANIE PROCESAMI Projektowanie oprogramowania systemów PROCESY I ZARZĄDZANIE PROCESAMI plan Cechy, właściwości procesów Multitasking Scheduling Fork czym jest proces? Działającą instancją programu Program jest kolekcją

Bardziej szczegółowo