Systemy operacyjne Zarządzanie pamięcią

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

Download "Systemy operacyjne Zarządzanie pamięcią"

Transkrypt

1 Systemy operacyjne Zarządzanie pamięcią [] Zarządzanie pamięcią Czego programiści oczekują od pamięci systemu: by była duża, by była szybka, by była nieulotna. Hierarchia pamięci: mała szybka droga pamięć (np. cache), średnia, średnio szybka, umiarkowanie droga, pamięć (np. pamięć operacyjna), ogromna, wolna i tania pamięć (np. pamięć dyskowa/ taśmowa). Zarządzanie pamięcią (ang. Memory Management, MM) na poziomie systemu operacyjnego uwarunkowane architekturą systemu. [] Organizacja zarządzania pamięcią Na organizację zarządzania mają wpływ: pole adresowe argumentów rozkazu, miejsce pola adresacji w słowie, sprzętowe możliwości przekształcania pola adresacji. W zależności od długości pola adresacji przestrzeń adresowa może pokrywać się z zakresem adresów pamięci operacyjnej, może być większa lub mniejsza. [] Funkcje systemu operacyjnego Funkcje systemu operacyjnego w kontekście zarządzania pamięcią: zagospodarowanie przestrzeni adresowej poprzez wykorzystanie mechanizmów translacji adresów, ochrona zawartości pamięci,

2 organizacja dostępu do obszarów dzielonych, efektywna organizacja pamięci operacyjnej. Wielkość pamięci operacyjnej przeznaczonej na kod systemu operacyjnego jest zazwyczaj stała, natomiast bardziej złożony jest przydział pamięci procesom użytkowym. [5] Metody przydziału pamięci Metody przydziału pamięci operacyjnej procesom użytkowym:. brak podziału, wolna przestrzeń adresowa w danje chwili przydzielana jednemu procesowi użytkowemu. Wieloprogramowanie można realizować przez wymiatanie (ang. swapping),. podział pamięci, wolna przestrzeń adresowa podzielona na części przydzielane pojedynczym procesom użytkowym,. wykorzystanie pamięci wirtualnej, istnieje jedna lub wiele wirtualnych przestrzeni adresowych przydzielanych procesom użytkowym, a mających w niewielkim stopniu pokrycie w pamięci operacyjnej. [6] Brak podziału Trzy metody prostej organizacji pamięci dla systemu operacyjnego i jednego procesu uzytkownika. User program Operating system in RAM xfff Operating system in ROM Device drivers in ROM User program User program Operating system in RAM (a) (b) (c) [7] Podział pamięci Cele podziału pamięci między procesy:

3 lepsze wykorzystanie elementów sprzętowych systemu, głównie procesora i pamięci, umożliwienie szybkiego przełączania procesora z pracy z jednym procesem na pracę z innym procesem. Można wyróżnić następujące typy systemów z podziałem pamięci: systemy z podziałem statycznym. Podział statyczny dzieli pamięć na stałe partycje o różnej długości lub na bloki o stałej długości zwane ramami (ang. frame). systemy z podziałem dynamicznym. Realizacja z wykorzystaniem struktur opisujących wolne bloki pamięci o różnych długościach oraz mechanizm wymiatania. [8] Podział statyczny na stałe partycje Multiple input queues Partition 8K 7K Partition Partition Single input queue Partition K Partition Partition Operating system (a) K K Partition Partition Operating system (b) a. partycje o stałym rozmiarze z osobnymi kolejkami wejściowymi, b. partycje o stałym rozmiarze z jedną kolejką wejściową. [9] Podział dynamiczny Do realizacji dynamicznego podziału pamięci można stosować następujące hipotetyczne funkcje: przydziel( rozmiar, adres )

4 wybranie spośród bloków wolnych bloku pokrywającego zapotrzebowanie, efektem jest zwrócenie adresu wybranego bloku i usunięcie przydzielonego bloku ze zbioru bloków wolnych, malloc( size ), calloc( n, size ), realloc( ptr, size ). zwolnij( adres ) - dołączenie bloku zajętego do zbioru wolnych bloków, np. free( ptr ), informuj() - zwróc rozmiar aktualnie największego wolnego bloku, np. msize(). [] Zarządzanie w kontekście wieloprogramowania Dwa zasadnicze aspekty: obsługa relokacji, nie ma pewności gdzie dokładnie program zostanie załadowany do pamięci, wykorzystanie rejestrów bazowych i rejestrów ograniczających. wzajemna ochrona pamięci. [] Modelowanie wieloprogramowania CPU utilization (in percent) 8 6 % I/O wait 5% I/O wait 8% I/O wait Degree of multiprogramming Wykorzystanie procesora w funkcji liczby procesów w pamięci. [] Analiza wydajności wieloprogramowania

