Zbigniew S. Szewczak Podstawy Systemów Operacyjnych

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

Download "Zbigniew S. Szewczak Podstawy Systemów Operacyjnych"

Transkrypt

1 Zbigniew S. Szewczak Podstawy Systemów Operacyjnych Wykład 10 Pamięć wirtualna. Toruń, 2004

2 Odrabianie wykładów czwartek, , S7, g za czwartek, , S7, g za 12.05

3 Pamięć wirtualna Podstawy Stronicowanie na żądanie Sprawność stronicowania na żądanie Zastępowanie stron Algorytmy zastępowania stron Przydział ramek Szamotanie Inne rozważania Segmentacja na żądanie

4 Podstawy Wykonywane rozkazy muszą rezydować w pamięci, jednak cały program nie musi programy często zawierają fragmenty obsługi sytuacji wyjątkowych tablice, listy mają zwykle nadmiar przydzielonej pamieci pewne możliwości programu są rzadko stosowane Zalety programu częściowo rezydującego brak ograniczeń na pamięć więcej programów: lepsze wykorzystanie procesora mniejsza liczba operacji we/wy dla załadowania programu więc program wykonuje się szybciej

5 Podstawy (c.d.) Pamięć wirtualna (ang. virtual memory ) pozwala na odseparowanie pamięci logicznej użytkownika od pamięci fizycznej Można jedynie część programu załadować do pamięci w celu wykonania Logiczna przestrzeń adresowa procesu może dlatego być znacznie większa niż fizyczna przestrzeń adresowa Potrzeba wymiany stron między dyskiem a pamięcią Pamięć wirtualną można zaimplementować jako: Stronicowanie na żądanie (ang. demand paging) Segmentacja na żądanie (ang. demand segmentation) np.os/2

6 Pamięć wirtualna i fizyczna strona 0 strona 1 strona 2... strona n pamięć wirtualna odwzorowanie pamięci pamięć fizyczna

7 Stronicowanie na żądanie Nigdy nie dokonuje się wymiany strony w pamięci jeśli nie jest to konieczne - procedura leniwej wymiany (ang. lazy swapper) Mniej operacji we/wy Mniej pamięci Szybsza reakcja Więcej użytkowników Jeśli strona jest potrzebna odwołaj się niepoprawne odwołanie abort brak strony w pamięci sprowadź z stronę do pamięci Zgodność z Zasadą lokalności odniesień

8 Stronicowanie na żądanie (c.d.) Proces jest traktowany jako ciąg stron Procedura wymiany dotyczy całego procesu Procedura stronicująca (ang. pager) dotyczy poszczególnych stron procesu Gdy proces ma zostać wprowadzony do pamięci, wówczas procedura stronicująca zgaduje jakie strony będą w użyciu przed ponownym załadowaniem na dysk (ang. swap space) Nigdy nie dokonuje się wymiana całego procesu dlatego używamy określenia stronicowanie (ang. page) zamiast wymiana (ang. swap)

9 Przesyłanie do obszaru ciąłego program A swap out program B swap in pamięć operacyjna

10 Bit poprawności Z każdą pozycją w tablicy stron stowarzyszony jest bit poprawności (ang. valid-invalid bit): 1 w pamięci, 0 poza pamięcią (dozwolona lub nie) Początkowo bit poprawności ustawiany jest na 0 (lub i) dla wszystkich pozycji Nr ramki bit poprawności Przykład 1 Μ tablica stron

11 Tablica stron z brakami stron 0 0 A numer ramki 0 4 bit poprawności v B 1 i 4 A C D E F v i i v i C F C F A B D E 6 G 7 H pamięć logiczna 7 i tablica stron pamięć fizyczna

12 Brak strony Implementacja bitu poprawności wymaga wsparcia ze strony sprzętu Jeśli wystąpi odwołanie do strony z bitem 0, sprzęt stronicujący spowoduje przejście do systemu operacyjnego: błąd zwany brakiem strony (ang. page-fault) Czyste stronicowanie na żądanie (ang. pure demand paging): Nigdy nie sprowadzaj strony do pamięci wcześniej niż jest to niezbędne

13 Procedura obsługi braku strony 1. System operacyjny sprawdza wewnętrzną tablicę oraz decyduje, że: 2. jeśli odwołanie niedozwolone - kończy proces 2. jeśli odwołanie dozwolone tylko zabrakło strony w pamięci to sprowadza tę stronę 3. System znajduje wolną ramkę na liście wolnych ramek 4. System wczytuje stronę z dysku do wolnej ramki 5. System wstawia bit 1 (lub v) w tablicy stron 6. System wykonuje przerwany rozkaz

14 Etapy obsługi braku strony system operacyjny 3 strona w pamięci pomocniczej odniesienie 1 2 pułapka umieść M 6 wznowienie wykonywania tablica stron i pamięć fizyczna 5 4 odnowienie tablicy stron sprowadzenie brakujacej strony

15 Co się stanie gdy zabraknie wolnej ramki? Zastąpienie strony - szukamy strony w pamięci która nie jest używana i zapisujemy na dyska wydajność potrzebny jest taki algorytm, który zminimalizuje liczbę braków strony Pewne strony mogą być sprowadzane do pamięci po kilka razy Może się okazać, że kilka stron w pamięci jest potrzebnych do wykonania jednego rozkazu MVC (przenieś znaki), EX (wykonaj) sposób adresowania - np. pośrednie, autoincrement (PDP-11) Wn. Sposób zastąpienia strony zależy od architektury komputera

16 Sprawność stronicowania na żądanie Prawdopodobieństwo braku strony p jeśli p=0 to brak braku stron jeśli p=1 to każde odwołanie generuje brak strony Efektywny czas dostępu (EAT) EAT = (1-p) * cd + p* czas obsługi strony cd - czas dostępu do pamięci (10 do 200 ns) czas obsługi strony obsługa przerwania wywołanego brakiem strony (1 do 100 µs) czytanie strony wznowienie procesu(1 do 100 µs)

17 Prefiksy metryczne 10^-3 - mili (m); 10^3 - kilo (k) 10^-6 - micro (µ); 10^6 - Mega (M) 10^-9 - nano (n); 10^9 - Giga (G) 10^-12 - pico (p); 10^12 - Tera (T) 10^-15 - femto (f); 10^15 - Peta (P) 10^-18 - atto (a); 10^18 - Exa (E) 10^-21 - zepto (z); 10^21 - Zetta (Z) 10^-24 - yocto (y); 10^24 - Yotta (Y)

18 Przykłady wykorzystania 1.7 yg - masa protonu 1 as - czas przejścia światła przez atom 1 pg - masa bakterii 1 µl - kropelka wody 1 Ms - 11,6 dni 0,3 Gm - sekunda świetlna 9,5 Pm - rok świetlny 1 ZL - objętość Pacyfiku 1 YL - pojemność Ziemii

19 Czas obsługi braku strony Przejście do systemu operacyjnego Przechowanie kontekstu Określenie, że przerwanie to brak strony Określenie dopuszczalności i położenia strony Czytanie z dysku do wolnej ramki Przydzielenie procesora w trakcie transferu Przerwanie we/wy po transferze strony Odebranie sterowania i przełączenie kontekstu Skorygowanie tablicy stron Czekanie na przydział procesora i wznowienie

