Pamięć wirtualna. Jan Tuziemski Źródło części materiałów: os-book.com
|
|
- Miłosz Nowakowski
- 5 lat temu
- Przeglądów:
Transkrypt
1 Pamięć wirtualna Jan Tuziemski Źródło części materiałów: os-book.com
2 Pamięć wirtualna Na poprzednich wykładach omówiono sposoby zarządzania pamięcią Są one potrzebne ponieważ wykonywane rozkazy procesów muszą być umieszczone w pamięci fizycznej
3 Pamięć wirtualna Nakłada to ograniczenia na rozmiar wykonywanych procesów Rzeczywiste procesy nie wykorzystują w pełni przydzielonej im pamięci Moduły obsługi błędów Zmienne nie są wykorzystane w pełni Pewne części procesów są wykorzystywana rzadko
4 Pamięć wirtualna Wykonywanie procesu częściowo znajdującego się w pamięci jest korzystne: Brak ograniczeń ze względu na rozmiar pamięci fizycznej Więcej dostępnego miejsca w pamięci fizycznej dla innych użytkowników Mniejsza liczba operacji ładowanie/wymiany procesów z pamięci operacyjnej
5 Pamięć wirtualna Pamięć wirtualna: odseparowanie pamięci logicznej od pamięci fizycznej. Umożliwia utworzenie pamięci wirtualnej o większym rozmiarze niż pamięć fizyczna.
6 Przykładowy schemat Pamięć wirtualna
7 Pamięć wirtualna Główne sposoby realizacji Stronicowanie na żądanie Segmentacja na żądanie
8 Stronicowanie na żądanie Proces (zbiór stron) przebywa w pamięci pomocniczej (np. dysk) Do pamięci wprowadzane są jedynie potrzebne strony (a nie wszystkie strony procesu) Jest to procedura leniwej wymiany nazywana również procedurą stronicującą ang. pager (wymianie podlegają wyłącznie potrzebne strony procesu)
9 Stronicowanie na żądanie Przykładowy schemat
10 Pojęcia podstawowe Do pamięci ładowane są jedynie strony niezbędne Należy odróżnić strony procesu przebywające w pamięci i na dysku W tym celu stosuje się bit poprawności (poprawne - strona w pamięci operacyjnej niepoprawne strona na dysku lub poza logiczną przestrzenią procesu)
11 Pojęcia podstawowe Przykładowy schemat
12 Pojęcia podstawowe Jeżeli proces korzysta tylko ze stron umieszczonych w pamięci (poprawnych), wtedy jego wykonanie przebiega tak jakby cały znajdował się w pamięci Użycie strony nieznajdującej się w pamięci uaktywnia pułapkę braku strony
13 Pułapka braku strony Postępowanie związane z brakiem strony: 1. Określenie czy odwołanie do pamięci było dozwolone czy nie (np. blok kontrolny procesu) 2. Jeżeli nie to proces jest zakończany. 3. Jeżeli tak to strona jest sprowadzana do pamięci 4. Wyszukana zostaje wolna ramka (np. z listy wolnych ramek)
14 Pułapka braku strony 4. Następuje zamówienie przeczytania z dysku potrzebnej strony do nowo przydzielonej ramki 5. Modyfikacja tablicy stron (bitu poprawności) 6. Wznowienie wykonanie przerwanego rozkazu
15 Pułapka braku strony Przykładowy schemat
16 Pułapka braku strony Dzięki przechowaniu stanu procesu jego wznowienie jest możliwe dokładnie w tym samym miejscu i stanie, w którym nastąpiło jego przerwanie Za wczytywanie stron odpowiedzialny jest OS
17 Pułapka braku strony W skrajnym przypadku żadna ze stron procesu nie jest ładowana do pamięci Oznacza to konieczność sekwencyjnego ładowania stron Ten sposób określa się czystym stronicowaniem na żądanie
18 Pułapka braku strony Teoretycznie możliwe jest by do wykonania rozkazu potrzebne było kilka nowych stron Taka konieczność pociągałaby za sobą obniżenie sprawności systemu Empiryczna analiza pokazuje, że do takich sytuacji dochodzi rzadko (mówi się o lokalność odniesień)
19 Rozwiązanie sprzętowe W jego skład wchodzi: Tablica stron z wektorem bitów poprawności lub bitów ochrony Pamięć pomocnicza przechowująca strony nie będące w pamięci fizycznej, nazywana urządzeniem wymiany a fragment dysku obszarem wymiany
20 Sprawność stronicowania na żądanie Stronicowanie na żądanie może prowadzić do spowolnienia systemu Efektywny czas dostępu do pamięci Czas dostępu do pamięci 200ns Obsługa pułapki barku strony 24ms (czyli 120,000 razy dłużej niż normalny czas dostępu) Na ten czas składa się wiele elementów, dominuje czas przełączania strony (czytanie z dysku)
21 Sprawność stronicowania na żądanie p oznacza prawdopodobieństwo braku strony (1-p)* 200ns +p*24 ms Załóżmy p=0,001 Otrzymujemy ok 45000ns czyli 225 krotny wzrost czasu dostępu W wydajności kluczową rolę odgrywa p, musi być na bardzo niskim poziomie
22 Zastępowanie stron By wykorzystać pamięć w najefektywniejszy sposób ładuje się do niej wiele procesów, których część stron pozostaje w pamięci dodatkowej Pamięć fizyczna nie jest przeznaczona wyłącznie do obsługi procesów
23 Zastępowanie stron Jak należy postąpić jeżeli wystąpi pułapka braku strony, a w pamięci fizycznej nie będzie wolnego miejsca?
24 Zastępowanie stron 1. Zwolnić pamięć wykorzystywaną do obsługi operacji I/O (złożone zagadnienie) 2. Umieszczenie procesu żądającego więce pamięci w kolejce oczekujących procesów 3. Zupełna wymiana pewnego procesu z pamięci, pozwalająca odzyskać zasoby 4. Wyszukanie strony w pamięci, która nie jest aktualnie używana i przeniesienie jej na dysk. Nazywane zastępowaniem stron. Najczęściej stosowana metoda.
25 Zastępowanie stron Przykładowy schemat
26 Zastępowanie stron schemat podstawowy Procedura 1. Lokalizacja potrzebnej ramki na dysku 2. Znalezienie wolnej ramki w pamięci Użycie znalezionej ramki Jeżeli nie ma wolnej ramki, wykonuje się algorytm poszukiwania ramki ofiary Ramka ofiara zapisywana jest na dysk, tablica stron i ramek jest zmieniana 3. Wczytanie potrzebnej strony do świeżo zwolnionej ramki. 4. Wznowienie działania procesu
27 Zastępowanie strony schemat podstawowy Przykładowy schemat
28 Zastępowanie strony W przypadku dwukrotnego braku wolnych ramek potrzebne jest dwukrotne przesyłanie strony. By zmniejszyć całkowitą liczbę przesyłanych stron można zastosować bit modyfikacji (zabrudzenia) Informuje on o tym czy dana strona była modyfikowana od ostatniego przeczytania z dysku. Jeżeli strona nie była modyfikowana, można ponownie nie zapisywać jej na dysku.
29 Realizacja stronicowania na żądanie W celu realizacji stronicowania należy opracować: Algorytm przydziału ramek Algorytm zastępowania stron Optymalizacja obu algorytmów polega na minimalizowaniu częstości braku stron.
30 Realizacja stronicowania na żądanie Algorytm ocenia się na podstawie wykonania go na pewnym ciągu odniesień do pamięci i zsumowaniu liczby braków stron Powszechne sposoby generowania ciągu odniesień: Wygenerowany losowo (np. według pewnego rozkładu charakteryzującego system) Specjalnie dobranych ciągów, pokazujących cechy charakterystyczne algorytmów (artykuły naukowe) Zapisywanie odwołań do pamięci rzeczywistego systemu operacyjnego
31 Realizacja stronicowania na żądanie Zapisywanie odwołań do pamięci rzeczywistego systemu operacyjnego Powoduje powstanie olbrzymiej ilości danych (miliony adresów na sekundę) Ilość danych można ograniczyć w oparciu o obserwacje: Ważny jest tylko numer strony, a nie odległość na stronie Jeżeli po odwołaniu do strony s następuje ponowne odwołanie do tej samej strony to nie ma możliwości wystąpienia błędu braku strony
32 Realizacja stronicowania na żądanie Przykład Rozmiar strony 100b Sekwencja odwołań: 0100, 0432, 0101, 0612, 0634, 0688, 0132, 0038, 0420 Wywołanie stron 1, 4, 1, 6, 1, 0, 4
33 Realizacja stronicowania na żądanie Liczba braku stron dla ciągu zależy od liczby dostępnych ramek Jeżeli dostępne są 3 ramki to ciąg 1, 4, 1, 0, 1, 6, 4 spowoduje 4 braki stron
34 Realizacja stronicowania na żądanie W dalszym ciągu będziemy korzystać z ciągu odniesienia: 7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,1 z trzema ramkami
35 Realizacja stronicowania na żądanie Zastępowanie metodą FIFO: Najstarsza strona w pamięci zostaje zastąpiona Łączna liczba braków: 15
36 Zastępowanie metodą FIFO Łatwy do zaprogramowania Wydajność niekoniecznie zadowalająca: Najstarsza strona w pamięci może być często używana Może to prowadzić do spadku wydajności
37 Zastępowanie metodą FIFO Wydajność niekoniecznie zadowalająca: Dla ciągu 1,2,3,4,1,2,5,1,2,3,4,5 występuje anomalia Belady ego (wykres): wzrost liczby braku stron ze wzrostem dostępności ramek
38 Optymalne zastępowanie stron Najniższy współczynnik barku stron ze wszystkich algorytmów Nazywany algorytmem OPT lub MIN Zasada działania: zastępowanie tej strony, która najdłużej nie będzie używana 9 braków
39 Optymalne zastępowanie stron Wada: wymaga wiedzy o przyszłych elementach ciągu odniesień Używany jest w studiach porównawczych gdzie zapewnia wartość referencyjną
40 Metoda LRU Przybliżenie algorytmu OPT Poprzednie algorytmy: Algorytm FIFO sprawdza czas sprowadzenia do pamięci Algorytm sprawdza czas do chwili użycia Zasada działania: zastąpienie strony która nie była użyta od najdłuższego czasu
41 Metoda LRU Schemat działania (12 braków) Porównanie z algorytmem OPT
42 Metoda LRU Sposoby implementacji: Licznik: każde odwołanie do pamięci zwiększa licznik jego aktualna wartość jest zapisywana w tablicy stron, dla strony do której następuje odwołanie Poszukuje się strony, dla której wartość licznika jest minimalna Problemy: przekroczenie zakresu licznika
43 Metoda LRU Sposoby implementacji: Stos: Ostatnio użyta strona umieszczana jest na górze stosu Strona najmniej używana będzie znajdować się na spodzie Implementacja zazwyczaj przy pomocy list dwukierunkowych (przyspiesza przesuwanie elementów ze środa stosu)
44 Przybliżona metoda LRU Pełna implementacja LRU wymaga wsparcia sprzętowego, które często nie jest dostępne Wiele systemów zapewnia się ograniczające wsparcie Najczęściej jest to bit odniesienia Wynosi 0 gdy nie było odwołań do strony i 1 w w przeciwnym wypadku Pozwala na odróżnienie stron nieużywanych od używanych od ostatniego zerowania bitów referencji w tablicy stron
45 Algorytm dodatkowych bitów odniesienia Każda strona zawiera 8-bitowy ciąg informujący o historii W regularnych okresach czasu dochodzi do zapisanie bitu referencji na lewej pozycji Pozostały ciąg jest przesuwany o jedno miejsce w prawo, ostatni bit jest tracony
46 Algorytm dodatkowych bitów odniesienia W każdej chwili czasu najdawniej używanej stronie odpowiada bajt o najmniejszej wartości Strona z rejestrem była używana mniejszą ilość czasu temu niż Ilość przechowywanych bitów i długość okresu uaktualniania może być dopasowywana
47 Algorytm drugiej szansy Jest to algorytm FIFO z dodatkowym odwołaniem do bitu odniesienia Jeżeli najstarsza strona w pamięci nie była ostatnio używana (bit odniesieni=0) strona jest usuwana Jeżeli najstarsza strona w pamięci była ostatnio używana (bit odniesieni=1) strona dostaje drugą szansę
48 Algorytm drugiej szansy Realizacja: kolejka cykliczna Wskaźnik na następną ofiarę Jeżeli bit odniesienia ofiary = 1, zostaje wyzerowany i wskaźnik przesuwa się dalej
49 Algorytm drugiej szansy
50 Ulepszony algorytm ostatniej szansy Korzysta z bitu odniesienia i bitu modyfikacji: (0,0) strona nie używana i nie zmieniona najlepsza do zastąpienia (0,1) ostatnio nie używana ale zmieniona wymaga zapisu na dysk (1,0) ostatnio używana ale nie zmieniona prawdopodobnie będzie potrzebna (1,1) ostatnio używana i zmieniona prawdopodobnie będzie potrzebna Ostatecznie do sprawdzenia 4 klasy
51 Zastępowanie stron oparte o zliczanie Na podstawie licznika odniesień do każdej ze stron: Zastępowanie stron najrzadziej używanych Zastępowanie stron najczęściej używanych
52 Buforowanie stron Algorytmy uzupełniające algorytmy zastępowania stron: Pula wolnych ramek: przy błędzie braku strony strona z pamięci ładowana jest do wolnej ramki a osobny algorytm usuwa stronę-ofiarę
53 Buforowanie stron Algorytmy uzupełniające algorytmy zastępowania stron: W momentach bezczynności zapisywanie zmienionych stron na dysk gdy zajdzie potrzeba ich usunięcia jest większa szansa, że nie trzeba będzie powtarzać tej czynności
54 Buforowanie stron Algorytmy uzupełniające algorytmy zastępowania stron: Utrzymywanie puli wolnych ramek i historii stron, które były w nich zapisane. Przy wczytywaniu strony z pamięci sprawdza się czy ramka, w której poprzednio znajdowała się strona została nadpisana. Jeżeli nie, nie ma potrzeby ładowania strony z pamięci.
55 Przydział ramek Jak rozdzielać ramki między procesy? Przydział minimalny: istnieje minimalna liczba ramek, która musi zostać przydzielona procesowi by mógł być wykonywany (zależne od architektury systemu) Przydział równy: przydzielanie każdemu procesowi określonej liczby ramek Przydział proporcjonalny: przydzielanie liczby ramek w zależności od rozmiaru/zapotrzebowania procesu
56 Przydział ramek Zastępowanie lokalne i globalne: Globalne: proces może otrzymać ramkę ze zbioru wszystkich ramek Lokalne: proces może otrzymać ramkę z puli ramek dla niego przeznaczonych Pomimo problemów (proces może wciąż odbierać ramki innym procesom), korzystniejszy jest wybór przydzielania globalnego
57 Szamotanie Występuje wówczas gdy w danym procesie wciąż wykazuje brak strony. Może prowadzić do tego, że więcej czasu upłynie na stronicowanie niż wykonywanie procesu Może prowadzić do zmniejszonego wykorzystania procesora
58 Szamotanie Wraz ze wzrostem występowania szamotania, planista przydziału procesora zwiększa liczbę procesów do wykonania, co powoduje wzrost szamotania
59 Szamotanie Unikanie szamotania: należy przydzielić procesowi odpowiednią liczbę ramek W modelu strefowym zakłada się, że liczba ramek potrzebna procesowi zmienia się strefowo
60 Szamotanie
61 Szamotanie W celu uniknięcia szamotania, w każdej strefie należy przydzielić odpowiednią liczbę ramek Liczbę ramek w strefie określa się albo za pomocą modelu zbioru roboczego albo na podstawie częstości braków stron
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ółowoPamięć wirtualna. A gdyby tak w pamięci przebywała tylko ta część programu, która jest aktualnie wykonywana?
Pamięć wirtualna Pytanie: Czy proces rezerwuje pamięć i gospodaruje nią w sposób oszczędny? Procesy często zawierają ogromne fragmenty kodu obsługujące sytuacje wyjątkowe Zadeklarowane tablice lub rozmiary
Bardziej szczegółowoNakładki. Kod przebiegu 2: 80 kb Tablica symboli: 20 kb wspólne podprogramy: 30 kb Razem: 200 kb
Pamięć wirtualna Nakładki Nakładki są potrzebne jeśli proces jest większy niż ilość dostępnej pamięci. Przykład - dwuprzebiegowy asembler mamy do dyspozycji 150 kb pamięci, a poszczególne elementy zadania
Bardziej szczegółowoPodstawy. 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ółowoStronicowanie 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ółowodr 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ółowoSystemy 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ółowoZarzą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ółowoWykł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ółowoZARZĄ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ółowodr 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ółowodr 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ółowoSystemy 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ółowoPamięć. 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ółowoZarzą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ółowoSystemy 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ółowoZarz 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ółowoOd 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ółowoProgramowanie 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ółowoPamięć 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ółowoZarz 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ółowoSYSTEMY OPERACYJNE LABORATORIUM 2014/2015
1 SYSTEMY OPERACYJNE LABORATORIUM 2014/2015 ZASADY OCENIANIA ZADAŃ PROGRAMISTYCZNYCH: Zadania laboratoryjne polegają na symulacji i badaniu własności algorytmów/mechanizmów stosowanych w systemach operacyjnych.
Bardziej szczegółowoZarzą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ółowoZARZĄ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ółowoPRZYDZIAŁ 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ółowoArchitektura 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ółowoDziałanie systemu operacyjnego
Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej I NIC sieci Pamięć operacyjna Przerwania Przerwania
Bardziej szczegółowoOd 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ółowoTEMAT 5 Zarządzanie pamięcią operacyjną
TEMAT 5 Zarządzanie pamięcią operacyjną Struktura pamięci pamięć -- wielka tablica oznaczona adresami słów lub bajtów procesor pobiera rozkazy z pamięci stosownie do wartości licznika rozkazów rozkazy
Bardziej szczegółowoDziałanie systemu operacyjnego
Działanie systemu operacyjnego Budowa systemu komputerowego Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej Pamięć
Bardziej szczegółowoArchitektura 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ółowoZarzą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ółowoZarzą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ółowoZarzą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ółowoStronicowanie 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ółowoWydajność 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ółowosprowadza się od razu kilka stron!
Bazy danych Strona 1 Struktura fizyczna 29 stycznia 2010 10:29 Model fizyczny bazy danych jest oparty na pojęciu pliku i rekordu. Plikskłada się z rekordów w tym samym formacie. Format rekordujest listą
Bardziej szczegółowoPamięć wirtualna. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak
Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak jest organizacją zasobów pamięci, zrealizowaną w oparciu o tzw. przestrzeń wymiany w pamięci drugiego rzędu (na dysku). Pamięć operacyjna (fizyczna)
Bardziej szczegółowoDziałanie systemu operacyjnego
Budowa systemu komputerowego Działanie systemu operacyjnego Jednostka centralna dysku Szyna systemowa (magistrala danych) drukarki pamięci operacyjnej sieci Pamięć operacyjna Przerwania Przerwania Przerwanie
Bardziej szczegółowoStruktura 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ółowoBudowa systemów komputerowych
Budowa systemów komputerowych Krzysztof Patan Instytut Sterowania i Systemów Informatycznych Uniwersytet Zielonogórski k.patan@issi.uz.zgora.pl Współczesny system komputerowy System komputerowy składa
Bardziej szczegółowoWydajność 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ółowoTechnologie informacyjne (2) Zdzisław Szyjewski
Technologie informacyjne (2) Zdzisław Szyjewski Technologie informacyjne Technologie pracy z komputerem Funkcje systemu operacyjnego Przykłady systemów operacyjnych Zarządzanie pamięcią Zarządzanie danymi
Bardziej szczegółowoDodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych
Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych B.1. Dostęp do urządzeń komunikacyjnych Sterowniki urządzeń zewnętrznych widziane są przez procesor jako zestawy rejestrów
Bardziej szczegółowo1. Rola pamięci operacyjnej
1. Rola pamięci operacyjnej Pamięć operacyjna jest jedną z podstawowych części systemu komputerowego. Do niej trafiają niemal wszystkie dane programów (a także i same programy - zostanie to wyjaśnione
Bardziej szczegółowoWykł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ółowoPamięć wirtualna jest organizacją zasobów pamięci, zrealizowaną w oparciu o tzw. przestrzeń wymiany w pamięci drugiego rzędu (na dysku).
jest organizacją zasobów pamięci, zrealizowaną w oparciu o tzw. przestrzeń wymiany w pamięci drugiego rzędu (na dysku). Pamięć operacyjna (fizyczna) jest dla tych zasobów tylko pewnym oknem, przechowującym
Bardziej szczegółowoArchitektura i administracja systemów operacyjnych
Architektura i administracja systemów operacyjnych Wykład 1 Jan Tuziemski Część slajdów to zmodyfiowane slajdy ze strony os-booi.com copyright Silberschatz, Galvin and Gagne, 2013 Informacje wstępne Prowadzący
Bardziej szczegółowoSYSTEMY 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ółowoARCHITEKTURA 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ółowoZbigniew S. Szewczak Podstawy Systemów Operacyjnych
Zbigniew S. Szewczak Podstawy Systemów Operacyjnych Wykład 10 Pamięć wirtualna. Toruń, 2003 Pamięć wirtualna Podstawy Stronicowanie na żądanie Sprawność stronicowania na żądanie Zastępowanie stron Algorytmy
Bardziej szczegółowoBazy 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ółowoProgramowanie 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ółowoKsię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ółowoSchematy 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ółowoZbigniew S. Szewczak Podstawy Systemów Operacyjnych
Zbigniew S. Szewczak Podstawy Systemów Operacyjnych Wykład 10 Pamięć wirtualna. Toruń, 2004 Odrabianie wykładów czwartek, 1.04.2004, S7, g. 12.00 za 19.05 czwartek, 15.04.2004, S7, g. 12.00 za 12.05 Pamięć
Bardziej szczegółowoDziałanie systemu operacyjnego
Działanie systemu operacyjnego Budowa systemu komputerowego I NIC Jednostka centralna Sterownik dysku Sterownik drukarki Sterownik sieci Szyna systemowa (magistrala danych) Sterownik pamięci operacyjnej
Bardziej szczegółowoang. file) Pojęcie pliku (ang( Typy plików Atrybuty pliku Fragmentacja wewnętrzna w systemie plików Struktura pliku
System plików 1. Pojęcie pliku 2. Typy i struktury plików 3. etody dostępu do plików 4. Katalogi 5. Budowa systemu plików Pojęcie pliku (ang( ang. file)! Plik jest abstrakcyjnym obrazem informacji gromadzonej
Bardziej szczegółowoArchitektura 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ółowoZarzą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ółowoWydajność 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ółowoWydajność 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ółowoSYSTEMY 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ółowoRozdział ten zawiera informacje na temat zarządzania Modułem Modbus TCP oraz jego konfiguracji.
1 Moduł Modbus TCP Moduł Modbus TCP daje użytkownikowi Systemu Vision możliwość zapisu oraz odczytu rejestrów urządzeń, które obsługują protokół Modbus TCP. Zapewnia on odwzorowanie rejestrów urządzeń
Bardziej szczegółowoMikroprocesor Operacje wejścia / wyjścia
Definicja Mikroprocesor Operacje wejścia / wyjścia Opracował: Andrzej Nowak Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz Operacjami wejścia/wyjścia nazywamy całokształt działań potrzebnych
Bardziej szczegółowoSystemy 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ółowoprojektowanie systemu
projektowanie systemu cel użytkownika: system operacyjny powinien być wygodny, łatwy w użyciu, prosty do nauczenia, niezawodny, bezpieczny i szybki cel producenta: system operacyjny powinien być łatwy
Bardziej szczegółowoArchitektura 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ółowoSYSTEMY 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ółowoSystem plików warstwa fizyczna
System plików warstwa fizyczna Dariusz Wawrzyniak Plan wykładu Przydział miejsca na dysku Zarządzanie wolną przestrzenią Implementacja katalogu Przechowywanie podręczne Integralność systemu plików Semantyka
Bardziej szczegółowoSystem plików warstwa fizyczna
System plików warstwa fizyczna Dariusz Wawrzyniak Przydział miejsca na dysku Zarządzanie wolną przestrzenią Implementacja katalogu Przechowywanie podręczne Integralność systemu plików Semantyka spójności
Bardziej szczegółowoSystem plików warstwa fizyczna
System plików warstwa fizyczna Dariusz Wawrzyniak Przydział miejsca na dysku Przydział ciągły (ang. contiguous allocation) cały plik zajmuje ciąg kolejnych bloków Przydział listowy (łańcuchowy, ang. linked
Bardziej szczegółowoPrzygotowanie kilku wersji kodu zgodnie z wymogami wersji zadania,
Przetwarzanie równoległe PROJEKT OMP i CUDA Temat projektu dotyczy analizy efektywności przetwarzania równoległego realizowanego przy użyciu komputera równoległego z procesorem wielordzeniowym z pamięcią
Bardziej szczegółowoSystem 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ółowoSpis treści. 1 Moduł Modbus TCP 4
Spis treści 1 Moduł Modbus TCP 4 1.1 Konfigurowanie Modułu Modbus TCP................. 4 1.1.1 Lista elementów Modułu Modbus TCP............ 4 1.1.2 Konfiguracja Modułu Modbus TCP.............. 5 1.1.3
Bardziej szczegółowoPytania 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ółowoPośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:
Współpraca mikroprocesora z urządzeniami zewnętrznymi Urządzenia wejścia-wyjścia, urządzenia których zadaniem jest komunikacja komputera z otoczeniem (zwykle bezpośrednio z użytkownikiem). Do najczęściej
Bardziej szczegółowoStruktura systemów komputerowych
Struktura systemów komputerowych Działanie systemu komputerowego Struktury WE/WY Struktura pamięci Hierarchia pamięci Ochrona sprzętowa Ogólna architektura systemu Wykład 6, Systemy operacyjne (studia
Bardziej szczegółowoZarzą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ółowoMetody 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ółowoSystem 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ółowoWydajność programów sekwencyjnych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1
Wydajność programów sekwencyjnych Krzysztof Banaś Obliczenia Wysokiej Wydajności 1 Wydajność obliczeń Dla wielu programów wydajność obliczeń można traktować jako wydajność pobierania z pamięci i przetwarzania
Bardziej szczegółowoPodstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Bardziej szczegółowodr 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ółowo1 Moduł Modbus ASCII/RTU
1 Moduł Modbus ASCII/RTU Moduł Modbus ASCII/RTU daje użytkownikowi Systemu Vision możliwość komunikacji z urządzeniami za pomocą protokołu Modbus. Moduł jest konfigurowalny w taki sposób, aby umożliwiał
Bardziej szczegółowoTworzenie 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ółowoPrezentacja 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ółowoMikroinformatyka. 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ółowoPrzerwania, polling, timery - wykład 9
SWB - Przerwania, polling, timery - wykład 9 asz 1 Przerwania, polling, timery - wykład 9 Adam Szmigielski aszmigie@pjwstk.edu.pl SWB - Przerwania, polling, timery - wykład 9 asz 2 Metody obsługi zdarzeń
Bardziej szczegółowoKOMPONENTY 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ółowoobszar 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ółowoSortowanie zewnętrzne
Algorytmy i struktury danych Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski Sortowanie zewnętrzne 1 Wstęp Bardzo często
Bardziej szczegółowoProcesy i wątki. Blok kontrolny procesu. Proces. Proces - elementy. Stan procesu
Proces Procesy i wątki Proces jest wykonywanym programem. Wykonanie procesu musi przebiegać w sposób sekwencyjny ( w dowolnej chwili na zamówienie naszego procesu może być wykonany co najwyżej jeden rozkaz
Bardziej szczegółowoSystem plików. Warstwowy model systemu plików
System plików System plików struktura danych organizująca i porządkująca zasoby pamięci masowych w SO. Struktura ta ma charakter hierarchiczny: urządzenia fizyczne strefy (partycje) woluminy (w UNIXie:
Bardziej szczegółowoSystemy 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ółowoTadeusz Pankowski
Problem odtwarzania bazy danych Odtwarzanie bazy danych (recovery) Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski System bazy danych musi być w stanie odtworzyć swój poprawny stan w sposób automatyczny,
Bardziej szczegółowoLogiczny model komputera i działanie procesora. Część 1.
Logiczny model komputera i działanie procesora. Część 1. Klasyczny komputer o architekturze podanej przez von Neumana składa się z trzech podstawowych bloków: procesora pamięci operacyjnej urządzeń wejścia/wyjścia.
Bardziej szczegółowoOrganizacja typowego mikroprocesora
Organizacja typowego mikroprocesora 1 Architektura procesora 8086 2 Architektura współczesnego procesora 3 Schemat blokowy procesora AVR Mega o architekturze harwardzkiej Wszystkie mikroprocesory zawierają
Bardziej szczegółowoPamięć 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