5 Job Arrival time : : :5 : CPU minutes needed CPU idle CPU busy CPU/process # Processes (a) (b)..9 Job starts Job finishes Time (relative to job 's arrival) (c) a. czas nadejścia i wymagania poszczególnych prac, b. wykorzystanie procesora dla procesów z 8% I/O, c. sekwencja zdarzeń z pokazanym w minutach czasem, jaki dany proces otrzymuje w podanym interwale. [] Wymiatanie (ang. swapping) A Operating system (a) system B A Operating (b) C Time system C B B A Operating (c) (d) Operating system C B D Operating system (e) C D Operating system (f) C A D Operating system (g) Zmiany przydziału pamięci wraz z pojawianiem się i znikaniem procesów z pamięci. Obszary zakreskowane są niewykorzystane. [] Fragmentacja Przy wyborze algorytmu alokacji należy uwzględnić następujące czynniki: prędkość, 5

6 prostotę, efekt fragmentacji. Fragmentacja wewnętrzna - zjawisko tworzenia niewykorzystywalnych, choć przydzielonych w ramach pewnej struktury (partycja, ramka), obszarów pamięci. Fragmentacja zewnętrzna - zjawisko tworzenia niewykorzystywalnych, nieprzydzielonych obszarów pamięci, zazwyczaj spowodowane niedoskonałością działania organizacji alokacji pamięci procesom uzytkowym. [5] Algorytmy alokacji Zadaniem algorytmu alokacji jest wybranie wolnego bloku w celu przydzielenia procesowi pamięci. Wybrane algorytmy alokacji: algorytm pierwszej zgodności (ang. First Fit), wybór pierwszego pasującego ze zbioru/ listy, algorytm najlepszej zgodności (ang. Best Fit), wybór najmniejszego wystarczającego bloku ze zbioru/ listy, algorytm najgorszej zgodności (ang. Worst Fit), wybór największego ze zbioru/ listy, algorytm bliźniaków (ang. Buddies), podział pamięci (o długości k ) na dwa równe bliźniacze bloki; połowienie jednego aż do uzyskania bloku o minimalnej długości spełniającego zapotrzebowanie. [6] Przeciwdziałanie fragmentacji W systemie może być zdefiniowana wartość n będąca minimalna dopuszczalną wartością niejawnie przydzielanego bloku, co ułatwia zarządzanie i zwiększa efektywność, ale może prowadzić do zjawiska fragmentacji. Efektom fragmentacji można przeciwdziałać poprzez: zwalnianie i scalanie, zagęszczanie i relokacje, 6

7 mechanizm stronicowania. [7] Zarządzanie pamięcią - mapy bitowe i listy A B C D E 8 6 (a) (b) Hole P 5 H 5 P 8 6 P H 8 P 6 P 6 H 9 X Starts at 8 Length (c) Process a. fragment pamięci z pięcioma procesami i trzema dziurami, b. odpowiadająca mapa bitowa, c. ta sama informacja w postaci listy. [8] Problem dynamicznej alokacji A B Actually in use B-Data B-Program Room for growth B-Stack Room for growth Room for growth Actually in use A-Stack A-Data A-Program Room for growth Operating system Operating system (a) (b) a. alokacja pamięci dla rosnącego segmentu danych, b. alokacja pamięci dla rosnącego stosu i rosnącego segmentu danych. 7