20 Stronicowanie na żądanie - przykład cd = 100 ns czytanie strony z dysku twardego opóźnienie (ang. latency) - 8ms przeszukiwanie (ang. seek) - 15ms przesyłanie (ang. transfer) - 1ms Czytanie strony = 25 ms = ns EAT = (1 p) *(100) + p *( ) = *p ns Wn. EAT jest proporcjonalny do p (page-fault rate) dlatego rozsądnym jest utrzymywanie małego prawdopodobieństwa p braku strony

21 Tworzenie procesu Podczas tworzenia procesu pamięć wirtualna pozwala na realizację technik poprawiajacych wydajność systemu kopiowanie przy zapisie (ang. copy-on-write) odwzorowanie plików do pamięci (ang. memory-mapped files)

22 Kopiowanie przy zapisie Kopiowanie przy zapisie umożliwia procesowi potomnemu jak i rodzicowi dzielenie tych samych stron w pamięci Jeśli któryś z nich modyfikuje stronę to jest ona kopiowana Kopiowanie przy zapisie poprawia wydajność tworzenia procesów np. Linux, W2K, Solaris 2 Wolne strony są alokowane z puli wyzerowanych stron (ang. zero-fill-on-demand) vfork - rodzic jest zawieszony i potomek używa jego przestrzeni adresowej, np. funkcja systemowa exec

23 Odwzorowanie plików do pamięci We/wy na pliki odwzorowane w pamięci to dostęp do bloków danych dyskowych wymapowanych na strony Plik jest początkowo czytany jako żądanie strony Blok danych o wielkości strony zostaje wczytany Operacje we/wy na pliku to we/wy na pamięci Uproszczenie dostępu do pliku, bez wywołań systemowych read(), write() Wiele procesów może korzystać z pliku dzieląc strony w pamięci Solaris 2

24 Zastępownie stron - dzielenie stron pliku pamięć wirtualna procesu A pamięć fizyczna pamięć wirtualna procesu B plik na dysku

25 Zapotrzebowanie na zastąpienie strony - brak wolnej ramki PC H umieść M J M pamięć logiczna użytkownika 1 ramka bit poprawności v v v tablica stron użytkownika 1 i monitor D H B A B D E pamięć logiczna użytkownika 2 ramka bit poprawności 6 v i 2 v 7 v tablica stron użytkownika 2 4 umieść M 5 J 6 A 7 E pamięć fizyczna M

26 Zastępowanie stron Ochrona przed nadprzydziałem (ang. overallocation) pamięci przez dodanie do obsługi braku strony możliwości zastąpienia strony (ang. page replacement). 1. Zlokalizowanie potrzebnej strony na dysku 2. Odnalezienie wolnej ramki jeśli ramka istnieje - zostaje użyta w przeciwnym razie typowanie ramki ofiary (ang. victim) ramka ofiara zapisana na dysk; zmiana w tablicy stron 3. Wczytanie potrzebnej strony 4. Wznowienie procesu

27 Zastępowanie strony ramka o f bit poprawności i v tablica stron 2 4 zmiana na invavlid f reset tablicy stron dla nowej strony ofiara strona ofiara swap out 1 strona potrzebna swap in 3 pamięć fizyczna

28 Zastępowanie stron (c.d.) Gdy nie ma wolnych ramek - potrzebne jest dwukrotne przesyłanie stron a w konsekwencji wydłużenie efektywnego czasu dostępu Zastosowanie bitu modyfikacji (zabrudzenia) (ang. modify (dirty) bit ) do zredukowania czasu dostępu - tylko strony zmodyfikowane są zapisywane na dysk

29 Zastępowanie stron (c.d.) Zastępowanie stron jest podstawą stronicowania na żądanie i dopełnia rozdzielenie pamięci logicznej od fizycznej Z pomocą tego mechanizmu otrzymujemy wielką pamięć wirtualną używając mniejszej pamięci fizycznej Dwa główne problemy algorytm przydziału ramek (ang. frame-allocation algorithm) algorytm zastępowania stron (ang. page-replacement algorithm)

30 Algorytmy zastępowania stron Minimalizacja częstości braków stron (ang. pagefault rate) Algorytm ocenia się na podstawie wykonania go na pewnym ciągu odniesień (ang. reference string) do pamięci i zsumowaniu liczby braków stron w tym ciągu Dla zilustrowania algorytmów zastępowania stron będziemy używać pamięci z trzema wolymi ramkami oraz następujacego ciągu odniesień 7, 0, 1, 2, 0, 3, 0, 4, 2, 3, 0, 3, 2, 1, 2, 0, 1, 7, 0, 1.

31 Algorytm zastępowania FIFO Algorytm FIFO (ang. First-In-First-Out) stowarzysza z każdą ze stron czas kiedy została ona sprowadzona do pamięci Jeśli trzeba zastąpić stronę to zastępowana jest najstarsza ze stron Implementuje się za pomocą kolejek FIFO (IPC System V, POSIX) Dla ciągu odniesień z trzema ramkami mamy 15 braków stron (w tym trzy początkowe braki stron)

32 Algorytm FIFO - przykład Ciąg odniesień: 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5 3 ramki (3 strony mogą być w pamięci w w tym samym czasie) braków stron ramki braków stron 4 4 3

33 Anomalia Belady ego Anomalia Belady ego (ang. Belady s anomaly) odzwierciedla fakt, że w niektórych algorytmach zastępowania stron współczynnik braków stron może wzrastać ze wzrostem wolnych ramek (mimo, że intuicja zdaje się sugerować, że zwiekszenie pamięci procesu powinno polepszyć jego działanie) Poszukiwanie optymalnego algorytmu zastępowania stron, który cechuje najniższy współczynnik braków stron

34 Krzywa braków stron (FIFO) 16 liczba braków stron liczba ramek

35 Algorytm optymalny Zastąp tę stronę, która najdłużej nie będzie używana; nazywany OPT lub MIN Przykład 3 ramek 7, 0, 1, 2, 0, 3, 0, 4, 2, 3, 0, 3, 2, 1, 2, 0, 1, 7, 0, braków stron Nie ma anomalii Belady ego

36 Algorytm optymalny (c.d.) Bardzo trudny do realizacji bo wymaga wiedzy o przyszłej postaci ciągu odniesień (podobnie jak przy planowaniu procesora metodą SJF) Używany głównie w studiach porównawczych wiedza o tym, że jakiś algorytm odbiega od optymalnego o 12,3% a średnio jest od niego gorszy o 4,7% może okazać się cenną inna sprawa to wartość wartości średniej

37 Algorytm LRU Zastąp tę stronę, która najdawniej była użyta (ang. Least Recently Used) Przykład 3 ramek 7, 0, 1, 2, 0, 3, 0, 4, 2, 3, 0, 3, 2, 1, 2, 0, 1, 7, 0, 1 Nie jest dotknięty anomalią Belady ego Odwracalność braków stron

38 Algorytm LRU a FIFO - przykład Ciąg odniesień: 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5 Zastępujemy najdawniej używaną stronę

39 Algorytm LRU (c.d.) Dwie implementacje Liczniki - do każdej pozycji w tablicy stron dołączamy rejestr czasu użycia, do procesora zaś dodajemy zegar logiczny lub licznik. Wskazania zegara są zwiększane wraz z każdym odniesieniem do pamięci. Ilekroć występuje odniesienie do pamięci, tylekroć zawartość rejestru zegara jest kopiowana do rejestru czasu użycia należącego do danej strony w tablicy stron Stos - przy każdym odwołaniu do strony jej numer wyjmuje się ze stosu i umieszcza na szczycie - najlepsza implementacja to dwukierunkowa lista ze wskaźnikami do czoła i do końca najwyżej 6 zmian wskaźników nie jest potrzebne przeszukiwanie listy

