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

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

Download "Zarządzanie pamięcią operacyjną i pamięć wirtualna"

Transkrypt

1 Zarządzanie pamięcią operacyjną i pamięć wirtualna Pamięć jako zasób systemu komputerowego. Wsparcie dla zarządzania pamięcią na poziomie architektury komputera. Podział i przydział pamięci. Obraz procesu w pamięci. Stronicowania. Segmentacja. Stronicowanie na żądanie. Problemy realizacji stronicowania na żądanie. Algorytmy wymiany. Systemy operacyjne Wykład /8

2 Pamięć jako zasób systemu komputerowego Pamięć jest zasobem służący do przechowywania danych i programów. Z punktu widzenia systemu pamięć jest zasobem o strukturze hierarchicznej (począwszy od rejestrów procesora, przez pamięć podręczną, pamięć główną, skończywszy na pamięci masowej), w której na wyższym poziomie przechowywane są dane, stanowiące fragment zawartości poziomu niższego. Z punktu widzenia procesu (również procesora) pamięć jest zbiorem bajtów identyfikowanych przez adresy, czyli tablicą bajtów, w której adresy są indeksami. Systemy operacyjne Wykład /8

3 Hierarchia pamięci taśmy rejestry pamięć podręczna pamięć główna dysk magnetyczny dyski optyczne pamięć I rzędu (primary) pamięć II rzędu (secondary) Systemy operacyjne Wykład /8

4 Przestrzeń adresowa Przestrzeń adresowa jest zbiór wszystkich dopuszczalnych adresów w pamięci. W zależności od charakteru adresu odróżnia się: przestrzeń fizyczną zbiór adresów przekazywanych do układów pamięci głównej (fizycznej). przestrzeń logiczną zbiór adresów generowanych przez procesor w kontekście aktualnie wykonywanego procesu. Systemy operacyjne Wykład /8

5 Adres logiczny i fizyczny adres logiczny jednostka arytmetycznologiczna (ALU) jednostka zarządzania pamięcią (MMU) jednostka adresowa rejestry szyna adresowa adres fizyczny PROCESOR jednostka sterująca Systemy operacyjne Wykład 5/8

6 Odwzorowanie adresu logicznego na fizyczny - przykład rejestr przemieszczenia adres logiczny adres fizyczny procesor + pamięć 5 9 jednostka zarządzania pamięcią (MMU) Systemy operacyjne Wykład 6/8

7 błąd programowy Weryfikacja poprawności adresu - przykład rejestr graniczny rejestr przemieszczenia 56 > adres logiczny + MMU adres fizyczny pamięć procesor Systemy operacyjne Wykład 7/8

8 Podział pamięci Podział stały: partycje o równym rozmiarze, partycje o różnych rozmiarach. Podział dynamiczny. Podział na bloki bliźniacze (zwany też metodą sąsiedzkich stert). xfff Ogólny obraz pamięci fizycznej przestrzeń dla procesów użytkowników jądro systemu operacyjnego jądro systemu operacyjnego przestrzeń dla procesów użytkowników tab. wektorów przerwań przestrzeń dla procesów użytkowników jądro systemu Systemy operacyjne Wykład 8/8

9 Fragmentacja Fragmentacja wewnętrzna pozostawienie niewykorzystywanego fragmentu przestrzeni adresowej wewnątrz przydzielonego obszaru (formalnie fragment jest zajęty, w rzeczywistości nie jest wykorzystany). Fragmentacja zewnętrzna podział obszaru pamięci na rozłączne fragmenty, które nie stanowią ciągłości w przestrzeni adresowej (może to dotyczyć zarówno obszaru wolnego, jak i zajętego). Systemy operacyjne Wykład 9/8

10 zapotrzebowanie przydział Fragmentacja zewnętrzna wewnętrzna obszar nie wykorzystany Systemy operacyjne Wykład /8

11 Podział stały Podział pamięci na stałe obszary (strefy, partycje), których rozmiar i położenie ustalane są na etapie konfiguracji systemu. Przydział całego obszaru o rozmiarze większym lub równym zapotrzebowaniu, określonym w żądaniu. Zalety: łatwość implementacji i zarządzania. Wady: słaba efektywność wykorzystania pamięci (fragmentacja wewnętrzna, ograniczona odgórnie liczba jednocześnie przydzielonych partycji). Systemy operacyjne Wykład /8

12 sekcja nakładko wania Podział stały partycje o równym rozmiarze problem zbyt małych partycji nakładkowanie partycje o różnych rozmiarach jądro jądro część stała jądro jądro nakładki? obraz przed przydziałem obraz po przydziale Systemy operacyjne Wykład /8

13 Podział dynamiczny Podział pamięci tworzony jest w czasie pracy systemu stosownie do żądań procesów. Proces ładowany jest w obszar o rozmiarze dosyć dokładnie odpowiadającym jego wymaganiom. Zalety: lepsze wykorzystanie pamięci (brak fragmentacji wewnętrznej). Wady: skomplikowane zarządzanie, wynikające z konieczności utrzymywania odpowiednich struktur danych w celu identyfikacji obszarów zajętych oraz wolnych. Obraz pamięci przy podziale dynamicznym jądro obraz przed przydziałem obraz po przydziale Systemy operacyjne Wykład /8

14 Problem wyboru bloku w przydziale dynamicznym Pierwsze dopasowanie (first fit) przydziela się pierwszy wolny obszar (tzw. dziurę) o wystarczającej wielkości. Poszukiwanie kończy się po znalezieniu takiego obszaru. Najlepsze dopasowanie (best fit) przydziela się najmniejszy dostatecznie duży wolny obszar pamięci. Konieczne jest przeszukanie wszystkich dziur. Następne dopasowanie podobnie jak pierwsze dopasowanie, ale poszukiwania rozpoczyna się do miejsca ostatniego przydziału. Najgorsze dopasowanie (worst fit) przydziela się największy wolny obszar pamięci. Konieczne jest przeszukanie wszystkich dziur. Systemy operacyjne Wykład /8

15 kierunek przeszukiwania Przydział dynamiczny wybór pierwsze dopasowanie bloku najlepsze dopasowanie najgorsze dopasowanie Systemy operacyjne Wykład 5/8