8 [9] Pamięć wirtualna Pamięć wirtualna system pamięci złożony z co najmniej dwóch rodzajów pamięci: małej i szybkiej (np. pamięci operacyjnej) oraz dużej, lecz wolnej (np. pamięci pomocniczej), a także z dodatkowego sprzętu i oprogramowania umożliwiającego automatyczne przenoszenie fragmentów pamięci z jednego rodzaju pamięci do drugiego. Pamięć wirtualna ma być prawie tak szybka jak szybsza z pamięci i prawie tak duża jak większa z pamięci. Metody realizacji pamięci wirtualnej: stronicowanie, segmentacja, stronicowanie z segmentacją. [] Rola jednostki zarządzającej pamięcią CPU package The CPU sends virtual addresses to the MMU CPU Memory management unit Memory Disk controller Bus The MMU sends physical addresses to the memory MMU (ang. Memory Management Unit) może być zintegrowane z procesorem (tak zazwyczaj teraz), ale może być też niezależne (tak zazwyczaj było dawniej). [] Stronicowanie Stronicowanie bazuje na stałym podziale pamięci. Jednostki podziału: ramy, ramki (ang. frames) dla pamięci fizycznej, 8

9 strony (ang. pages) dla wirtualnej przestrzeni adresowej procesu. Zadania mechanizmu stronicowania: odwzorowywanie adresów wirtualnych w adresy rzeczywiste:. określenie, do której strony odnosi się adres w programie,. znalezienie ramy, którą aktualnie zajmuje dana strona. przesyłanie - w zależności od potrzeby - stron z pamięci pomocniczej do pamięci operacyjnej oraz odsyłanie już nie używanych stron z powrotem. [] Przykład translacji 9

10 Virtual address space 6K-6K 56K-6K 5K-56K 8K-5K K-8K K-K 6K-K K-6K 8K-K K-8K K-K 6K-K K-6K 8K-K K-8K K-K X X X X 7 X 5 X X X 6 Virtual page Physical memory address 8K-K K-8K K-K 6K-K K-6K 8K-K K-8K K-K frame [] Realizacja stronicowania Korzystanie z pamięci wirtualnej nie stawia żadnych dodatkowych wymagań użyt-

11 kownikowi. Przydział pamięci realizowany jest systemowo z wykorzystaniem tablic stron i/ lub tablic ram. Zapewnienie własności przezroczystości wymaga: obsługi przez system przerwania określanego jako chybienie strony (ang. page fault), sygnalizującego brak w pamięci strony, do której usiłowano się odwołać. obsługa chybienia ma zgodnie z przyjętym algorytmem wymiany stron przydzielić ramę i ściągnąć stronę z pamięci pomocniczej, w celu minimalizacji strat wydajności odwołań do pamięci wykorzystanie pamięci asocjacyjnych do translacji adresów. [] Przykładowa tablica stron Wewnętrzne operacje MM z szesnastoma stronami po kb. table Virtual page = is used as an index into the page table Present/ absent bit -bit offset copied directly from input to output Outgoing physical address (58) Incoming virtual address (896) Należy uwzględniąć następujące fakty:

12 tablica stron może być bardzo duża, odwzorowywanie musi być bardzo szybkie. [5] Typowy element tablicy stron Caching disabled Modified Present/absent frame number Referenced Protection [6] Wielopoziomowe tablice stron Second-level page tables table for the top M of memory Top-level page table Bits PT PT Offset (a) To pages (b)

13 Zarządzanie pamięcią [7] TLB (ang. Translation Lookaside Buffer) Valid Virtual page Modified Protection frame RW R X 8 RW 9 9 RW 6 9 R X 5 R X 5 86 RW 86 RW 75 Główny cel: minimalizacja liczby odwołań do pamięci w trakcie stronicowania. Aspekty dotyczące TLB: koszt przełączania kontekstu, koszt wielopoziomowści tablic stron, realizacja: sprzętowa/ programowa. [8] Odwrócone tablice stron Traditional page table with an entry for each of the 5 pages 5-56-MB physical memory has 6 -KB page frames Hash table Indexed by virtual page Indexed by hash on virtual page Virtual page frame [9] Optymalny rozmiar strony Dobór rozmiaru strony ma wpływ na fragmentację wewnętrzną oraz rozmiar tablicy stron. Niech:

14 s przeciętny rozmiar procesu w bajtach, p rozmiar strony, e rozmiar pozycji w tablicy stron. wtedy nadmiar=s e/p+ p/ Wyszukiwanie ekstremum, pochodna względem p przyrównana do : se/p + /= Zatem optymalny rozmiar strony wynosi p= se [] Obsługa chybienia Obsługa chybienia przebiega następująco:. wskazanie ramy dla żądanej strony,. zwolnienie wskazanej ramy,. ściągnięcie żądanej strony w obszar wskazanej ramy,. aktualizacja tablicy ram. Wskazaniem ramy, w przypadku braku ram wolnych, zajmuje się algorytm wymiany stron (ang. page replacement algorithm). Główne zadanie: usunięcie z pamięci operacyjnej strony najmniej potrzebnej w przyszłości, tzn, strony, do której odwołanie nastąpi najpóźniej bądź w ogóle nie nastąpi. [] Algorytmy wymiany stron Zestawienie wybranych algorytmów wymiany stron: algorytm optymalny, algorytm NRU (ang. not recently used) (bity R i M), algorytm FIFO, algorytm drugiej szansy, algorytm zegarowy, algorytm LRU (ang. least recently used).

15 [] Algorytm drugiej szansy loaded first A B 7 C 8 D E F 5 G 8 H Most recently loaded page (a) B 7 C 8 D E F 5 G 8 H A A is treated like a newly loaded page a. strony sortowane w porządku FIFO, (b) b. nowa postć listy, gdy bład strony wystąpił w momencie i A miał ustawiony bit R. [] Algorytm zegarowy wymiany stron L A B J K I C E D When a page fault occurs, the page the hand is pointing to is inspected. The action taken depends on the R bit: R = : Evict the page R = : Clear R and advance hand H G F [] Sprzętowy algorytm LRU (a) (b) (c) (d) (e) (f) (g) (h) (i) (j) 5

16 Do stron odwoływano się w następującej kolejności:,,,,,,,,,. [5] Programowa symulacja algorytmu LRU (II) R bits for pages -5, clock tick R bits for pages -5, clock tick R bits for pages -5, clock tick R bits for pages -5, clock tick R bits for pages -5, clock tick 5 (a) (b) (c) (d) (e) Algorytm postarzania, pokazano sześć stron w okresie pięciu tyknięć zegara. [6] Zbiór roboczy stron Zbiorem roboczym nazywamy zbiór stron wykorzystywanych w trakcie k ostatnich odwołań do pamięci. Funkcja w(k, t) odpowiada mocy zbioru w chwili t. w(k,t) k [7] Algorytm zbioru roboczego 6

17 Current virtual time Information about one page 8 R (Referenced) bit Time of last use referenced during this tick not referenced during this tick 98 6 Scan all pages examining R bit: if (R == ) set time of last use to current virtual time if (R == and age > τ) remove this page if (R == and age τ) remember the smallest time table [8] Zegarowy algorytm zbioru roboczego 7

18 Current virtual time (a) Time of last use R bit (b) (c) (d) New page [9] Porównanie algorytmów wymiany stron Algorytm Optymalny NRU FIFO Drugiej szansy Zegarowy LRU NFU Postarzanie Zbiór roboczy WSClock Komentarz nieimplementowalny, punkt odniesienia surowy może wymiatać istotne strony duże ulepszenie FIFO realistyczny dobry, ale trudny do implementacji dość ogólna aproksymacja LRU efektywny z dobrą aproksymacją LRU dość kosztowny w implementacji dobry efektywny algorytm 8

19 [] Anomalia Belady ego Youngest page Oldest page All pages frames initially empty P P P P P P P P P 9 faults (a) Youngest page Oldest page P P P P P P P P P P (b) faults a. algorytm FIFO wymiany stron na maszynie z trzema ramkami, b. algorytm FIFO wymiany stron na maszynie z czteroma ramkami. więcej błedów strony przy większej liczbie ramek. [] Strony współdzielone Process table Program Data Data tables 9

20 [] Obsługa błędu strony MOVE.L #6(A), (A) 6 Bits MOVE 6 } } } Opcode First operand Second operand instrukcja wywołująca błąd strony, odkąd zacząć powtarzanie instrukcji? [] Organizacja przestrzeni wymiany Main memory Disk Main memory Disk s s 6 Swap area Swap area table table Disk map (a) (b) a. stronicowanie do statycznego obszaru wymiany, b. dynamiczny zrzut stron. [] Rozdzielenie strategii i mechanizmu realizacji Main memory. Request page Disk User space User process. Needed page External pager. arrives. fault 5. Here is page Kernel space Fault handler 6. Map page in MMU handler