40 Przykład - LRU i użycie stosu

41 Algorytmy stosowe Algorytm stosowy (ang. stack algorithm) to taki algorytm dla którego zbiór stron w pamięci w przypadku n ramek jest podzbiorem zbioru stron w pamięci w przypadku n+1 ramek Przykład: LRU Własności: klasa algorytmów stosowych nie jest dotknięta anomalią Belady ego

42 Algorytmy przybliżające LRU Bit odniesienia (ang. reference bit) Z każdą stroną stowarzyszamy na początku bit 0 Czytanie lub pisanie na stronie ustawia bit na 1 Zastąp stronę stronę jeśli ma bit 0 nie można poznać porządku użycia stron Algorytm drugiej szansy (ang. second chance) Algorytm FIFO (wymaga zegara) Gdy strona (FIFO) ma bit odniesienia = 1 to strona dostaje drugą szansę na pobyt w pamięci: bit odniesienia = 0 i czas przybycia = bieżący zostawia się stronę w pamięci zastępuje się następną w porządku FIFO stronę według powyższych zasad

43 Zegarowy algorytm drugiej szansy następna ofiara bity odniesienia strona

44 Ulepszony algorytm drugiej szansy (x,y) - x - bit odniesienia, y- bit modyfikacji 4 klasy (od najniższej) (0,0) - nie używana ostatnio i nie zmieniana: najlepsza ofiara (0,1) - nie używana ostatnio ale zmieniona: gorsza ofiara bo wymaga zapisu na dysk (1,0) - używana ostatnio i czysta: może być wkrótce użyta (1,1) - używana ostatnio i zmieniana - najgorsza ofiara, prawdopodobnie będzie zaraz użyta Algorytm drugiej szansy ale zastępujemy pierwszą napotkaną stronę z najniższej niepustej klasy (x,y)

45 Algorytmy zliczające Wprowadzamy liczniki odwołań do każdej ze stron Algorytm LFU (ang. least frequently used) - zastąp stronę najrzadziej używaną Algorytm MFU (ang. most frequently used) - uzasadnia się tym, że strona z najmniejszą wartością licznika została prawdopodobnie dopiero co sprowadzona i będzie jeszcze używana Implementacja kosztowana i nie przybliżają dobrze algorytmu OPT

46 Algorytmy buforowania stron Zanim usunie się z pamięci ramkę ofiarę wczytuje się nową stronę do którejś z wolnych ramek Nie trzeba czekać na zakończenie zapisywania strony ofiary aby wznowić proces Z chwilą zapisania do swapu ramki ofiary dołączana jest ona do listy wolnych ramek Rozwinięcie tej idei: lista zmodyfikowanych stron gdy urządzenie stronicujące jest wolne (ang. idle) zmodyfikowna strona jest zapisywana na dysk Lista wolnych stron wraz listą odwiedzających stron VAX/VMS - ramka ofiara (FIFO) może być użyta

47 Przydział ramek Każdy proces wymaga minimalnej liczby ramek Przykład: IBM ramek potrzebnych do wykonania rozkazu typu SS MVC: rozkaz długośći 6 bajtów może zajmować 2 strony dane wejściowe (256 znaków) mogą zajmować 2 strony obszar na który przesyłamy może zajmować 2 strony gdy MVC jest argumentem rozkazu EXECUTE jeszcze 2! Dwa główne schematy przydziału przydział stały (ang. fixed allocation) przydział priorytetowy (ang. priority allocation)

48 MVC - Move Characters MVC D1(L,B1), D2(B2) prześlij pole danych o długości L z pod adresu wyznaczonego przez zawartość rejestru B2 powiększonego o przesunięcie D2 pod adres (B1)+D1 Przykład L=08, B1=x B, D1=001,B2=x B,D2=000 MVC 1(8,11), 0(11) - format Assemblera D207B001B000 - format maszynowy rejestr 11 zawiera x 358 ; pod adresem 358 mamy: 00F1F2F3F4F5F6F7F8F9 po wykonaniu MVC mamy pod adresem 358 :

49 EX - Execute EX R1, D2(X2,B2) do bitów 8-15 rozkazu z pod adresu (X2)+(B2)+D2 są dodawane logicznie bity rejestru R1 i tak zmodyfikowany rozkaz jest wykonywany Przykład pod adresem 3820 mamy D2FFB001B000; R11=x 358, pod adresem 358 mamy 00F1F2F3F4F5F6F7F8F9 R1=3, X2=0, B2=x A, D2=000, R10 = x EX 1,0(0,10) - format Assemblera 4410A000 - format maszynowy po wykonaniu EX mamy pod adresem 358: F5F6F7F8

50 Przydział stały Przydział równy (ang. equal allocation) - np. jeśli mamy 100 ramek i 5 procesów, to każdy proces może dostać 20 ramek Przydział proporcjonalny (ang. proportional allocation) - każdemu procesowi przydziela się dostępną pamięć proporcjonalnie do jego rozmiaru

51 Przydział proporcjonalny Przykład s(i) rozmiar pamięci wirtualnej procesu P(i) S = s(1)+s(2)+...+s(n) m - całkowita liczba ramek procesowi P(i) przydzielamy a(i)~ m*(s(i)/s) ramek m=64, n=2, s(1)=10, s(2)=127 a(1)= 64*(10/137) ~ 5 ramek a(2)= 64*(127/137) ~ 59 ramek

52 Przydział priorytetowy Zastosowanie metody przydziału proporcjonalnego, w którym liczba ramek zależy nie od względnych rozmiarów procesu, lecz od priorytetów procesów albo od kombinacji rozmiaru i priorytetu Jeśli proces P i generuje błąd braku strony wybierz do zastąpienia jedną z jego ramek wybierz do zastąpienia ramkę procesu o niższym priorytecie

53 Porównanie przydziału globalnego i lokalnego Zastępowanie globalne (ang. global replacement) umożliwia procesom wybór ramki ze zbioru wszystkich ramek, nawet gdy ramka jest w danej chwili przydzielona do innego procesu: jeden proces może zabrać ramkę drugiemu procesowi Zastępowanie lokalne (ang. local replacement) wybór ograniczony do zbioru ramek przydzielonych do danego procesu Lepszą przepustowość systemu daje globalne - zastępowanie lokalne ma mniejszy zakres

54 Szamotanie Jeśli proces nie ma wystarczająco dość ramek to współczynnik braków stron jest znaczny. Powoduje to: słabe wykorzystanie CPU system operacyjny reaguje: trzeba zwiększyć wieloprogramowość i podnieść wykorzystanie CPU nowy procesy z kolejki procesów gotowych staje się aktywnym Szamotanie (ang. trashing) - proces się szamocze jeśli spędza więcej czasu na stronicowaniu niż na wykonaniu

55 Przyczyna szamotania System operacyjny nadzoruje wykorzystanie jednostki centralnej Jeśli jest ono za małe planista przydziału procesora zwiększa stopień wieloprogramowości Strony zastępowane są według globalnego algorytmu bez brania po uwagę do jakich procesów należą Procesom zaczyna brakować stron Procesy ustawiają się w kolejce do urządzenia stronicującego Planista opróżnia kolejkę procesów gotowych