16 System bloków bliźniaczych Pamięć dostępna dla procesów użytkownika ma rozmiar U. Przydzielany blok ma rozmiar K, gdzie L K U. Początkowo dostępny jest jeden blok o rozmiarze U. Realizacja przydziału obszaru o rozmiarze s polega na znalezieniu lub utworzeniu (przez połowienie) bloku o rozmiarze i takim, że i < s i. Systemy operacyjne Wykład 6/8

17 System bloków bliźniaczych przykład realizacji 56 KB 5 KB 5 KB 5 KB 56 KB MB 56 KB 56 KB 56 KB 56 KB 8 KB 8 KB kolejne żądania przydziału 8 KB 8 KB 8 KB KB KB 6 KB 5 KB 8 KB Systemy operacyjne Wykład 7/8

18 Obraz procesu w pamięci Tworzenie obrazu: Kompilacja, Konsolidacja, Ładowanie kodu. Relokacja. Ochrona. Współdzielenie. Systemy operacyjne Wykład 8/8

19 Tworzenie obrazu procesu program program program źródłowy źródłowy źródłowy translator moduł moduł moduł wynikowy wynikowy wynikowy moduł moduł biblioteczny moduł biblioteczny biblioteczny mechanizm łączenia dynamicznego konsolidacja statyczna konsolidator program ładowalny obraz w pamięci operacyjnej konsolidacja dynamiczna w czasie ładowania mechanizm ładowania program wykonywany Systemy operacyjne Wykład 9/8

20 Wiązanie i przekształcanie adresów W modelu von Neumana adresy dotyczą rozkazów (instrukcji) oraz zmiennych (danych). Jeśli w programie źródłowym występują adresy, to mają one najczęściej postać symboliczną (etykiety w asemblerze) lub abstrakcyjną (wskaźniki w C lub Pascalu). Adresy związane z lokalizacją pojawiają się na etapie translacji i są odpowiednio przekształcane aż do uzyskania adresów fizycznych. Systemy operacyjne Wykład /8

21 Translacja W wyniku translacji (kompilacja, asemblacja) powstaje przemieszczalny moduł wynikowy (relocatable object module), w którym wszystkie adresy liczone są względem adresu początku modułu. Gdyby program składał się z jednego modułu, a jego docelowa lokalizacja w pamięci była z góry znana, na etapie translacji mogłyby zostać wygenerowane adresy fizyczne. Systemy operacyjne Wykład /8

22 Konsolidacja Konsolidacja statyczna odniesienia do innych modułów zamieniane są na adresy w czasie tworzenia programu wykonywalnego. Konsolidacja dynamiczna: w czasie ładowania w czasie ładowania programu następuje załadowanie modułów bibliotecznych i związanie odpowiednich adresów, w czasie wykonania załadowanie modułów bibliotecznych i związanie adresów następuje dopiero przy odwołaniu się do nich w czasie wykonywania programu. Systemy operacyjne Wykład /8

23 Konsolidacja statyczna W czasie łączenia modułów przemieszczalnych w jeden program ładowalny zwany też modułem absolutnym (ang. absolute module), do adresów przemieszczalnych dodawane są wartości, wynikające z przesunięcia danego modułu przemieszczalnego względem początku modułu absolutnego. Gdyby docelowa lokalizacja programu w pamięci była z góry znana, na etapie tym mogłyby zostać wygenerowane adresy fizyczne. Systemy operacyjne Wykład /8

24 Ładowanie kodu blok kontrolny kod kod dane plik z programem ładowalnym dane stos pamięć operacyjna Ładowanie absolutne program ładowany jest w ustalone miejsce w pamięci, znane w momencie tworzenia programu ładowalnego. Ładowanie relokowalne fizyczna lokalizacja procesu ustalana przy ładowaniu do pamięci. Ładowanie dynamiczne w czasie wykonania fizyczna lokalizacja procesu w pamięci może ulec zmianie w czasie wykonywania. Systemy operacyjne Wykład /8

25 Współdzielenie pamięci Efektywność wykorzystania pamięci: współdzielenie kodu programu, współdzielenie kodu funkcji bibliotecznych. Kooperacja procesów: synchronizacja działań procesów, komunikacja pomiędzy procesami (współdzielenie danych). Systemy operacyjne Wykład 5/8

26 Ochrona pamięci Weryfikacja poprawności adresu pod kątem zakresu dopuszczalności. Weryfikacja praw dostępu: prawa zapisu, prawa odczytu, prawa wykonania. Systemy operacyjne Wykład 6/8

27 Stronicowanie Arbitralny podział pamięci fizycznej na ramki, w które ładowane są odpowiednie strony obrazu procesu. Podział logicznej przestrzeni adresowej na strony o takim samym rozmiarze, jak ramki w pamięci fizycznej. Zalety: brak problemu fragmentacji zewnętrznej, wspomaganie dla współdzielenia i ochrony pamięci. Wady: narzut czasowy przy transformacji adresu, narzut pamięciowy (na potrzeby tablicy stron), fragmentacja wewnętrzna (niewielka). Systemy operacyjne Wykład 7/8

28 Stronicowanie transformacja adresu Adres logiczny zawiera numer strony i przesunięcia na stronie (offset), np.: nr strony ( bity) przesunięcie ( bitów) Transformacja adresu polega na zastąpieniu numeru strony numerem ramki. Odwzorowanie numeru strony na numer ramki wykonywane jest za pomocą tablicy stron (page table). Systemy operacyjne Wykład 8/8

29 Schemat transformacji adresu w systemie pamięci stronicowanej adres logiczny procesor p o p f o o adres fizyczny p numer strony f numer ramki o przesunięcie f tablica stron pamięć Systemy operacyjne Wykład 9/8

30 Odwzorowanie stron w ramki - przykład i j k a b c l d e 5 5 f 6 6 g 7 7 h 8 e 8 i 9 f 9 j g k tablica h l a strony g: adres logiczny = 6 ( ) adres fizyczny = ( ) stron b c 5 d ramki Systemy operacyjne Wykład /8

31 Bufory translacji adresów stron (TLB) adres logiczny procesor p o bufory TLB f o o adres fizyczny p numer strony f numer ramki o przesunięcie p f pamięć tablica stron Systemy operacyjne Wykład /8

32 Stronicowanie wielopoziomowe zewnętrzna tablica stron nr strony zewnętrznej nr strony wewnętrznej przesunięcie na stronie p wewnętrzna tablica stron p ramka pamięci o p p o Systemy operacyjne Wykład /8