21 obsługa błędu strony przez zewnętrzny program typu pager. [5] Pojedyncza przestrzeń adresowa Virtual address space Call stack Free Address space allocated to the parse tree Parse tree Space currently being used by the parse tree Constant table Source text Symbol table Symbol table has bumped into the source text table Niewygody pojedynczej przestrzeni adresowej na przykładzie mapy pamięci translatora/ kompilatora. [6] Cechy segmentacji celem segmentacji organizacji przestrzeni adresowej w sposób odzwierciedlający logiczny podział informacji, przy organizacji przestrzeni wirtualnej możliwość korzystania z dużej liczby segmentów z nadawanymi przez programistę nazwami, przestrzeń adresowa dwuwymiarowa z racji identyfikacji adresu poprzez parę nazwa segmentu + adres wewnątrz segmentu, odzworowanie adresu organizowane zazwyczaj poprzez osobną dla każdego procesu tablicę segmentów, elementy tablicy segmentów określane mianem deskryptorów segmentu,

22 każdy deskryptor zawiera adres bazy oraz rozmiar segmentu. [7] Rozmiary segmentów K 6K 6K K 8K K Symbol table K 8K K Source text K 8K K Parse tree K 8K K Call stack K Segment K Segment K Constants Segment K Segment K Segment Segmentacja pamięci umożliwia każdej tablicy niezależną zmianę rozmiaru. [8] Stronicowanie a segmentacja (I) celem segmentacji logiczny podział pamięci operacyjnej, celem stronicowania fizyczny podział pamięci, stronicowanie mechanizmem niskiego poziomu, niewidocznym dla programisty; segmentacja mechanizmem wyższego poziomu, widocznym dla programisty, rozmiar strony stały, ustalona, wynikający z architektury, rozmiar segmentu dowolny określany przez programistę, zarówno w przypadku zastosowania stronicowania jak i segmentacji całkowita przestrzeń adresowa może być większa od dostępnje pamięci fizycznej, segmentacja umożliwia lepszą ochronę poszczególnych elementów procesu poprzez możliwość rozróżniania segmentów logicznie grupujących elementy procesów, [9] Stronicowanie a segmentacja (II)

23 segmentacja umożliwia łatwiejsze zarządzanie elementami procesu o zmiennym rozmiarze (np. stos, sterta), segmentacja udostępnia współdzielenie procedur między procesami (np. segmenty dzielone, a przez to biblioteki dzielone). główny cel wprowadzenia stronicowania: uzyskanie większej pamięci adresowej bez konieczności zakupu dodatkowej pamięci fizycznej, główny cel wprowadzenia segmentacji: umożliwienie rozdzielenia programów i danych na logicznie niezależne przestrzenie adresowe z ułatwieniem współdzielenia wybranych obszarów i lepszej ochrony. segmentacja - może zachodzić fagmentacja zewnętrzna, stronicowanie - może zachodzić fragmentacja wewnętrzna. [5] Implementacja czystej segmentacji Segment (7K) Segment (8K) Segment (5K) Segment (8K) Segment (K) Segment (7K) Segment (8K) Segment (5K) (K) Segment 7 (5K) Segment (K) (K) Segment 5 (K) Segment (8K) Segment (5K) (K) Segment 7 (5K) Segment (K) Segment 5 (K) Segment 6 (K) Segment (5K) Segment 7 (5K) Segment (K) (a) (b) (c) (d) (e) (K) (K) (K) (K) Segment 5 (K) Segment 6 (K) Segment (5K) Segment 7 (5K) Segment (K) zjawisko fragmentacji zewnętrznej (ang. external fragmentation, checkerboarding), zbijanie/ gromadzenie segmentów metodą przeciwdziałania fragmentacji (rys. e), wykorzystanie stronicowania metodą przeciwdziałania fragmentacji. [5] MULTICS: Segmentacja ze stronicowaniem komputery Honeywell 6 i następne,