56 Powstrzymanie szamotania Zmniejszenie stopnia wieloprogramowości Lokalny (lub priorytetowy) algorytm zastępowania jeśli proces zaczyna się szamotać nie może on kraść ramek innemu procesowi bo może on też zacząć się szamotać Trzeba dostarczyć procesowi potrzebne ramki Należy zabezpieczyć się przed możliwością wystapienia braku ramek

57 Szamotanie - diagram wykorzystanie procesora szamotanie stopień wieloprogramowości

58 Model strefowy a chaos Model strefowy (ang. locality model) zakłada, że w trakcie wykonania przechodzi się z jednej strefy programu do innej, gdzie przez strefę programu rozumie się zbiór stron pozostajacych we wspólnym użyciu Ogólnie ujmując, program składa się z wielu różnych stref, które mogą na siebie zachodzić Strefy programu są określne przez jego strukturę oraz strukturę jego danych Model strefowy neguje losowość programów System operacyjny nie radzi sobie z chaosem

59 Zasada lokalności odniesień

60 Model zbioru roboczego Założenie: procesy mają charakter strefowy - parametr do definiowania okna roboczego (ang. working-set window) oznaczający ustaloną liczbę ostatnich odniesień do stron WS(i) - zbiór roboczy (ang. working-set) procesu P(i) - całkowita liczba odniesień do stron w ostatnich jednostkach czasu za małe nie obejmie całego zbioru roboczego za duże to będzie zachodzić na kilka stref programu nieskończone - wszystkie strony użyte przez proces Szamotanie jeśli WS(1)+..+WS(n) > #(pamięć) - należy zawiesić w takiej sytuacji jakiś proces

61 Utrzymanie śladu zbioru roboczego Trudno jest utrzymać ślad zbioru roboczego Model zbioru roboczego można przybliżać z pomocą zegara generującego przerwania w stałych odstępach czasu oraz bitu odniesienia Przykład = przerwania zegarowe co 5000 odniesień dwa bity przechowywane w pamięci dla każdej strony po wystąpieniu przerwania zegara kopiuje się i zeruje wartości bitów odniesień wszystkich stron jeśli wystąpi brak strony to badamy bit odniesienia i dwa bity w pamięci: conajmiej jeden ustawiony bit określa zbiór roboczy

62 Utrzymanie śladu zbioru roboczego - przykład (c.d.) Wada: nie można powiedzieć, w którym miejscu przydziału 5000 odniesień wystąpiło dane odniesienie Można zwiekszyć historię odniesień (t.j. ilość bitów z 2 do 10) i liczbę przerwań ( np. co 1000 odniesień) Wada: zwiększony koszt obsługi

63 Model zbioru roboczego - przykład ślad odwołań do stron t 1 WS(t 1 )= { 1,2,5,6,7 } 2 WS(t )= { 3,4 } t 2

64 Częstość braków stron Metodą mierzenia szamotania jest mierzenie częstości braków stron (ang. page-fault frequency - PFF) ustala się górną i dolną granicę pożądanego poziomu braków stron jeśli proces przekracza górną granicę do dostaje dodatkową ramkę jeśli częstość występowania braków stron spada poniżej dolnej granicy to usuwa się ramkę z procesu, którego ten objaw dotyczy

65 Częstość braków stron - wykres liczba braków stron ograniczenie górne zwiększ ilość ramek ograniczenie dolne zmniejsz ilość ramek liczba ramek

66 Przykłady implementacji pamięci wirtualnej - WNT stronicowanie na żądanie clustering - każdy proces ma przypisany minimalny i maksymalny zbiór roboczy: jeśli proces ma zbiór roboczy bliski maksymalnemu i złapie błąd strony musi zgodnie z lokalną polityką zastępowania wyznaczyć ramkę ofiarę; jeśli proces ma zbiór roboczy bliski minimalnemu może dostać ramkę z globalnej listy wolnych ramek Konkretny sposób wyboru strony do usunięcia ze zbioru roboczego jest zależny od typu procesora

67 Przykłady implementacji pamięci wirtualnej - W2K 4GB pamięci dla procesu w tym 2GB - W2K, 2*64KB - pointers stany stron dostępne - nieużywane przez dany proces powierzone (ang. commited) - np. strony w chwili zapisywania do pliku na dysku zarezerwowane - ciągły zbiór stron nie wliczany do quoty zanim użyty (np. przy zapisie do pamięci)

68 Przykłady implementacji pamięci wirtualnej - Solaris 2 wartość progowa (ang. threshold) wolnej pamięci zwana lotsfree (zwykle 1/64 pamięci fizycznej) poniżej której proces pageout zaczyna podkradanie stron i wymianę pageout weryfikuje pamięć 4 razy na sekundę jeśli liczba wolnych ramek < lostfree to pageout wykonuje algorytm (podobny do zegarowego algorytmu drugiej szansy) zerowanie bitu odniesienia wszystkich ramek sprawdzenie (po pewnym czasie) bitów odniesienia i zwrot wolnych ramek jeśli liczba wolnych ramek < desfree to pageout startuje 100 razy na sekundę aby utrzymać desfree jeśli pageout nie jest w stanie utrzymać desfree przez 30 sekund to zaczyna się swapowanie stron jeśli system nie jest w stanie utrzymać ilości wolnej pamięci na poziomie minfree to pageout jest wołany przy każdym żądaniu nowej strony rozpoznawanie stron bibliotek dzielonych

69 Stronicowanie wstępne Stronicowanie wstępne (ang. prepaging) - jednorazowe wprowadzenie do pamięci wszystkich potrzebnych stron procesu zapobiega wysokiej aktywności stronicowania we wstępnej fazie procesu W systemach implementujących model zbioru roboczego dla każdego procesu przechowuje się listę stron jego zbioru roboczego Przełączenie kontekstu: zapamiętanie listy stron (np. w przypadku I/O) oraz wczytanie stron z tej listy przed restartem

70 Rozmiar strony Rozmiary stron są potęgami 2: od 4096 (2^12) do (2^22) bajtów Wybór rozmiaru strony minimalizacja fragmentacji wewnętrznej - małe strony małe strony - wzrasta wielkość tablicy stron duże strony - minimalizacja czasu operacji we/wy małe strony - lepsza lokalizacja

71 Rozmiar strony (c.d.) Obserwuje się tendencję do wybierania większych stron Intel KB; Motorola od 256B do 32KB Wzrost szybkości procesorów i pojemności pamięci jest szybszy niż wzrost szybkości dysków Z punktu widzenia wydajności systemu braki stron są kosztowne Większy rozmiar strony = większa fragmentacja wewnętrzna

72 Przykładowe rozmiary stron Altlas b słów Honeywell-Multics b słów IBM 370/XA i 370/ESA 4kB VAX 512B IBM AS/ B DEC Alpha 8kB MIPS 4kB - 16MB UltraSPARC 8kB - 4MB Pentium 4kB - 4MB PowerPC 4kB

