Zagadnienia związane z systemem IO

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

Wstęp do informatyki. Interfejsy, urządzenia we/wy i komunikacja. Linie magistrali

Architektura komputerów

Architektura komputerów

Architektura komputerów. Układy wejścia-wyjścia komputera

Architektura komputerów

Pamięci masowe. ATA (Advanced Technology Attachments)

Macierze RAID MARCEL GAŃCZARCZYK 2TI 1

Wybrane bloki i magistrale komputerów osobistych (PC) Opracował: Grzegorz Cygan 2010 r. CEZ Stalowa Wola

Technologie informacyjne - wykład 2 -

Architektura komputerów

Cele RAID. RAID z ang. Redundant Array of Independent Disks, Nadmiarowa macierz niezależnych dysków.

Urządzenia wejścia-wyjścia

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

Technologia informacyjna. Urządzenia techniki komputerowej

Wykład 2. Temat: (Nie)zawodność sprzętu komputerowego. Politechnika Gdańska, Inżynieria Biomedyczna. Przedmiot:

Pamięci zewnętrzne Dysk magnetyczny:

RAID 1. str w przypadku różnych szybkości cała macierz będzie pracowała z maksymalną prędkością najwolniejszego dysku

Standard transmisji równoległej LPT Centronics

Architektura komputerów

Architektura systemów komputerowych. Przerwania, pamięć, magistrale i urządzenia

Struktura systemów komputerowych

ZASADY PRZECHOWYWANIA DANYCH

Architektura komputerów

Architektura systemu komputerowego

Systemy operacyjne. dr inż. Marcin Czajkowski. Studia podyplomowe Wydział Informatyki PB

Twardy dysk. -urządzenie pamięci masowej

Działanie systemu operacyjnego

dr inż. Jarosław Forenc

LEKCJA TEMAT: Zasada działania komputera.

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

Architektura komputerów

Działanie systemu operacyjnego

Płyta główna (ang. motherboard) najważniejsza płyta drukowana urządzenia elektronicznego, na której zamontowano najważniejsze elementy urządzenia, umo

Urządzenia zewnętrzne

Architektura komputera

Interfejsy systemów pomiarowych

Urządzenia wej.-wyj. Plan (1) Plan (2)

Urządzenia wej.-wyj.

Urządzenia wej.-wyj. Plan (1) Plan (2) Rodzaje urządzeń wejściawyjścia

Mikroprocesor Operacje wejścia / wyjścia

Działanie systemu operacyjnego

Wykład 9 Struktury pamięci masowej

Architektura komputerów

Pamięć - parametry. 1. Pojemność 2. Szybkość 3. Koszt 4. Pobór mocy

Programowanie Niskopoziomowe

Architektura Systemów Komputerowych. Bezpośredni dostęp do pamięci Realizacja zależności czasowych

Magistrala. Magistrala (ang. Bus) służy do przekazywania danych, adresów czy instrukcji sterujących w różne miejsca systemu komputerowego.

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

Dydaktyka Informatyki budowa i zasady działania komputera

Interfejs urządzeń peryferyjnych

Systemy Operacyjne i Sieci Komputerowe

Architektura systemów informatycznych

Pamięci zewnętrzne Dysk magnetyczny:

Protokoły obsługi dysków. AHCI ( z ang. Advanced Host Controller Interface), NVMe ( z ang. Non-Volatile Memory express)

Systemy wejścia-wyjścia. wyjścia

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

ARCHITEKTURA PROCESORA,

Magistrala systemowa (System Bus)

Organizacja typowego mikroprocesora

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

SYMBOLE I PIKTOGRAMY ZWIĄZANE Z UTK

System pamięci. Pamięć wirtualna

Architektura Systemów Komputerowych. Transmisja szeregowa danych Standardy magistral szeregowych

Dyski z interfejsem SCSI.

WPROWADZENIE Mikrosterownik mikrokontrolery

Układy wejścia/wyjścia

Wykład 4. Interfejsy USB, FireWire