24 maksymalnie możliwych 8 segmentów, z których każdy mógł mieć maksymalnie bitowych słów, stronicowane segmenty, dla każdego procesu tablica segmentów, sama tablica segmentów również stronicowanym segmentem, fizyczne adresy -bitowe, strony rozmieszczane z dopasowaniem do 6 ( 6 ) bajtów, zatem 8 bitów na adres tablicy stron, standardowy rozmiar stron słów, część wewnętrznych małych segmentów systemu niestronicowana bądź ze stronami po 6 słowa, ewentualny adres segmentu w pamięci pomocniczej w osobnej tablicy wykorzystywanej przez program obsługi chybienia strony. [5] MULTICS: Pamięć wirtualna 6 bits entry entry Segment 6 descriptor entry Segment 5 descriptor table for segment Segment descriptor Segment descriptor Segment descriptor Segment descriptor entry Pamięć wirtualna systemu Multics Segment descriptor Descriptor segment (a) entry entry Main memory address of the page table table for segment a. segment deskryptorów ze wskazaniami do tablic stron, 8 9 Segment length (in pages) size: = words = 6 words = segment is paged = segment is not paged b. deskryptor segmentu. Miscellaneous bits Protection bits (b) [5] MULTICS: Wyznaczanie adresu fizycznego Address within the segment Segment number number Offset within the page 8 6

25 -bitowy adres wirtualny w systemie Multics. Word Descriptor frame Segment number Descriptor segment number table Offset Translacja dwuczęściowego adresu wirtualnego na adres w pamięci głównej. Dla przejrzystości pominięto fakt, że segment deskryptorów jest również stronicowany. [5] MULTICS: bufory TLB Comparison field Segment number Virtual page frame Protection Age Is this entry used? 7 Read/write 6 Read only Read/write Execute only 7 Execute only 9 Uproszczona wersja buforów TLB. 6 pozycji, dla których numer segmentu i strony są porównywane równolegle. W rzeczywistości ze względu na zróżnicowanie rozmiaru stron struktura jest bardziej złożona. [55] Intel Pentium: Segmentacja ze stronicowaniem Multics: 56K niezależnych segmentów, każdy do 6K 6-bitowych słów, Pentium: 6K niezależnych segmentów, każdy do G -bitowych słów, 5

26 pojedyncza GDT (ang. Global Descriptor Table) w systemie, LDT (ang. Local Descriptor Table) dla każdego procesu. [56] Intel Pentium: Selektor i deskryptor segmentu Bits Selektor w Pentium Index = GDT/ = LDT Privilege level (-) : 6-Bit segment : -Bit segment : Li is in bytes : Li is in pages : Segment is absent from memory : Segment is present in memory Privilege level (-) : System : Application Segment type and protection Base - G D Limit P DPL Type Base S Base -5 Limit -5 Bits Deskryptor segmentu kodu w Pentium Relative address [57] Intel Pentium: Wyznaczanie adresu fizycznego (I) Selector Offset Descriptor Base address Limit Other fields + -Bit linear address jeżeli stronicowanie wyłączone (czysta segmentacja), uzyskany adres to adres fizyczny, przy włączonym stronicowaniu interpretacja uzyskanego adresu jako wirtualnego, wykorzystanie buforów TLB, 6

27 [58] Intel Pentium: Wyznaczanie adresu fizycznego (II) Bits Linear address Dir Offset (a) directory table frame Word selected Entries Dir Offset Directory entry points to page table (b) table entry points to word -bitowa logiczna przestrzeń adresowa, strony o rozmiarze KB, każdy proces posiada katalog stron z pozycjami, z których każda wskazuje na tablicę stron również z pozycjami. możliwa pojedyncza, stronicowana, -bitowa przestrzeń adresowa na potrzeby aplikacji. [59] Intel Pentium: Ochrona User programs Shared libraries Typical uses of the levels System calls Kernel Level cztery poziomy ochrony, można odwoływać się do danych segmentów swojego i wyższych poziomów, 7

28 aby odwołać się do procedury innego niż własny poziomu CALL ma jako argument nie adres ale selektor do tzw. call gate. 8

Organizacja zarządzania pamięcią. Systemy operacyjne / Zarządzanie pamięcią str.4/59. Zarządzanie pamięcią. Funkcje systemu operacyjnego

Organizacja zarządzania pamięcią. Systemy operacyjne / Zarządzanie pamięcią str.4/59. Zarządzanie pamięcią. Funkcje systemu operacyjnego Organizacja zarządzania pamięcią Systemy Operacyjne Zarządzanie pamięcią dr inż. Tomasz Jordan Kruk T.Kruk@ia.pw.edu.pl Instytut utomatyki i Informatyki Stosowanej Politechnika Warszawska Na organizację

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

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

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

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