73 Współczynnik trafień dla TLB Współczynnik trafień dla TLB (ang. TLB reach) odnosi się do ilości pamięci dostępnej za pomocą TLB (tzn. liczby pozycji w TLB razy rozmiar strony) Najlepiej mieć zbiór roboczy w TLB Jak zwiększyć współczynnik trafień TLB? powiększyć rozmiar strony wiele rozmiarów stron (UltraSPARC - 8KB, 64KB, 512KB, 4MB) Konieczność obsługi TLB (musi zawierać rozmiar strony) przez system operacyjny w przypadku wielu rozmiarów stron

74 Odwrócona tablica stron Odwrócona tablica stron nie zawiera pełnych informacji o logicznej przestrzeni adresowej procesu potrzebnych przy stronicowaniu W stronicowaniu na żądanie wprowadza się zewnętrzną tablicę stron procesu (położenia stron wirtualnych) do której odwołanie następuje w przypadku braku strony Zewnętrzne tablice stron podlegają również stronicowaniu Zarządca pamięci wirtualnej może spowodować kolejny brak strony wprowadzając potrzebną zewnętrzną tablicę stron aby zlokalizować stronę wirtualną na dysku

75 Struktura programu Struktura programu zerowania tablicy int A[][] = new int[128][128]; Strona długości 128 słów System operacyjny alokuje mniej niż 128 ramek Program 1: for (int j = 0; j < A.length; j++ ) for (int i = 0; i < A.length; i++ ) A[i][ j] = 0; 128 x 128 braków stron (A w pamięci jest wierszami)

76 Struktura programu (c.d.) Struktura programu zerowania tablicy int A[][] = new int[128][128]; Strona długości 128 słów System operacyjny alokuje mniej niż 128 ramek Program 2: for (int i = 0; i < A.length; i++ ) for (int j = 0; j < A.length; j++ ) A[i][ j] = 0; 128 braków stron (A w pamięci jest wierszami)

77 We/wy a ramki Proces wysyła zamówienie na we/wy i ustawia się w kolejce do urządzenia we/wy Procesor zostaje przydzielony innym procesom Zaczynają występować braki stron W wyniku działania algorytmu globalnego zastępowania stron jeden z procesów zastępuje stronę zawierającą bufor we/wy procesu czekającego w kolejce we/wy Zamówienie na we/wy zaczyna być realizowane do ramki innego procesu

78 We/wy a ramki - diagram bufor przewijak taśmy

79 We/wy a ramki (c.d.) Zakaz wykonywania operacji we/wy wprost do pamięci użytkownika duże nakłady przy kopiowaniu Blokowanie stron w pamięci każda ramka ma bit blokowania stron zablokowanych nie wolno zastępować strona jest odblokowywana po zakończeniu operacji we/wy pula wolnych stron jest zbyt mała? proces próbuje zablokować zbyt wiele stron?

80 Segmentacja na żądanie Jeśli występuje niedostatek sprzętu do realizacji pamięci wirtualnej stosuje się segmentację na żądanie (ang. demand segmentation) OS/2 zamiast stronami przydziela pamięć segmentami opisanymi za pomocą deskryptorów segmentów (ang. segment descriptors) Deskryptor segmentu zawiera bit poprawności wskazujący dla każdego segmentu czy znajduje się on w danej chwili w pamięci Jeśli segment jest w pamięci głównej, kontynuacja W przeciwnym razie przerwanie brak segmentu

81 Konfigurowanie pamięci wirtualnej AIX - schedtune, vmtune FreeBSD - sysctl, /etc/sysctl.conf HP-UX - lotsfree, desfree, minfree wolna pamięć > lotsfree - wstrzymanie podkradania stron desfree < wolna pamięć < lotsfree - podkradanie stron minfree < wolna pamięć < desfree - likwidacja szamotania Linux - /proc/sys/vm Solaris - kstat kstat -m unix -n system_pages grep free True64 - sysconfig

82 Podsumowanie (1) Potrzeba wykonania procesów których logiczna przestrzeń adresowa jest większa niż dostępna fizyczna przestrzeń adresowa Można użyć nakładek ale jest to bardzo trudne Pamięć wirtualna umożliwia wykonywanie bardzo dużych procesów zwalniając jednocześnie programistę od kłopotów związanych z brakiem pamięci

83 Podsumowanie (2) Czyste stronicowanie na żądanie (ang. pure demand paging) polega na nie sprowadzaniu strony do pamięci dopóty, dopóki nie ma do niej odniesienia Potrzebne są algorytmy zastępownia stron w pamięci FIFO - anomalia Belady ego optymalne zastępowanie OPT - wymaga wiedzy o przyszłości Algorytm LRU przybliża OPT ale jest trudny w realizacji Większość algorytmów oparta o algorytm drugiej szansy

84 Podsumowanie (3) Polityka przydziału ramek uzupełnia algorytm zastępowania stron przydział stały lub dynamiczny Proces powinien mieć przydzieloną liczbę ramek wystarczającą dla bieżącego zbioru roboczego, w przeciwnym razie nastąpi szamotanie Rozważenia wymaga również: rozmiar strony blokowanie stron w pamięci (np. dla operacji we/wy)

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

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

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

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

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

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ądzanie pamięcią operacyjną i pamięć wirtualna

Zarządzanie pamięcią operacyjną i pamięć wirtualna 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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 I SIECI KOMPUTEROWE

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE WINDOWS 1 SO i SK/WIN 005 Plik wymiany Pamięć wirtualna 2 SO i SK/WIN Plik wymiany - rodzaj pamięci wirtualnej komputerów. Plik ten służy do tymczasowego przechowywania

Bardziej szczegółowo

Komunikacja za pomocą potoków. Tomasz Borzyszkowski

Komunikacja za pomocą potoków. Tomasz Borzyszkowski Komunikacja za pomocą potoków Tomasz Borzyszkowski Wstęp Sygnały, omówione wcześniej, są użyteczne w sytuacjach błędnych lub innych wyjątkowych stanach programu, jednak nie nadają się do przekazywania

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

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

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

Sprzętowe wspomaganie pamięci wirtualnej

Sprzętowe wspomaganie pamięci wirtualnej Sprzętowe wspomaganie pamięci wirtualnej Stanisław Skonieczny 6 grudnia 2002 Spis treści 1 Intel 2 1.1 Tryby pracy procesora............................... 2 1.2 Adresowanie liniowe................................

Bardziej szczegółowo

SYSTEMY OPERACYJNE WYKLAD 6 - procesy

SYSTEMY OPERACYJNE WYKLAD 6 - procesy Wrocław 2007 SYSTEMY OPERACYJNE WYKLAD 6 - procesy Paweł Skrobanek C-3, pok. 323 e-mail: pawel.skrobanek@pwr.wroc.pl www.equus.wroc.pl/studia.html 1 Zasoby: PROCES wykonujący się program ; instancja programu

Bardziej szczegółowo

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE WINDOWS 1 SO i SK/WIN 007 Tryb rzeczywisty i chroniony procesora 2 SO i SK/WIN Wszystkie 32-bitowe procesory (386 i nowsze) mogą pracować w kilku trybach. Tryby pracy

Bardziej szczegółowo

Pamięć wirtualna w AS/400

Pamięć wirtualna w AS/400 Pamięć wirtualna w AS/400 Jan Posiadała 19 listopada 2002 1 Spis treści 1 Wpowadzenie - co to takiego AS/400 3 2 Organizacja pamięci 4 2.1 Koncepcja wymiany................................. 4 2.2 Koncepcja

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

Pliki. Operacje na plikach w Pascalu