33 Segmentacja Przestrzeń adresów logicznych jest postrzegana jako zbiór segmentów. Podstawowe atrybuty segmentu: identyfikator, adres bazowy, rozmiar, informacja o rodzaju zawartości i formach dostępu. Adres logiczny składa się z numeru segmentu i przesunięcia wewnątrz segmentu. Odwzorowanie adresów logicznych w fizyczne zapewnia tablica segmentów. Systemy operacyjne Wykład /8

34 błąd programowy Schemat adresowania z segmentacją tablica segmentów s granica baza pamięć N > T + adres fizyczny s o adres logiczny Systemy operacyjne Wykład /8

35 błąd programowy Schemat adresowania z segmentacją i stronicowaniem tablica segmentów s granica baza tablicy stron N > T p o + f adres fizyczny f o pamięć s a adres logiczny Systemy operacyjne Wykład 5/8

36 Rozdzielenie fizycznej i logicznej a b c d e 5 f 6 g 7 h przestrzeń logiczna przestrzeni adresowej. Współdzielenie pamięci tablica odwzorowania e f g h i 5 j 6 k 7 l i j k l e 9 f g h a b c 5 d Systemy operacyjne Wykład 6/8 tablica odwzorowania przestrzeń fizyczna

37 Pamięć wirtualna Stronicowanie na żądanie: obsługa błędu strony, wymiana. Problemy realizacji stronicowania na żądanie: problem wyboru ofiary, problem wznawiania rozkazów. Algorytmy wymiany: algorytmy wymiany na żądanie, algorytmy wymiany ze sprowadzaniem na żądanie, algorytmy wstępnego stronicowania. Systemy operacyjne Wykład 7/8

38 Mechanizm stronicowania na żądanie Działanie mechanizmu: strony są sprowadzane do pamięci tylko wówczas, gdy jest to konieczne, czyli wówczas gdy następuje odniesienie do komórki o adresie, znajdującym się na tej stronie. Wymaganie sprzętowe: tablica stron z bitem poprawności (valid-invalid bit) dla każdej pozycji (dodatkowo z bitem modyfikacji i odniesienia), mechanizm reakcji na odniesienie do strony niepoprawnej, urządzenie wymiany (swap device) pamięć pomocnicza. Systemy operacyjne Wykład 8/8

39 Obsługa błędu strony system operacyjny błąd prog. tablica stron p i błąd strony urządzenie wymiany procesor p o adres logiczny pamięć Systemy operacyjne Wykład 9/8

40 Powtórne wykonania rozkazu tablica stron p numer strony f numer ramki o przesunięcie p f v adres fizyczny f o procesor p o adres logiczny pamięć Systemy operacyjne Wykład /8

41 Zastępowanie stron Problem zastępowania (wymiany, page replacement) stron pojawia się, gdy w pamięci fizycznej brakuje wolnych ramek i konieczne jest zwolnienie jakieś ramki poprzez usunięcie z niej strony. Jeśli strona była modyfikowana w pamięci, konieczne jest zapisanie jej w obszarze wymiany konieczność wprowadzenia bitu modyfikacji (modify bit), zwanego też bitem zabrudzenia (dirty bit). pamięć urządzenie wymiany Systemy operacyjne Wykład /8

42 Koszt wymiany stron Całkowity koszt sprowadzenia stron w ogólnym przypadku dany jest wzorem: t h gdzie: t dyskretna chwila czasu, w której następuje odniesienie do pamięci (do strony), k t liczba stron sprowadzanych w chwili t, h(k) koszt jednorazowego sprowadzenia grupy k stron, przy czym h() =, h() =. W przypadku zastosowania dysku jako urządzenia wymiany, na czas sprowadzania wypływ mają: T w czas oczekiwania (suma czasu oczekiwania w kolejce do urządzenia oraz czasu przygotowania urządzenia do transmisji), T tr czas dostępu do danych. Systemy operacyjne Wykład /8 k t

43 Koszt wymiany stron Postać funkcji h(k) dla dysku jest zatem następująca: h(k) = T w + k T tr Własność funkcji h(k) przy założeniu, że T w > i k > : h(k) < k (T w + T tr ) h(k) k h() Koszt wymiany można aproksymować za pomocą parametrów FN (liczba wygenerowanych błędów strony) i TN (liczba transmisji stron). Całkowity czas oczekiwania na urządzenie (istotna składowa czasu wymiany) również jest zależny od liczby błędów strony. Wniosek: należy minimalizować liczbę błędów strony i tym samym redukować czas realizacji wymiany, czyli koszt. Systemy operacyjne Wykład /8

44 Problemy zastępowania stron Problem wyboru ofiary niewłaściwy wybór ramki-ofiary powoduje wzrost kosztu wymiany. W skrajnym przypadku może dojść do zjawiska migotania, w przypadku którego często dochodzi do wystąpienia odniesienia do właśnie usuniętej strony. Problem wznawiania rozkazów w przypadku wielokrotnego odniesienia do pamięci w jednym cyklu rozkazowym należy zapewnić, że wszystkie adresowane strony są jednocześnie dostępne w ramkach w pamięci fizycznej. Systemy operacyjne Wykład /8

45 Problem wyboru ofiary Zakładając, że przyszły ciąg odniesień do pamięci nie jest znany, na podstawie historii odniesień należy wybrać taką ramkę, do której prawdopodobieństwo odniesienia w przyszłości jest małe. Podstawowa własność programów, na podstawie której można szacować takie prawdopodobieństwo, nazywana jest lokalnością. Systemy operacyjne Wykład 5/8

46 Własność lokalności Lokalność czasowa tendencja procesów do generowania w stosunkowo długich przedziałach czasu odniesień do niewielkiego podzbioru stron wirtualnych zwanego zbiorem stron aktywnych. Formalnie jest to tendencja procesu do generowania z dużym prawdopodobieństwem w przedziale czasu (t, t + τ) odniesień do stron adresowanych w przedziale czasu (t τ, t). Lokalność przestrzenna tendencja procesu do generowania z dużym prawdopodobieństwem kolejnych odniesień do stron o zbliżonych numerach (stron sąsiednich) lub stron o numerach skojarzonych w trakcie przetwarzania. Systemy operacyjne Wykład 6/8