Bardziej szczegółowo

Zarządzanie pamięcią operacyjną

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

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

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

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

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

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

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

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

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

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

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

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

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

Współpraca procesora ColdFire z pamięcią

Współpraca procesora ColdFire z pamięcią Współpraca procesora ColdFire z pamięcią 1 Współpraca procesora z pamięcią zewnętrzną (1) ROM Magistrala adresowa Pamięć programu Magistrala danych Sygnały sterujące CS, OE Mikroprocesor FLASH, SRAM, DRAM

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386

UTK ARCHITEKTURA PROCESORÓW 80386/ Budowa procesora Struktura wewnętrzna logiczna procesora 80386 Budowa procesora 80386 Struktura wewnętrzna logiczna procesora 80386 Pierwszy prawdziwy procesor 32-bitowy. Zawiera wewnętrzne 32-bitowe rejestry (omówione zostaną w modułach następnych), pozwalające przetwarzać

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

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

Mikroinformatyka. Wielozadaniowość

Mikroinformatyka. Wielozadaniowość Mikroinformatyka Wielozadaniowość Zadanie Tryb chroniony przynajmniej jedno zadanie (task). Segment stanu zadania TSS (Task State Segment). Przestrzeń zadania (Execution Space). - segment kodu, - segment

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

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

WOJSKOWA AKADEMIA TECHNICZNA

WOJSKOWA AKADEMIA TECHNICZNA WOJSKOWA AKADEMIA TECHNICZNA SYSTEMY WBUDOWANE Prowadzący: Paweł Janicki Autor sprawozdania: Pol Grzegorz Grupa szkoleniowa: I7X3S1 Numer ćwiczenia: Data oddania: 14.06.2009r. 1. Treść zadania Dokonać

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

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

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas)

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas) Hosting WWW Bezpieczeństwo hostingu WWW Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas) System IT ogólna budowa Historia wirtualizacji Pierwsze komputery lata 40 i 50 Komputer bezpośrednio wykonuje program

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

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

Zaawansowane programowanie w języku C++ Zarządzanie pamięcią w C++

Zaawansowane programowanie w języku C++ Zarządzanie pamięcią w C++ Zaawansowane programowanie w języku C++ Zarządzanie pamięcią w C++ Prezentacja jest współfinansowana przez Unię Europejską w ramach Europejskiego Funduszu Społecznego w projekcie pt. Innowacyjna dydaktyka

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

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

Systemy operacyjne system przerwań

Systemy operacyjne system przerwań system przerwań przerwanie: procesor zawiesza wykonanie bieżącego zadania i przechodzi do obsługi przerwania przerwania: maskowalne i niemaskowalne wektor przerwań adres (tablica adresów) kodu obsługi

Bardziej szczegółowo

Informatyka 2. Wykład nr 10 ( ) Plan wykładu nr 10. Politechnika Białostocka. - Wydział Elektryczny. ext2. ext2. dr inŝ.

Informatyka 2. Wykład nr 10 ( ) Plan wykładu nr 10. Politechnika Białostocka. - Wydział Elektryczny. ext2. ext2. dr inŝ. Rok akademicki 2008/2009, Wykład nr 10 2/32 Plan wykładu nr 10 Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia niestacjonarne I stopnia Rok akademicki

Bardziej szczegółowo

Mikroprocesory rodziny INTEL 80x86

Mikroprocesory rodziny INTEL 80x86 Mikroprocesory rodziny INTEL 80x86 Podstawowe wła ciwo ci procesora PENTIUM Rodzina procesorów INTEL 80x86 obejmuje mikroprocesory Intel 8086, 8088, 80286, 80386, 80486 oraz mikroprocesory PENTIUM. Wprowadzając

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

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

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

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

Bardziej szczegółowo

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

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

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

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

J. Ułasiewicz Komputerowe systemy sterowania 1. 1 Architektura PC Ogólna struktura systemu jednoprocesorowego

J. Ułasiewicz Komputerowe systemy sterowania 1. 1 Architektura PC Ogólna struktura systemu jednoprocesorowego J. Ułasiewicz Komputerowe systemy sterowania 1 1 Architektura PC 1.1. Ogólna struktura systemu jednoprocesorowego Już systemy jednoprocesorowe mogą być środowiskiem, w którym wykonywane jest wiele programów

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

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

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