Pliki. Operacje na plikach w Pascalu Pliki. Operacje na plikach w Pascalu ścieżka zapisu, pliki elementowe, tekstowe, operacja plikowa, etapy, assign, zmienna plikowa, skojarzenie, tryby otwarcia, reset, rewrite, append, read, write, buforowanie

Bardziej szczegółowo

Metody obsługi zdarzeń

Metody obsługi zdarzeń SWB - Przerwania, polling, timery - wykład 10 asz 1 Metody obsługi zdarzeń Przerwanie (ang. Interrupt) - zmiana sterowania, niezależnie od aktualnie wykonywanego programu, spowodowana pojawieniem się sygnału

Bardziej szczegółowo

1. Pamięć wirtualna. 2. Optymalizacja pliku pamięci wirtualnej

1. Pamięć wirtualna. 2. Optymalizacja pliku pamięci wirtualnej 1. Pamięć wirtualna Jeśli na komputerze brakuje pamięci RAM wymaganej do uruchomienia programu lub wykonania operacji, system Windows korzysta z pamięci wirtualnej, aby zrekompensować ten brak. Aby sprawdzić,

Bardziej szczegółowo

Tworzenie pliku Zapisywanie pliku Czytanie pliku Zmiana pozycji w pliku Usuwanie pliku Skracanie pliku

Tworzenie pliku Zapisywanie pliku Czytanie pliku Zmiana pozycji w pliku Usuwanie pliku Skracanie pliku System plików Definicje: Plik jest logiczną jednostką magazynowania informacji w pamięci nieulotnej Plik jest nazwanym zbiorem powiązanych ze sobą informacji, zapisanym w pamięci pomocniczej Plik jest

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 9 Zarządzanie pamięcią. Toruń, 2004 Działanie systemu Peryferia Komputer Procesy Pamięć System Sterowanie Linie komunikacyjne Wejście- Wyjście

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Wykład 12 Jan Kazimirski 1 Magistrale systemowe 2 Magistrale Magistrala medium łączące dwa lub więcej urządzeń Sygnał przesyłany magistralą może być odbierany przez wiele urządzeń

Bardziej szczegółowo

Struktura i działanie jednostki centralnej

Struktura i działanie jednostki centralnej Struktura i działanie jednostki centralnej ALU Jednostka sterująca Rejestry Zadania procesora: Pobieranie rozkazów; Interpretowanie rozkazów; Pobieranie danych Przetwarzanie danych Zapisywanie danych magistrala

Bardziej szczegółowo

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE WINDOWS 1 SO i SK/WIN 006 Wydajność systemu 2 SO i SK/WIN Najprostszym sposobem na poprawienie wydajności systemu, jeżeli dysponujemy zbyt małą ilością pamięci RAM

Bardziej szczegółowo

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów

Adresowanie obiektów. Adresowanie bitów. Adresowanie bajtów i słów. Adresowanie bajtów i słów. Adresowanie timerów i liczników. Adresowanie timerów Adresowanie obiektów Bit - stan pojedynczego sygnału - wejście lub wyjście dyskretne, bit pamięci Bajt - 8 bitów - wartość od -128 do +127 Słowo - 16 bitów - wartość od -32768 do 32767 -wejście lub wyjście

Bardziej szczegółowo

Mikroinformatyka. Tryb wirtualny

Mikroinformatyka. Tryb wirtualny Mikroinformatyka Tryb wirtualny Tryb wirtualny z ochroną Wprowadzony w 80286. Rozbudowany w 80386. - 4 GB pamięci fizycznej, - 64 TB przestrzeni wirtualnej, - pamięć podzielona na segmenty o rozmiarze

Bardziej szczegółowo

Systemy plików i zarządzanie pamięcią pomocniczą. Struktura pliku. Koncepcja pliku. Atrybuty pliku

Systemy plików i zarządzanie pamięcią pomocniczą. Struktura pliku. Koncepcja pliku. Atrybuty pliku Systemy plików i zarządzanie pamięcią pomocniczą Koncepcja pliku Metody dostępu Organizacja systemu plików Metody alokacji Struktura dysku Zarządzanie dyskiem Struktura pliku Prosta sekwencja słów lub

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

Podstawy Informatyki DMA - Układ bezpośredniego dostępu do pamięci

Podstawy Informatyki DMA - Układ bezpośredniego dostępu do pamięci Układ Podstawy Informatyki - Układ bezpośredniego dostępu do pamięci alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu Układ 1 Układ Wymiana informacji Idea Zasady pracy maszyny W Architektura

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

dr inż. Krzysztof Patan Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski k.patan@issi.uz.zgora.pl WSTĘP 1 Struktury danych oraz algorytmy do implementacji interfejsu systemu plików

Bardziej szczegółowo

Wykład 3. Procesy i wątki. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB

Wykład 3. Procesy i wątki. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB Wykład 3 Procesy i wątki Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB Pojęcie procesu Program = plik wykonywalny na dysku Proces = uruchomiony i wykonywany program w pamięci

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

Zasada działania pamięci RAM Pamięć operacyjna (robocza) komputera - zwana pamięcią RAM (ang. Random Access Memory - pamięć o swobodnym dostępie)

Zasada działania pamięci RAM Pamięć operacyjna (robocza) komputera - zwana pamięcią RAM (ang. Random Access Memory - pamięć o swobodnym dostępie) Zasada działania pamięci RAM Pamięć operacyjna (robocza) komputera - zwana pamięcią RAM (ang. Random Access Memory - pamięć o swobodnym dostępie) służy do przechowywania danych aktualnie przetwarzanych

Bardziej szczegółowo

Instytut Informatyki Uniwersytet Wrocławski. Dane w sieciach. (i inne historie) Marcin Bieńkowski

Instytut Informatyki Uniwersytet Wrocławski. Dane w sieciach. (i inne historie) Marcin Bieńkowski Dane w sieciach (i inne historie) Marcin Bieńkowski Jak przechowywać dane w sieciach (strony WWW, bazy danych, ) tak, żeby dowolne ciągi odwołań do (części) tych obiektów mogły być obsłużone małym kosztem?

Bardziej szczegółowo

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych.

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych. 1. Rodzaje pamięci używanej w programach Pamięć komputera, dostępna dla programu,

Bardziej szczegółowo

Windows XP Wiersz polecenia

Windows XP Wiersz polecenia Windows XP Wiersz polecenia, opracował Jan Biernat 1 z 7 Windows XP Wiersz polecenia DOS (ang. Disk Operating System) pierwszy przenośny (dyskowy) system operacyjny komputerów PC i mikrokomputerów lat

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

Instrukcja do laboratorium Systemów Operacyjnych. (semestr drugi)

Instrukcja do laboratorium Systemów Operacyjnych. (semestr drugi) Instrukcja do laboratorium Systemów Operacyjnych (semestr drugi) Ćwiczenie drugie (jedne zajęcia) Temat: Procesy i sygnały w Linuksie. Opracowanie: mgr in ż. Arkadiusz Chrobot Wprowadzenie 1. Budowa procesu

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

Systemy operacyjne. System operacyjny Linux - wstęp. Anna Wojak

Systemy operacyjne. System operacyjny Linux - wstęp. Anna Wojak Systemy operacyjne System operacyjny Linux - wstęp Anna Wojak 1 1 Wstęp Linux jest systemem z rodziny Unix. Pierwsza wersja systemu została opracowana w 1969 roku przez K.Thompsona i D.Ritchie Jest to