Systemy operacyjne. Struktura i zasady budowy. Rozdział 1 Wprowadzenie do systemów komputerowych

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy

Działanie systemu operacyjnego

Budowa systemów komputerowych

dr hab. Joanna Jędrzejowicz Podstawy informatyki i komputeryzacji Gdańska Wyższa Szkoła Humanistyczna

Podstawy obsługi komputerów. Budowa komputera. Podstawowe pojęcia

Architektura systemów komputerowych. dr Artur Bartoszewski

Podstawy Informatyki JA-L i Pamięci

Interfejsy. w systemach pomiarowych. Ryszard J. Barczyński, 2016 Materiały dydaktyczne do użytku wewnętrznego

Budowa komputera KROK PO KROKU! Opis wszystkich części komputera w sposób zrozumiały dla nowatorów

Autor: Jakub Duba. Interjesy

dr inż. Jarosław Forenc

dr inż. Jarosław Forenc Dotyczy jednostek operacyjnych i ich połączeń stanowiących realizację specyfikacji typu architektury

Stronicowanie w systemie pamięci wirtualnej

Technologie cyfrowe semestr letni 2018/2019

Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek

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

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

URZĄDZENIA WEJŚCIA-WYJŚCIA

Podsumowanie. semestr 1 klasa 2

ZESTAWIENIE WYMAGANYCH PARAMETRÓW TECHNICZNYCH SERWERÓW

Materiały pomocnicze 1

Software RAID funkcje dostarcza zaimplementowane oprogramowanie, bez wykorzystania z dedykowanych kontrolerów.

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

SPECYFIKACJA TECHNICZNA NA DOSTAWĘ WYPOSAśENIA I SPRZĘTU KOMPUTEROWEGO

Dodatkowa pamięć w kieszeni - o przenośnych nośnikach danych

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

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych

OPIS TECHNICZNY PRZEDMIOTU ZAMÓWIENIA

MAGISTRALE ZEWNĘTRZNE, gniazda kart rozszerzeń, w istotnym stopniu wpływają na

Interfejsy szeregowe TEO 2009/2010

Transkrypt:

Zagadnienia związane z systemem IO

Wprowadzenie Urządzenia I/O zróżnicowane ze względu na Zachowanie: wejście, wyjście, magazynowanie Partnera: człowiek lub maszyna Szybkość transferu: bajty na sekundę gigabajty/s Uproszczony obrazek: 2

Szybkość transmisji IO 3

Charakterystyka systemu IO Nacisk na niezawodność Szczególnie dla urządzeń magazynujących Wskaźniki wydajności Czas reakcji na żądanie (latency) Przepustowość (throughoutput, bandwidth) To który z nich jest ważniejszy zależy od zadania 4

Pamięci dyskowe 5

Dostęp do danych na dysku Jedna powierzchnia: 10000 50000 ścieżek; każda ścieżka 100-500 sektorów; zone bit recording Każdy sektor zawiera: Identyfikator Dane (512 bajtów, coraz częściej 4096) Dane korekcyjne (ECC) Używane do automatycznej naprawy błędów (nacisk na naprawę błędów seryjnych) Pola oddzielające Dostęp do sektora: Oczekiwanie w kolejce (jeśli są inne żądania) Poszukiwanie ścieżki (przesunięcie głowicy) Oczekiwanie na sektor (obrót talerza) Transfer danych Narzut kontrolera 6

Przykład dostępu do dysku Dane 512B sektory, 15,000rpm, 4ms średni czas poszukiwania ścieżki, 100MB/s transfer, 0.2ms narzut kontrolera, brak innych dostępów Średni czas odczytu: 4ms czas poszukiwania sekt. + ½ / (15,000/60) = 2ms oczekiwanie na sektor + 512 / 100MB/s = 0.005ms transfer = 6 ms 7

Kilka uwag o dyskach Producenci podają średni czas poszukiwania Wyliczony na podstawie wszystkich możliwych odwołań W rzeczywistości lokalność i planowanie OS gwarantują mniejsze czasy Dyski dysponują własnymi pamięciami cache Sektory pobierane z,,wyprzedzeniem do cache Odpada czas poszukiwania i oczekiwania na sektor 8