DYNAMICZNE PRZYDZIELANIE PAMIECI

DYNAMICZNE PRZYDZIELANIE PAMIECI DYNAMICZNE PRZYDZIELANIE PAMIECI Pamięć komputera, dostępna dla programu, dzieli się na cztery obszary: kod programu, dane statyczne ( np. stałe i zmienne globalne programu), dane automatyczne zmienne

Bardziej szczegółowo

Architektura systemów informatycznych

Architektura systemów informatycznych Architektura systemów informatycznych Architektura i organizacja pamięci Literatura: Hyde R. 2005, Zrozumieć komputer, Profesjonalne programowanie Część 1, Helion, Gliwice Podstawowe elementy systemu komputerowego

Bardziej szczegółowo

1.1 Definicja procesu

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

Bardziej szczegółowo

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

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

Zarz¹dzanie pamiêci¹

Zarz¹dzanie pamiêci¹ Zarz¹dzanie pamiêci¹ Wykonywaæ mo na jedynie program umieszczony w pamiêci g³ównej. Wi¹zanie instrukcji i danych z ami w pamiêci mo e siê odbywaæ w czasie: kompilacji: jeœli s¹ znane a priori y w pamiêci,

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

Wybrane zagadnienia elektroniki współczesnej

Wybrane zagadnienia elektroniki współczesnej Wybrane zagadnienia elektroniki współczesnej y pracy, Marika Kuczyńska Fizyka Techniczna IV rok 20-03-2013, AGH prezentacji y pracy 1 2 y pracy 3 4 5 6 Jednostka wykonawcza, instrukcje (Marika) Rodzina

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

Mikroinformatyka. Mechanizmy ochrony pamięci

Mikroinformatyka. Mechanizmy ochrony pamięci Mikroinformatyka Mechanizmy ochrony pamięci Mechanizmy ochrony pamięci Ochrona na poziomie segmentów: - limit - typ segmentu - selektor zerowy - poziom uprzywilejowania Ochrona na poziomie stronicowania:

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

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

WINDOWS NT. Diagram warstw systemu Windows NT

WINDOWS NT. Diagram warstw systemu Windows NT WINDOWS NT Diagram warstw systemu Windows NT logon process OS/2 application Win16 application Win32 application MSDOS application POSIX application security subsystem OS/2 subsystem Win16 VDM MSDOS VDM

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

Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC

Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC Architektura Systemów Komputerowych Rozwój architektury komputerów klasy PC 1 1978: Intel 8086 29tys. tranzystorów, 16-bitowy, współpracował z koprocesorem 8087, posiadał 16-bitową szynę danych (lub ośmiobitową

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

Opracowanie zadań testowych i otwartych z kolokwiów i egzaminów z przedmiotu SOI, prowadzący WBD

Opracowanie zadań testowych i otwartych z kolokwiów i egzaminów z przedmiotu SOI, prowadzący WBD Opracowanie zadań testowych i otwartych z kolokwiów i egzaminów z przedmiotu SOI, prowadzący WBD opracowanie z dnia 28.09.2009r. Autor: exploy@o2.pl Znaczna część pytań pochodzi ze znanych już opracowań,

Bardziej szczegółowo

Podstawowe zagadnienia

Podstawowe zagadnienia SWB - Systemy operacyjne w systemach wbudowanych - wykład 14 asz 1 Podstawowe zagadnienia System operacyjny System czasu rzeczywistego Systemy wbudowane a system operacyjny Przykłady systemów operacyjnych

Bardziej szczegółowo

Procesy pojęcia podstawowe. 1.1 Jak kod źródłowy przekształca się w proces

Procesy pojęcia podstawowe. 1.1 Jak kod źródłowy przekształca się w proces Procesy pojęcia podstawowe 1 1.1 Jak kod źródłowy przekształca się w proces W języku wysokiego poziomu tworzy się tak zwany kod źródłowy który po zapisaniu będzie plikiem z programem źródłowym. Plik źródłowy

Bardziej szczegółowo

Systemy operacyjne III

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

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 4 Tryby adresowania i formaty Tryby adresowania Natychmiastowy Bezpośredni Pośredni Rejestrowy Rejestrowy pośredni Z przesunięciem stosowy Argument natychmiastowy Op Rozkaz

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

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

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

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

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