Bardziej szczegółowo

Wykład 5 Wybrane zagadnienia programowania w C++ (c.d.)

Wykład 5 Wybrane zagadnienia programowania w C++ (c.d.) Wykład 5 Wybrane zagadnienia programowania w C++ (c.d.) Kontenery - - wektor vector - - lista list - - kolejka queue - - stos stack Kontener asocjacyjny map 2016-01-08 Bazy danych-1 W5 1 Kontenery W programowaniu

Bardziej szczegółowo

Programowanie w asemblerze Środowiska 64-bitowe

Programowanie w asemblerze Środowiska 64-bitowe Programowanie w asemblerze Środowiska 64-bitowe 24 listopada 2015 Nieco historii najnowszej Intel wraz z HP rozpoczynaja pracę nad procesorem 64-bitowym z wykorzystaniem technologii VLIW. Powstaje procesor

Bardziej szczegółowo

Procesory rodziny x86. Dariusz Chaberski

Procesory rodziny x86. Dariusz Chaberski Procesory rodziny x86 Dariusz Chaberski 8086 produkowany od 1978 magistrala adresowa - 20 bitów (1 MB) magistrala danych - 16 bitów wielkość instrukcji - od 1 do 6 bajtów częstotliwośc pracy od 5 MHz (IBM

Bardziej szczegółowo

Pamięć. Podstawowe własności komputerowych systemów pamięciowych:

Pamięć. Podstawowe własności komputerowych systemów pamięciowych: Pamięć Podstawowe własności komputerowych systemów pamięciowych: Położenie: procesor, wewnętrzna (główna), zewnętrzna (pomocnicza); Pojemność: rozmiar słowa, liczba słów; Jednostka transferu: słowo, blok

Bardziej szczegółowo

Dynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy)

Dynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy) Rok akademicki 2012/2013, Wykład nr 2 2/25 Plan wykładu nr 2 Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia niestacjonarne I stopnia Rok akademicki 2012/2013

Bardziej szczegółowo

Wykład 10 Zarządzanie pamięcią

Wykład 10 Zarządzanie pamięcią Wykład 10 Zarządzanie pamięcią część pierwsza: pamięć jądra Wojciech Kwedlo, Systemy Operacyjne II -1- Wydział Informatyki PB Sprzeczności przy projektowaniu systemu zarządzania pamięcią Implementuj możliwie

Bardziej szczegółowo

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI Arytmetyka komputera Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka Opracował: Kamil Kowalski klasa III TI Spis treści 1. Jednostki informacyjne 2. Systemy liczbowe 2.1. System

Bardziej szczegółowo

Urządzenia zewnętrzne

Urządzenia zewnętrzne Urządzenia zewnętrzne SZYNA ADRESOWA SZYNA DANYCH SZYNA STEROWANIA ZEGAR PROCESOR PAMIĘC UKŁADY WE/WY Centralna jednostka przetw arzająca (CPU) DANE PROGRAMY WYNIKI... URZ. ZEWN. MO NITORY, DRUKARKI, CZYTNIKI,...

Bardziej szczegółowo

Wykład 7 Podręczna pamięć buforowa (ang. buffer cache) w systemie Linuks. Wojciech Kwedlo, Systemy Operacyjne II -1- Wydział Informatyki PB

Wykład 7 Podręczna pamięć buforowa (ang. buffer cache) w systemie Linuks. Wojciech Kwedlo, Systemy Operacyjne II -1- Wydział Informatyki PB Wykład 7 Podręczna pamięć buforowa (ang. buffer cache) w systemie Linuks Wojciech Kwedlo, Systemy Operacyjne II -1- Wydział Informatyki PB Wstęp Przyczyną wprowadzenia pamięci buforowej są ogromne różnice

Bardziej szczegółowo

Q E M U. http://www.qemu.com/

Q E M U. http://www.qemu.com/ http://www.qemu.com/ Emulator procesora Autor: Fabrice Bellard Obsługiwane platformy: Windows, Solaris, Linux, FreeBSD, Mac OS X Aktualna wersja: 0.9.0 Większość programu oparta na licencji LGPL, a sama

Bardziej szczegółowo

Podstawy programowania komputerów

Podstawy programowania komputerów Podstawy programowania komputerów Wykład 10: Sterowanie pamięcią w C Pamięć na stosie!każdy program napisany w języku C ma dostęp do dwóch obszarów pamięci - stosu i sterty, w których może być przechowywana

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

Architektura Systemów Komputerowych

Architektura Systemów Komputerowych Architektura Systemów Komputerowych Wykład 12: Zarządzanie zasobami komputera. Sytuacje wyjątkowe. Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Zarządzanie

Bardziej szczegółowo

1) Czym jest architektura systemu Windows 7 i jak się ją tworzy? 2) Jakie są poszczególne etapy uruchomienia systemu Windows 7?

1) Czym jest architektura systemu Windows 7 i jak się ją tworzy? 2) Jakie są poszczególne etapy uruchomienia systemu Windows 7? Temat. Architektura systemu Windows 7. 1) Czym jest architektura systemu Windows 7 i jak się ją tworzy? 2) Jakie są poszczególne etapy uruchomienia systemu Windows 7? 3) Do czego służy narzędzie BCD. Edit?

Bardziej szczegółowo

Programowanie niskopoziomowe

Programowanie niskopoziomowe Programowanie niskopoziomowe ASSEMBLER Teodora Dimitrova-Grekow http://aragorn.pb.bialystok.pl/~teodora/ Program ogólny Rok akademicki 2011/12 Systemy liczbowe, budowa komputera, procesory X86, organizacja

Bardziej szczegółowo

Rozproszona pamiêæ dzielona - 1

Rozproszona pamiêæ dzielona - 1 Rozproszona pamiêæ dzielona - 1 Wieloprocesor - wiele ma dostêp do wspólnej pamiêci g³ównej Wielokomputer - ka dy ma w³asn¹ pamiêæ g³ówn¹; nie ma wspó³dzielenia pamiêci Aspekt sprzêtowy: Skonstruowanie

Bardziej szczegółowo

Kompilator języka C na procesor 8051 RC51 implementacja

Kompilator języka C na procesor 8051 RC51 implementacja Kompilator języka C na procesor 8051 RC51 implementacja Implementowane typy danych bit 1 bit char lub char signed 8 bitów char unsigned 8 bitów int lub signed int 16 bitów unsigned int 16 bitów long lub

Bardziej szczegółowo

Lekcja 10. Uprawnienia. Dołączanie plików przy pomocy funkcji include() Sprawdzanie, czy plik istnieje przy pmocy funkcji file_exists()

Lekcja 10. Uprawnienia. Dołączanie plików przy pomocy funkcji include() Sprawdzanie, czy plik istnieje przy pmocy funkcji file_exists() Paweł Gmys PHP strona 1 Lekcja 10 Uprawnienia Aby skrypt PHP mógł odwołać się do pliku, musi mieć odpowiednie uprawnienia. Szczegóły są zależne od serwera. Najczęściej chyba skrypt ma uprawnienia takie,

Bardziej szczegółowo

Fizyczna organizacja danych w bazie danych

Fizyczna organizacja danych w bazie danych Fizyczna organizacja danych w bazie danych PJWSTK, SZB, Lech Banachowski Spis treści 1. Model fizyczny bazy danych 2. Zarządzanie miejscem na dysku 3. Zarządzanie buforami (w RAM) 4. Organizacja zapisu