Pamięci flash Pamięci półprzewodnikowe 100 1000 mnijeszy czas reakcji niż dysk Mniejsze wymiary i zużycie energii, większa odpornośc na uszkodzenia Ale droższe za GB(pomiędzy dyskiem a RAM) 9

Dyski optyczne CD, DVD, BluRay Bity 0-1 kodowane za pomocą kombinacji pit-land inaczej odbijających światło lasera W przeciwieństwie do dysków magnetycznych ścieżki są spiralne (zmienna prędkość obrotu) Kody korekcyjne (Reeda-Solomona) 10

RAID Redundant Array of Inexpensive (Independent) Disks Kilka niedużych dysków (zamiast jednego dużego) Dzięki równoległości odczytów poprawia się wydajność Nadmiarowe dyski poprawiają odporność systemu na błędy RAID 0 Brak nadmiarowości ( AID?) Dane podzielone na tzw. paski rozproszone na dyskach Poprawa wydajności 11

RAID 1 & 2 RAID 1: Mirroring N + N dysków, duplikowane dane Dane zapisywane na dysk i jego kopię Jeśli któryś dysk jest uszkodzony czytamy z kopii RAID 2: Error correcting code (ECC) N + E dysków (np., 10 + 4) Małe paski Dane rozdzielone na N dysków E dysków do korekcji błędów (ECC) Nie używa się w praktyce 12

RAID 3 N + 1 dysków Małe paski (bajty) rozdzielone na N dysków Dodatkowy dysk przechowuje bity parzystości Odczyt Zapis Równoległy odczyt z wszystkich dysków Zsychronizowane głowice Generuj nowe bity parzystości i uaktualnij dyski W przypadku uszkodzenia dysku Bity parzystości używane do rekonstrukcji danych 13

RAID 4: N + 1 dysków Duże paski pojedynczy dostęp do jednego paska Dodatkowy dysk: bity parzystości Odczyt Zapis Błąd: Tylko jeden dysk Dysk z odpowiednim paskiem + bit parzystości Dodatkowy dysk jest wąskim gardłem (przy równoległych zapisach Jak w RAID 3 Nie jest powszechnie używany 14

RAID 5: N + 1 dysków Jak RAID 4, ale bity parzystości rozproszone na wszystkich dyskach Poprawia obsługę równoległych zapisów Często używany 15

RAID 6: Dwa kody korygujące N + 2 disks Jak RAID 5, ale dwa niezależne algorytmy korekcji 16

Połączenia Musimy połączyć CPU, pamięć, kontrolery I/O Klasycznie: współdzielona magistrala (Bus) Równoległa wiązka przewodów Może stać się wąskim gardłem systemu Fizyczne ograniczenia Długość przewodów, liczba podłączanych urządzeń Tendencja: wiele szybkich (szeregowych) połączeń pomiędzy poszczególnymi urządzeniami 17

Równoległe synchroniczne Wiązka przewodów transmituje jednocześnie całe słowo Linie danych, adresowe i sterujące Wszystkie podłączone urządzenia synchronizowane tym samy sygnałem zegarowym (jedna z linii magistrali). Wobec powyższego magistrala nie może być zbyt długa. Ustalony protokół komunikacji, np. odczyt z pamięci: w pierwszym cyklu zegarowym magistrali procesor wysyła sygnał odczytu (linia sterująca) oraz adres w piętnastym cyklu pamięć umieszcza na linii danych zawartość żądanego adresu (pierwsze słowo) Prosta logika sterująca, duża szybkość działania Zazwyczaj magistrala procesor-pamięć -- krótka, operuje na dużej częstotliwości zegara 18

Asynchroniczne równoległe Brak synchronizującego sygnału zegarowego Wymagany protokół komunikacji (sygnały na liniach sterujących) Odczyt z pamięci. Linie sterujące: ReadReq, DataRdy, Ack} Urządzenie ustawia ReadReq i adres na linii danych Pamięć po zauważenieu ReadReq ustawia Ack Urządzenie zwalnia linie ReadReq i danych Pamięć umieszcza odczytane dane na linii danych i ustawia DataRdy Urządzenie widząc DataRdy odczytuje dane i potwierdza sygnałem Ack Pamięć, widząc Ack zwalnia DataRdy i linie danych Urządzenie, widząc zero na linii DataRdy zwalnia Ack 19