47 Problem efektywności systemu z pamięcią wirtualną Efektywność działania systemu pamięci wirtualnej zależy od precyzji identyfikacji zbioru stron aktywnych i możliwości utrzymania ich w pamięci fizycznej. Wobec braku a priori pełnego ciągu odniesień do stron wirtualnych identyfikacja takiego zbioru może wynikać z różnych przesłanek, czego skutkiem jest duża różnorodność algorytmów wymiany. Systemy operacyjne Wykład 7/8

48 Klasyfikacja algorytmów wymiany ze względu na okoliczności sprowadzania i usuwania stron Algorytmy wymiany na żądanie: sprowadzenie odbywa się na żądanie strona sprowadzana jest dopiero wówczas, gdy następuje odniesienie do niej i nie ma jej w pamięci, usuwanie odbywa się na żądanie strona usuwana jest wówczas, gdy konieczne jest sprowadzenie innej strony w wyniku odniesienia i nie ma wolnej ramki. Algorytmy wymiany ze sprowadzaniem na żądanie: tylko sprowadzanie dobywa się na żądanie. Algorytmy wstępnego sprowadzania: sprowadzana jest strona żądana, a wraz z nią inne strony. Systemy operacyjne Wykład 8/8

49 Klasyfikacja algorytmów wymiany ze względu na sposób zastępowania stron Zastępowanie lokalne (local replacement) algorytm wymiany zastępuje tylko strony w ramkach przydzielonych procesowi, który spowodował błąd strony. Zastępowanie globalne (global replacement) algorytm wymiany zastępuje strony znajdujące się w dostępnej puli ramek w całym systemie (w szczególności zatem usuwa strony innych procesów). Systemy operacyjne Wykład 9/8

50 Klasyfikacja algorytmów wymiany ze względu na przydział ramek dla procesów Przydział statyczny liczba ramek przydzielonych procesowi jest ustalona i nie ulega zmianie w trakcie przetwarzania. Przydział dynamiczny liczba ramek przydzielonych procesowi może się zmienić w trakcie przetwarzania. Systemy operacyjne Wykład 5/8

51 Dobór liczby ramek Minimalna liczba ramek zdefiniowana przez architekturę komputera (zależna od maksymalnej liczby komórek adresowanych przez jeden rozkaz). Liczba ramek przydzielona dla procesu: podział równomierny (equal allocation), podział proporcjonalny (proportional allocation), przydział zależny od priorytetu procesu. Systemy operacyjne Wykład 5/8

52 Algorytmy wymiany na żądanie MIN zastępowana jest strona, która najdłużej nie będzie używana (optymalny w tej klasie). FIFO (First In First Out) zastępowana jest strona najstarsza (najwcześniej sprowadzona). LIFO (Last In First Out) zastępowana jest strona najmłodsza (najpóźniej sprowadzona). LRU (Least Recently Used) zastępowana jest najdawniej użyta strona (najdłużej nie używana). LFU (Least Frequently Used) zastępowana jest najrzadziej używana strona. MFU (Most Frequently Used) zastępowana jest najczęściej używana strona. Systemy operacyjne Wykład 5/8

53 Przykład działania algorytmów wymiany na żądanie W systemie pamięci wirtualnej są ramki. Wszystkie ramki są początkowo puste. W systemie pojawiają się następujące odniesień (odwołań) do stron:,,,,,,,, 5,,,,,. 5? Systemy operacyjne Wykład 5/8

54 Przykład działania algorytmów wymiany na żądanie cd. Dalszy ciąg odniesień:,,,, MIN 5 FIFO 5 LFU LRU 5 MFU LIFO 5 Systemy operacyjne Wykład 5/8

55 Systemy operacyjne Wykład 55/8 Przykład anomalii Belady ego Następujący ciąg odniesień obsługiwany jest zgodnie z algorytmem FIFO w systemie z, a następnie ramkami:,,,,,, 5,,,,,

56 Zagadnienia implementacyjne Implementacja algorytmu FIFO. Implementacja algorytmu LRU. Algorytmy przybliżające metodę LRU: algorytm dodatkowych bitów odwołań, algorytm drugiej szansy (FINUFO), ulepszony algorytm drugiej szansy. Systemy operacyjne Wykład 56/8

57 Implementacja algorytmu FIFO Utrzymywanie listy numerów stron w kolejności ich sprowadzania do pamięci. Umieszczanie numeru sprowadzanej strony na końcu listy. Usuwanie z pamięci (i z listy) strony, której numer znajduje się na początku listy. Systemy operacyjne Wykład 57/8

58 Implementacja algorytmu LRU Licznik przy każdym odniesieniu do pamięci zwiększana jest wartość pewnego licznika i wpisywana do odpowiedniej pozycji opisującej stronę w tablicy stron (lub w innej specjalnej strukturze systemu operacyjnego). Z pamięci usuwana jest wówczas strona z najmniejszą wartością tego licznika, co wymaga przejrzenia całej tablicy stron. Stos numery stron, do których następuje odniesienie, odkładane są na szczycie stosu. Przed odłożeniem na szczycie numer strony musi być wydobyty ze środka stosu, czyli z miejsca, gdzie był ostatnio odłożony. W tej implementacji z pamięci usuwana jest strona, która jest na dnie stosu. Systemy operacyjne Wykład 58/8

59 Algorytmy przybliżające metodę LRU Niezbędne wspomaganie sprzętowe: bit odniesienia (reference bit) ustawiany, gdy następuje odniesienie do strony, bit modyfikacji (modify bit) ustawiany, gdy następuje zapis na stronie. Algorytmy korzystające ze wspomagania sprzętowego: algorytm dodatkowych bitów odniesienia wykorzystuje bit odniesienia, algorytm drugiej szansy wykorzystuje bit odniesienia, ulepszony algorytm drugiej szansy wykorzystuje bit odniesienia i bit modyfikacji. Systemy operacyjne Wykład 59/8

60 Systemy operacyjne Wykład 6/8 Algorytm dodatkowych bitów odniesienia 5 ostatnia strony do usunięcia tablica dodatkowych bitów odniesienia tablica stron bit odniesienia

61 bit odniesienia Algorytm drugiej szansy tablica stron strona do usunięcia 6 lista stron Systemy operacyjne Wykład 6/8

62 bit odniesienia bit modyfikacji Ulepszony algorytm drugiej szansy tablica stron strona do usunięcia 6 lista stron Systemy operacyjne Wykład 6/8