Bardziej szczegółowo

Podstawowe wiadomości o systemach plików.

Podstawowe wiadomości o systemach plików. Podstawowe wiadomości o systemach plików. Komputery mogą przechowywać informacje w kilku różnych postaciach fizycznych na różnych nośnikach i urządzeniach np. w postaci zapisów na dysku twardym, płytce

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

Organizacja pamięci wewnętrznej komputerów

Organizacja pamięci wewnętrznej komputerów Organizacja pamięci wewnętrznej komputerów 1. Własności systemów pamięci 2. Hierarchia pamięci. 3. Półprzewodnikowa pamięć główna 4. Pamięć cache. 5. Pamięć wirtualna. Własności systemów pamięci Położenie

Bardziej szczegółowo

Modelowanie procesów współbieżnych

Modelowanie procesów współbieżnych Modelowanie procesów współbieżnych dr inż. Maciej Piotrowicz Katedra Mikroelektroniki i Technik Informatycznych PŁ piotrowi@dmcs.p.lodz.pl http://fiona.dmcs.pl/~piotrowi -> Modelowanie... Literatura M.

Bardziej szczegółowo

Monitor maszyn wirtualnych

Monitor maszyn wirtualnych Monitor maszyn wirtualnych Jest to oprogramowanie nadzorujące działanie systemów gości Może być to oddzielny software lub zintegrowany z systemem operacyjnym System gospodarza Oznaczany zazwyczaj jako

Bardziej szczegółowo

Systemy plików FAT, FAT32, NTFS

Systemy plików FAT, FAT32, NTFS Systemy plików FAT, FAT32, NTFS SYSTEM PLIKÓW System plików to sposób zapisu informacji na dyskach komputera. System plików jest ogólną strukturą, w której pliki są nazywane, przechowywane i organizowane.

Bardziej szczegółowo

Pomoc dla użytkowników systemu asix 6. www.asix.com.pl. Strategia buforowa

Pomoc dla użytkowników systemu asix 6. www.asix.com.pl. Strategia buforowa Pomoc dla użytkowników systemu asix 6 www.asix.com.pl Strategia buforowa Dok. Nr PLP6024 Wersja: 29-01-2010 ASKOM i asix to zastrzeżone znaki firmy ASKOM Sp. z o. o., Gliwice. Inne występujące w tekście

Bardziej szczegółowo

Pamięci półprzewodnikowe w oparciu o książkę : Nowoczesne pamięci. Ptc 2013/2014 13.12.2013

Pamięci półprzewodnikowe w oparciu o książkę : Nowoczesne pamięci. Ptc 2013/2014 13.12.2013 Pamięci półprzewodnikowe w oparciu o książkę : Nowoczesne pamięci półprzewodnikowe, Betty Prince, WNT Ptc 2013/2014 13.12.2013 Pamięci statyczne i dynamiczne Pamięci statyczne SRAM przechowywanie informacji

Bardziej szczegółowo

Adam Kotynia, Łukasz Kowalczyk

Adam Kotynia, Łukasz Kowalczyk Adam Kotynia, Łukasz Kowalczyk Dynamiczna alokacja pamięci Alokacja pamięci oraz dezalokacja pamięci jest to odpowiednio przydział i zwolnienie ciągłego obszaru pamięci. Po uruchomieniu, proces (program)

Bardziej szczegółowo

Wykład 14. Zagadnienia związane z systemem IO

Wykład 14. Zagadnienia związane z systemem IO Wykład 14 Zagadnienia związane z systemem IO Wprowadzenie Urządzenia I/O zróżnicowane ze względu na Zachowanie: wejście, wyjście, magazynowanie Partnera: człowiek lub maszyna Szybkość transferu: bajty

Bardziej szczegółowo

Poniższe funkcje opisane są w 2 i 3 części pomocy systemowej.

Poniższe funkcje opisane są w 2 i 3 części pomocy systemowej. Procesy Proces (zwany też zadaniem) jest jednostką aktywną, kontrolowaną przez system operacyjny i związaną z wykonywanym programem. Proces ma przydzielone zasoby typu pamięć (segment kodu, segment danych,

Bardziej szczegółowo

architektura komputerów w. 7 Cache

architektura komputerów w. 7 Cache architektura komputerów w. 7 Cache Pamięci cache - zasada lokalności Program używa danych i rozkazów, które były niedawno używane - temporal locality kody rozkazów pętle programowe struktury danych zmienne

Bardziej szczegółowo

2014-06-30 21:11 BD_1_W9

2014-06-30 21:11 BD_1_W9 Wykład 9 Niezawodność bazy danych Odtwarzanie spójnego stanu bazy Odtwarzanie stanu bazy na podstawie dziennika transakcji Odtwarzanie nośników 1 Bardzo ważną funkcją systemu zarządzania bazą danych jest

Bardziej szczegółowo

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Zadania systemu operacyjnego. Abstrakcyjne składniki systemu. System komputerowy

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Zadania systemu operacyjnego. Abstrakcyjne składniki systemu. System komputerowy Systemy operacyjne Systemy operacyjne Dr inż. Ignacy Pardyka Literatura Siberschatz A. i inn. Podstawy systemów operacyjnych, WNT, Warszawa Skorupski A. Podstawy budowy i działania komputerów, WKiŁ, Warszawa

Bardziej szczegółowo

przypisanie różnym strukturom programowym tych samych obszarów pamięci fizycznej

przypisanie różnym strukturom programowym tych samych obszarów pamięci fizycznej 1 Arytmetyka 1.1 Reprezentacja danych 1.1.1 Kod znak moduł Intuicyjną metodą reprezentacji liczb całkowitych jest osobne kodowanie znaku + albo - i wartości bezwzględnej liczby. Kod 0... reprezentuje liczbę

Bardziej szczegółowo

Podstawowe zadanie komputera to wykonywanie programu Program składa się z rozkazów przechowywanych w pamięci Rozkazy są przetwarzane w dwu krokach:

Podstawowe zadanie komputera to wykonywanie programu Program składa się z rozkazów przechowywanych w pamięci Rozkazy są przetwarzane w dwu krokach: Rok akademicki 2012/2013, Wykład nr 6 2/46 Plan wykładu nr 6 Informatyka 1 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia niestacjonarne I stopnia Rok akademicki 2012/2013

Bardziej szczegółowo

Oprogramowanie systemowe Dariusz Wawrzyniak

Oprogramowanie systemowe Dariusz Wawrzyniak Oprogramowanie systemowe Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 2 (CW, pok. nr 5) 60-965 Poznań Dariusz.Wawrzyniak@cs.put.poznan.pl www.cs.put.poznan.pl/dwawrzyniak

Bardziej szczegółowo

Architektura Systemów Komputerowych

Architektura Systemów Komputerowych Architektura Systemów Komputerowych Wykład 7: Potokowe jednostki wykonawcze Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Budowa potoku Problemy synchronizacji

Bardziej szczegółowo

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O

Budowa komputera. Magistrala. Procesor Pamięć Układy I/O Budowa komputera Magistrala Procesor Pamięć Układy I/O 1 Procesor to CPU (Central Processing Unit) centralny układ elektroniczny realizujący przetwarzanie informacji Zmiana stanu tranzystorów wewnątrz

Bardziej szczegółowo