Równoległe a szeregowe Magistrala równoległa: Sygnał rozchodzi się po całym,,drucie'' i stabilizuje Słowo danych przesyłane równolegle po wiązce,,drutów' Magistrala szeregowa,,fala'' sygnałów podąża z ustaloną częstotliwością po jednym,,drucie' Słowo danych wysyłane szeregowo bit po bicie Współczesna tendencja: zastępowanie magistral równoległych magistralami szeregowymi 20

Przykłady magistral I/O Firewire USB 2.0 PCI Express Serial ATA Serial Attached SCSI Intended use External External Internal Internal External Devices per channel 63 127 1 1 4 Data width 4 2 2 4 4 Peak bandwidth 50MB/s or 100MB/s 0.2MB/s, 1.5MB/s, or 60MB/s 250MB/s/lane 1, 2, 4, 8, 16, 32 300MB/s 300MB/s Hot pluggable Yes Yes Depends Yes Yes Max length 4.5m 5m 0.5m 1m 8m Standard IEEE 1394 USB Implementers Forum 21 PCI-SIG SATA-IO INCITS TC T10

Typowe połączenia w x86 22

Zarządzanie I/O Zarządzaniem zajmuje się zwykle OS Wiele programów korzysta równolegle z I/O Potrzebna jest ochrona i planowanie Operacje I/O często sterowane przerwaniami (interrupts) Mechanizm podobny do wyjątków (exceptions) Programowanie I/O skomplikowane OS zapewnia programom odpowiedni poziom abstrakcji 23

Rozkazy I/O Urządzenia I/O zarządzane przez sprzętowe kontrolery I/O Transfer danych z/do urządzenia Synchronizacja operacji Rejestry rozkazów Wymuszają odpowiednie zachowanie urządzeń I/O Rejestry stanu Co robi urządzenie; sygnalizacja błędów Rejestry danych Zapis: transfer do urządzenia Odczyt: transfer z urządzenia 24

Rozkazy I/O c.d. I/O mapowane w pamięci (Memory mapped) Wspólna przestrzeń adresowa dla pamięci i rejestrów kontrolerów; te same rozkazy (lw,sw) OS używa mechanizmu translacji adresów, zapewniając dostęp do I/O tylko dla siebie I/O izolowane Osobne rozkazy dostępu do rejestrów I/O Używane tylko przez I/O Przykład: x86 25

Odpytywanie Procesor sprawdza sam rejestr stanu I/O Jeśli urządzenie gotowe, wykonaj operacje Jeśli błąd wykonaj odpowiednią akcję Dobre tylko w nielicznych zastosowaniach (proste systemy wbudowane) Strata czasu procesora 26

Mechanizm przerwań Gdy urządzenie jest gotowe lub wystąpił błąd Kontroler zgłasza procesorowi przerwanie Obsługa przerwań podobna do wyjątków Procesor wykonuje odpowiednią procedurę obsługi przerwania Ważniejsze urządzenia mają wyższe priorytety I mogą przerywać procedury obsługi urządzeń o niższym priorytecie 27

Transfer danych I/O Odpytywanie i przerwania: CPU steruje transferem między pamięcią a rejestrami I/O Strata czasu procesora Direct memory access (DMA) Procesor (OS) ustala adres i rozmiar transferu Kontroler I/O controller zajmuje się transferem samodzielnie Kontroler zgłasza przerwanie po całym procesie. 28

DMA/Cache Jeśli DMA zapisuje do bloku, który jest w cache: Kopia bloku w cache przestaje być aktualna Jeśli mamy strategię,,zapisu po : odczyty DMA mogą sięgać do nieaktualnych bloków Problem spójności danych 29