63 Algorytmy ze sprowadzaniem na żądanie VMIN usuwane są strony, których koszt utrzymania w pamięci jest większy od kosztu ponownego sprowadzenia. WS usuwane są strony, do których nie było odniesień przez określony czas. WSClock przybliżona wersja algorytmu WS, oparta na bicie odniesienia. PFF, VSWS przydział i zwalnianie ramek procesów realizowane jest na podstawie częstości zgłaszania błędów strony. Systemy operacyjne Wykład 6/8

64 Zbiór roboczy Zbiór roboczy procesu (working-set) zbiór stron, które zostały zaadresowane w ciągu ostatnich odniesień do pamięci (w tzw. oknie zbioru roboczego). Okno zbioru roboczego (working-set window) zakres odniesień do pamięci, które adresują strony należące do zbioru roboczego. Zbiór roboczy w chwili t przy rozmiarze okna oznaczony będzie jako W(t, ). Algorytm zbioru roboczego usuwa z pamięci wszystkie strony, które nie należą do zbioru roboczego. Systemy operacyjne Wykład 6/8

65 Systemy operacyjne Wykład 65/8 Przykład wymiany stron w oparciu o zbiór roboczy Ciąg odniesień:,,, 5, 7,,,,, 6, 7,, Rozmiar okna:

66 Koncepcja identyfikacji zbioru roboczego Dla każdej ramki utrzymywany jest wirtualny (mierzony odniesieniami do pamięci) czas ostatniego odniesienia do niej. Po każdym odniesieniu do strony zwiększana jest wartość licznika odniesień i wpisywana do odpowiedniej tablicy na pozycji odpowiadającej ramce, w której znajduję się adresowana strona. Do zbioru roboczego należą te strony, dla których różnica pomiędzy bieżącą wartością licznika odniesień, a wartością wpisaną w tablicy jest mniejsza lub równa rozmiarowi okna zbioru roboczego. Systemy operacyjne Wykład 66/8

67 Przybliżona realizacja koncepcji zbioru roboczego Wspomaganie sprzętowe bit odniesienia. Okresowe (wyznaczone przez czasomierz lub przez wystąpienie błędu strony) zwiększanie licznika reprezentującego upływ czasu wirtualnego oraz sprawdzanie bitu odniesienia dla każdej z ramek. Jeśli bit odniesienia jest ustawiony, to skasowanie bitu odniesienia i wpisanie bieżącej wartości licznika do odpowiedniej tablicy na pozycji odpowiadającej ramce. Jeśli bit odniesienia jest skasowany, to sprawdzenie różnicy pomiędzy bieżącą wartością licznika a wartością wpisaną na odpowiedniej pozycji w tablicy i usunięcie strony, gdy różnica jest większa niż rozmiar okna. Systemy operacyjne Wykład 67/8

68 Algorytm WSClock Dla każdej ramki (strony w ramce) utrzymywany jest wirtualny czas (przybliżony) ostatniego odniesienia. Wszystkie ramki pamięci (niezależnie od przynależności do procesu) powiązane są w cykl. W wyniku wystąpienia błędu strony sprawdzany jest bit odniesienia do strony wskazywanej jako kolejna do usunięcia. Jeśli bit odniesienia jest ustawiony, zostaje on skasowany, po czym następuje wskazanie następnej ramki w cyklu i sprawdzenie bitu odniesienia. Jeśli bit odniesienia jest skasowany, sprawdzana jest różnica pomiędzy wirtualnym czasem bieżącym, a czasem ostatniego odniesienia do wskazywanej strony: jeśli różnica jest większa od rozmiaru okna zbioru roboczego, następuje wymiana strony w ramce, w przeciwnym razie strona pozostaje i następuje wskazanie i sprawdzenie ramki następnej. W przypadku wykonania pełnego obiegu przez wskazówkę i stwierdzenia braku stron do wymiany następuje zawieszenie jakiegoś procesu. Systemy operacyjne Wykład 68/8

69 bit odniesienia czas odniesienia Przykład działania algorytmu WSClock tablica stron czas bieżący: 5 rozmiar okna: strona do usunięcia 5 6 lista stron Systemy operacyjne Wykład 69/8

70 Algorytm zegarowy dwuwskazówkowy Wszystkie strony pamięci (niezależnie procesu) powiązane są w listę cykliczną. Lista przeglądana jest okresowo przez wskazówki: wiodąca (przednia) zeruje bit odniesienia, zamykająca (tylna) wskazuje stronę do usunięcia. Jeśli bit odniesienia przed nadejściem tylnej wskazówki zostanie ponownie ustawiony, strona pozostaje w pamięci, w przeciwnym przypadku jest usuwana. Algorytm sterowany jest następującymi parametrami: tempo przeglądania, rozstaw wskazówek. Systemy operacyjne Wykład 7/8

71 bit odniesienia Algorytm zegarowy dwuwskazówkowy. Przykład działania tablica stron strona do usunięcia 6 lista stron Systemy operacyjne Wykład 7/8

72 Algorytm PFF Jeśli częstotliwość błędów strony generowanych przez proces przekroczy ustalony poziom f H, to dla stron tego procesu sprowadzanych do pamięci przydzielana są nowe ramki. Jeśli częstotliwość błędów strony spadnie poniżej ustalonego poziomu f L, to: zwalniana jest jedna ramka procesu lub, zwalniane są wszystkie ramki ze stronami, do których nie było odniesienia od chwili wystąpienia ostatniego błędu strony w danym procesie. W szczególności f H = f L. Systemy operacyjne Wykład 7/8

73 Implementacja algorytmu PFF kontrola częstości błędów strony Przy każdym błędzie strony generowanym przez proces zwiększany jest licznik błędów strony danego procesu oraz zerowane są bity odniesienia do jego stron. W określonych interwałach czasu, wyznaczanych przez czasomierz, sprawdzane są (a następnie zerowane) liczniki poszczególnych procesów. Jeśli wartość licznika jest większa od górnej granicy, to procesowi przydzielana jest dodatkowa ramka. Jeśli wartość licznika jest mniejsza od ustalonej dolnej granicy, to zwalniana jest: jedna ramka lub, wszystkie ramki z wykasowanym bitem odniesienia. Systemy operacyjne Wykład 7/8

74 Implementacja algorytmu PFF ontrola okresu pomiędzy błędami strony Przy każdym błędzie strony sprawdzany jest czas jaki upłynął od poprzedniego błędu strony. Jeśli czas jest mniejszy od ustalonej wielkości T min, to na potrzeby sprowadzanej strony przydzielana jest dodatkowa ramka. Jeśli czas jest większy od ustalonej wielkości T max, to: zwalniana jest jedna ramka lub, zwalniane są wszystkie ramki z wykasowanym bitem odniesienia. Bit odniesienia dla stron pozostających w pamięci jest kasowany. Systemy operacyjne Wykład 7/8

75 Algorytm VSWS Przy każdym błędzie strony zwiększany jest licznik błędów strony danego procesu n. Co pewien okres czasu T t, wynikający ze stanu wymiany, następuje kontrola odniesień do stron. W ramach kontroli wykonywane są następujące czynności: strony, do których nie było odniesienia są usuwane (ich ramki są zwalniane), bity odniesienia stron pozostających na następny okres (do których było odniesienie) są kasowane, wartość licznika n jest zerowana. Systemy operacyjne Wykład 75/8

76 Wielkość interwału czasu dla algorytmu VSWS Algorytm sterowany jest następującymi parametrami: T max maksymalna wielkość interwału czasu, T min minimalna wielkość interwału czasu, n max maksymalna liczba błędów strony. Kontrola następuje w chwili t, po czasie T t od momentu poprzedniej kontroli, ustalanym następująco: n t n t n n max max T min T t T T t max T max Systemy operacyjne Wykład 76/8

77 Techniki poprawy efektywności wymiany Wymiana ramek zamiast wymiany stron przyspieszenie wymiany brudnej strony. Buforowanie usuniętych stron zamiast usuwania mniej kosztowna obsługa błędu strony. Czyszczenie stron ułatwienie ewentualnej wymiany. Utrzymywanie listy brudnych stron do usunięcia opóźnienie zapisu stron w obszar wymiany. Systemy operacyjne Wykład 77/8

78 Algorytmy wstępnego stronicowania DPMIN sprowadzane są wszystkie strony potrzebne w najbliższej przyszłości, które mieszczą się dostępnych ramkach. OBL sprowadzana jest strona żądana oraz strona następna (wg. numeracji w tablicy stron). SL na podstawie wcześniejszych odniesień i błędów strony budowana jest tablica skojarzeń stron sprowadzanych po sobie i informacja taka wykorzystywana jest prze następny sprowadzaniu. FDPA podejście uwzględniające sugestie programisty co do stron potrzebnych w przyszłości. Systemy operacyjne Wykład 78/8

79 Algorytm SL System utrzymuje dodatkową tablicę pred, gdzie dla każdej strony pamiętana jest strona, sprowadzona po niej do pamięci. Początkowo pred[i] = i +. u jest zmienną przechowującą nr strony ostatnio sprowadzanej do pamięci w wyniku odniesienia do niej. W chwili wystąpienia błędu strony następuje sprowadzenie żądanej strony p. Jeśli przy poprzedniej wymianie nie dokonano wstępnego sprowadzenia lub nie było odniesienia do strony wstępnie sprowadzonej do chwili obecnej pred[u] := p. Jeśli strona q = pred[p] nie znajduje się w pamięci, to następuje również jej sprowadzenia. u := p. Systemy operacyjne Wykład 79/8

80 Algorytm FDPA W programie występują dodatkowe instrukcje dla systemu operacyjnego: FREE(p) strona p nie będzie wykorzystywana w niedalekiej przyszłości, PRE(p) strona p będzie wkrótce wykorzystywana. Wykonanie takiej instrukcji skutkuje ustawieniem odpowiednich bitów dla strony: bitu usunięcia D, bitu wstępnego sprowadzenia P. W przypadku wystąpienia błędu strony sprowadzana jest strona żądana, ewentualnie wymieniana z jakąś stroną z ustawionym bitem D. Jeśli nie ma takiej strony stosowany jest inny algorytm usuwania np. LRU, z pominięciem stron, dla których ustawiony jest bit P. Jeśli w systemie są wolne ramki lub mogą zostać zwolnione przez usunięcie stron z ustawionym bitem D, to sprowadza się tyle stron z ustawionym bitem P, na ile pozwala potencjalna liczba wolnych ramek. W przypadku odniesienia do strony z ustawionym bitem P, bit ten jest kasowany. Systemy operacyjne Wykład 8/8

81 Segmentacja w systemie pamięci wirtualnej Segmentacja na żądanie wymiana segmentów pomiędzy pamięcią pierwszego i drugiego rzędu. Skomplikowana wymiana zróżnicowany rozmiar segmentów. Mniejsza przewidywalność czasu dostępu zróżnicowany czas przesyłania zawartości segmentu. Systemy operacyjne Wykład 8/8

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

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

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

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

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

Pamięć wirtualna. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

Pamięć wirtualna. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak jest organizacją zasobów pamięci, zrealizowaną w oparciu o tzw. przestrzeń wymiany w pamięci drugiego rzędu (na dysku). Pamięć operacyjna (fizyczna)

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

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

Podstawy. Pamięć wirtualna. (demand paging)

Podstawy. Pamięć wirtualna. (demand paging) Pamięć wirtualna Podstawy Podstawy Stronicowanie na żądanie Wymiana strony Przydział ramek Szamotanie (thrashing) Pamięć wirtualna (virtual memory) oddzielenie pamięci logicznej użytkownika od fizycznej.

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

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

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

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 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

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

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

Pamięć wirtualna jest organizacją zasobów pamięci, zrealizowaną w oparciu o tzw. przestrzeń wymiany w pamięci drugiego rzędu (na dysku).

Pamięć wirtualna jest organizacją zasobów pamięci, zrealizowaną w oparciu o tzw. przestrzeń wymiany w pamięci drugiego rzędu (na dysku). jest organizacją zasobów pamięci, zrealizowaną w oparciu o tzw. przestrzeń wymiany w pamięci drugiego rzędu (na dysku). Pamięć operacyjna (fizyczna) jest dla tych zasobów tylko pewnym oknem, przechowującym

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

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

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

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

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

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

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

Systemy Operacyjne Pamięć wirtualna cz. 1

Systemy Operacyjne Pamięć wirtualna cz. 1 Systemy Operacyjne Pamięć wirtualna cz. 1 Arkadiusz Chrobot Katedra Informatyki, Politechnika Świętokrzyska w Kielcach Kielce, 4 stycznia 2007 1 1 Zasady lokalności czasowej i przestrzennej 2 Pamięć wirtualna

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

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

Wykład 8. Pamięć wirtualna. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB

Wykład 8. Pamięć wirtualna. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB Wykład 8 Pamięć wirtualna Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB Wprowadzenie Podstawowa idea: System operacyjny pozwala na wykorzystanie pamięci o pojemności większej,

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

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Ą 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

Technologie informacyjne (2) Zdzisław Szyjewski

Technologie informacyjne (2) Zdzisław Szyjewski Technologie informacyjne (2) Zdzisław Szyjewski Technologie informacyjne Technologie pracy z komputerem Funkcje systemu operacyjnego Przykłady systemów operacyjnych Zarządzanie pamięcią Zarządzanie danymi

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

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

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

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

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

ang. file) Pojęcie pliku (ang( Typy plików Atrybuty pliku Fragmentacja wewnętrzna w systemie plików Struktura pliku

ang. file) Pojęcie pliku (ang( Typy plików Atrybuty pliku Fragmentacja wewnętrzna w systemie plików Struktura pliku System plików 1. Pojęcie pliku 2. Typy i struktury plików 3. etody dostępu do plików 4. Katalogi 5. Budowa systemu plików Pojęcie pliku (ang( ang. file)! Plik jest abstrakcyjnym obrazem informacji gromadzonej

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

Zarządzanie pamięcią operacyjną

Zarządzanie pamięcią operacyjną Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Celem wykładu jest przedstawienie podejść do zarządzania jednym z kluczowych zasobów systemu komputerowego pamięcią operacyjną. Ponieważ zarządzanie

Bardziej szczegółowo

Pamięć wirtualna. Pamięć wirtualna

Pamięć wirtualna. Pamięć wirtualna Pamięć wirtualna Pamięć wirtualna Podstawy. Stronicowanie na żądanie. Kopiowanie przy zapisie. Zastępowanie stron. Algorytmy zastępowania stron. Przydział ramek. Szamotanie (migotanie). Pliki odwzorowywane

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 9 Pamięć operacyjna Właściwości pamięci Położenie Pojemność Jednostka transferu Sposób dostępu Wydajność Rodzaj fizyczny Własności fizyczne Organizacja Położenie pamięci

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

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

3 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.06 Rok akad. 2011/2012 2 / 22

3 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.06 Rok akad. 2011/2012 2 / 22 ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH struktury procesorów ASK SP.06 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad. 2011/2012 1 Maszyny wirtualne 2 3 Literatura c Dr inż. Ignacy

Bardziej szczegółowo

Budowa systemów komputerowych

Budowa systemów komputerowych Budowa systemów komputerowych Krzysztof Patan Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski k.patan@issi.uz.zgora.pl Współczesny system komputerowy System komputerowy składa

Bardziej szczegółowo

Zarządzanie pamięcią. Zarządzanie pamięcią. Podstawy. Podsystem zarządzania pamięcią. Zadania podsystemu: W systemie wielozadaniowym:

Zarządzanie pamięcią. Zarządzanie pamięcią. Podstawy. Podsystem zarządzania pamięcią. Zadania podsystemu: W systemie wielozadaniowym: W systemie wielozadaniowym: Wpamięci wiele procesów jednocześnie Każdy proces potrzebuje pamięci na: Instrukcje (kod lub tekst) Dane statyczne (w programie) Dane dynamiczne (sterta, stos). System operacyjny

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

Stronicowanie na ¹danie

Stronicowanie na ¹danie Pamiêæ wirtualna Umo liwia wykonywanie procesów, pomimo e nie s¹ one w ca³oœci przechowywane w pamiêci operacyjnej Logiczna przestrzeñ adresowa mo e byæ du o wiêksza od fizycznej przestrzeni adresowej

Bardziej szczegółowo

Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]

Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz] Procesor ma architekturę akumulatorową. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset or Rx, Ry, A add Rx load A, [Rz] push Rx sub Rx, #3, A load Rx, [A] Procesor ma architekturę rejestrową

Bardziej szczegółowo

Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4

Pamięć wirtualna. Przygotował: Ryszard Kijaka. Wykład 4 Pamięć wirtualna Przygotował: Ryszard Kijaka Wykład 4 Wstęp główny podział to: PM- do pamięci masowych należą wszelkiego rodzaju pamięci na nośnikach magnetycznych, takie jak dyski twarde i elastyczne,

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

Działanie systemu operacyjnego

Działanie systemu operacyjnego Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej I NIC sieci Pamięć operacyjna Przerwania Przerwania

Bardziej szczegółowo

Działanie systemu operacyjnego

Działanie systemu operacyjnego Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej sieci Pamięć operacyjna Przerwania Przerwania Przerwanie

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

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

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

Schematy zarzadzania pamięcia

Schematy zarzadzania pamięcia Schematy zarzadzania pamięcia Segmentacja podział obszaru pamięci procesu na logiczne jednostki segmenty o dowolnej długości. Postać adresu logicznego: [nr segmentu, przesunięcie]. Zwykle przechowywana

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

TEMAT 5 Zarządzanie pamięcią operacyjną

TEMAT 5 Zarządzanie pamięcią operacyjną TEMAT 5 Zarządzanie pamięcią operacyjną Struktura pamięci pamięć -- wielka tablica oznaczona adresami słów lub bajtów procesor pobiera rozkazy z pamięci stosownie do wartości licznika rozkazów rozkazy

Bardziej szczegółowo

Programowanie na poziomie sprzętu. Tryb chroniony cz. 1

Programowanie na poziomie sprzętu. Tryb chroniony cz. 1 Tryb chroniony cz. 1 Moduł zarządzania pamięcią w trybie chronionym (z ang. PM - Protected Mode) procesorów IA-32 udostępnia: - segmentację, - stronicowanie. Segmentacja mechanizm umożliwiający odizolowanie

Bardziej szczegółowo

Działanie systemu operacyjnego

Działanie systemu operacyjnego Działanie systemu operacyjnego Budowa systemu komputerowego Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej Pamięć

Bardziej szczegółowo

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Definicja systemu operacyjnego (1) Miejsce,

Bardziej szczegółowo

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Miejsce, rola i zadania systemu operacyjnego

Bardziej szczegółowo

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Wprowadzenie Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego

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

Podstawy. Podsystem zarządzania pamięcią - zadania: Wiązanie (binding) rozkazów i danych z adresami pamięci. W systemie wielozadaniowym:

Podstawy. Podsystem zarządzania pamięcią - zadania: Wiązanie (binding) rozkazów i danych z adresami pamięci. W systemie wielozadaniowym: W systemie wielozadaniowym: W pamięci wiele procesów jednocześnie Każdy proces potrzebuje pamięci na: Instrukcje (kod lub tekst) Dane statyczne (w programie) Dane dynamiczne (sterta, stos). System operacyjny

Bardziej szczegółowo

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski Układ sterowania, magistrale i organizacja pamięci Dariusz Chaberski Jednostka centralna szyna sygnałow sterowania sygnały sterujące układ sterowania sygnały stanu wewnętrzna szyna danych układ wykonawczy

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

Urządzenia wejścia-wyjścia

Urządzenia wejścia-wyjścia Urządzenia wejścia-wyjścia Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Klasyfikacja urządzeń wejścia-wyjścia Struktura mechanizmu wejścia-wyjścia (sprzętu i oprogramowania) Interakcja

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 Wydajność obliczeń Dla wielu programów wydajność obliczeń można traktować jako wydajność pobierania z pamięci

Bardziej szczegółowo

Architektura systemu komputerowego. Działanie systemu komputerowego. Przerwania. Obsługa przerwań (Interrupt Handling)

Architektura systemu komputerowego. Działanie systemu komputerowego. Przerwania. Obsługa przerwań (Interrupt Handling) Struktury systemów komputerowych Architektura systemu komputerowego Działanie systemu komputerowego Struktura we/wy Struktura pamięci Hierarchia pamięci Ochrona sprzętowa Architektura 2.1 2.2 Działanie

Bardziej szczegółowo

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

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

Hierarchia pamięci w systemie komputerowym

Hierarchia pamięci w systemie komputerowym Hierarchia pamięci w systemie komputerowym Aby procesor mógł do końca wykorzystać swą wysoką częstotliwość taktowania musi mieć możliwość odpowiednio szybkiego pobierania danych do przetworzenia. Pamięć

Bardziej szczegółowo

Przed wykonaniem program musi być pobrany z dysku i. Tam działa a jako proces. Podczas wykonywania, proces pobiera rozkazy i dane z

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

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

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

System pamięci. Pamięć wirtualna

System pamięci. Pamięć wirtualna System pamięci Pamięć wirtualna Pamięć wirtualna Model pamięci cache+ram nie jest jeszcze realistyczny W rzeczywistych systemach działa wiele programów jednocześnie Każdy może używać tej samej przestrzeni

Bardziej szczegółowo

sprowadza się od razu kilka stron!

sprowadza się od razu kilka stron! Bazy danych Strona 1 Struktura fizyczna 29 stycznia 2010 10:29 Model fizyczny bazy danych jest oparty na pojęciu pliku i rekordu. Plikskłada się z rekordów w tym samym formacie. Format rekordujest listą

Bardziej szczegółowo

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt Architektura komputera Architektura von Neumanna: Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt Zawartośd tej pamięci jest adresowana przez wskazanie miejsca, bez względu

Bardziej szczegółowo

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1 dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1 Cel wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działanie systemu operacyjnego

Bardziej szczegółowo

obszar bezpośrednio dostępny dla procesora rozkazy: load, store (PAO rejestr procesora)

obszar bezpośrednio dostępny dla procesora rozkazy: load, store (PAO rejestr procesora) Pamięć operacyjna (main memory) obszar bezpośrednio dostępny dla procesora rozkazy: load, store (PAO rejestr procesora) cykl rozkazowy: pobranie rozkazu z PAO do rejestru rozkazów dekodowanie realizacja

Bardziej szczegółowo

Bazy danych. Plan wykładu. Model logiczny i fizyczny. Operacje na pliku. Dyski. Mechanizmy składowania

Bazy danych. Plan wykładu. Model logiczny i fizyczny. Operacje na pliku. Dyski. Mechanizmy składowania Plan wykładu Bazy danych Wykład 10: Fizyczna organizacja danych w bazie danych Model logiczny i model fizyczny Mechanizmy składowania plików Moduł zarządzania miejscem na dysku i moduł zarządzania buforami

Bardziej szczegółowo

Architektura systemu komputerowego

Architektura systemu komputerowego Architektura systemu komputerowego Klawiatura 1 2 Drukarka Mysz Monitor CPU Sterownik dysku Sterownik USB Sterownik PS/2 lub USB Sterownik portu szeregowego Sterownik wideo Pamięć operacyjna Działanie

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

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

LEKCJA TEMAT: Zasada działania komputera.

LEKCJA TEMAT: Zasada działania komputera. LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem

Bardziej szczegółowo

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych B.1. Dostęp do urządzeń komunikacyjnych Sterowniki urządzeń zewnętrznych widziane są przez procesor jako zestawy rejestrów

Bardziej szczegółowo

Przerwania, polling, timery - wykład 9

Przerwania, polling, timery - wykład 9 SWB - Przerwania, polling, timery - wykład 9 asz 1 Przerwania, polling, timery - wykład 9 Adam Szmigielski aszmigie@pjwstk.edu.pl SWB - Przerwania, polling, timery - wykład 9 asz 2 Metody obsługi zdarzeń

Bardziej szczegółowo

System pamięci. Pamięć wirtualna

System pamięci. Pamięć wirtualna System pamięci Pamięć wirtualna Pamięć wirtualna Model pamięci cache+ram nie jest jeszcze realistyczny W rzeczywistych systemach działa wiele programów jednocześnie Każdy może używać tej samej przestrzeni

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

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

Działanie systemu operacyjnego

Działanie systemu operacyjnego Działanie systemu operacyjnego Budowa systemu komputerowego I NIC Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej

Bardziej szczegółowo

Co to jest sterta? Sterta (ang. heap) to obszar pamięci udostępniany przez system operacyjny wszystkim działającym programom (procesom).

Co to jest sterta? Sterta (ang. heap) to obszar pamięci udostępniany przez system operacyjny wszystkim działającym programom (procesom). Zarządzanie pamięcią Pamięć: stos i sterta Statyczny i dynamiczny przydział pamięci Funkcje ANSI C do zarządzania pamięcią Przykłady: Dynamiczna tablica jednowymiarowa Dynamiczna tablica dwuwymiarowa 154

Bardziej szczegółowo

Algorytm. a programowanie -

Algorytm. a programowanie - Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik

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

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 Wydajność obliczeń Dla wielu programów wydajność obliczeń można traktować jako wydajność pobierania z pamięci

Bardziej szczegółowo