System wejścia-wyjścia

Podobne dokumenty
System wejścia-wyjścia

System wejścia-wyjścia

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

SYSTEMY WEJŚCIA-WYJŚCIA

Działanie systemu operacyjnego

Działanie systemu operacyjnego

Działanie systemu operacyjnego

Urządzenia wejścia-wyjścia

System plików. Definicje:

Architektura komputerów

Działanie systemu operacyjnego

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

Pośredniczy we współpracy pomiędzy procesorem a urządzeniem we/wy. W szczególności do jego zadań należy:

Architektura systemu komputerowego

Struktura systemów komputerowych

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

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

Mikroprocesor Operacje wejścia / wyjścia

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

Budowa systemów komputerowych

Mechanizmy pracy równoległej. Jarosław Kuchta

System plików i zarządzanie pamięcią pomocniczą. Koncepcja pliku. Atrybuty pliku. Struktura pliku. Typ pliku nazwa, rozszerzenie (extension)

Pytania do treści wykładów:

LEKCJA TEMAT: Zasada działania komputera.

Wejście-wyjście. Wiesław Płaczek Systemy Operacyjne: Wykład 10 1

Prezentacja systemu RTLinux

SYSTEMY OPERACYJNE: STRUKTURY I FUNKCJE (opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX)

Architektura komputerów

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

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

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

Definicja systemu operacyjnego (1) Definicja systemu operacyjnego (2) Miejsce systemu operacyjnego w architekturze systemu komputerowego

Podstawy techniki cyfrowej Układy wejścia-wyjścia. mgr inż. Bogdan Pietrzak ZSR CKP Świdwin

Klient-Serwer Komunikacja przy pomocy gniazd

Informatyka. informatyka i nauki komputerowe (computer science)

SYSTEMY OPERACYJNE WYKLAD 6 - wątki

Architektura komputerów

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

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych

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

Wprowadzenie do systemów operacyjnych

System plików. Warstwowy model systemu plików

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Program wykładów. Strona WWW przedmiotu: Program ćwiczeń projektowych

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

PRZERWANIA. 1. Obsługa zdarzeń, odpytywanie i przerwania Obsługa zdarzeń jest jedną z kluczowych funkcji w prawie każdym systemie czasu rzeczywistego.

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

Urządzenia zewnętrzne


Architektura systemów komputerowych. dr Artur Bartoszewski

Działanie i charakterystyka sterownika GE FANUC VersaMaxNano

SPIS TREŚCI: KARTY GRAFICZNE... 15

Układy wejścia/wyjścia

Instrukcja obsługi przełącznika KVM ATEN CS661. Opis urządzenia. Instalacja urządzenia

Organizacja pamięci VRAM monitora znakowego. 1. Tryb pracy automatycznej

Wykorzystanie układów FPGA w implementacji systemów bezpieczeństwa sieciowego typu Firewall

Procesy i wątki. Blok kontrolny procesu. Proces. Proces - elementy. Stan procesu

Chipset i magistrala Chipset Mostek północny (ang. Northbridge) Mostek południowy (ang. Southbridge) -

Systemy operacyjne system przerwań

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

Systemy operacyjne System sieciowy UNIX-a

Paweł Skrobanek. C-3, pok

Podsumowanie. Systemy operacyjne Podsumowanie 1. Klasyfikacja ze względu na sposób przetwarzania

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

5. Administracja kontami uŝytkowników

Proces y i y w i ąt ą ki

Systemy operacyjne III

System mikroprocesorowy i peryferia. Dariusz Chaberski

Systemy Operacyjne i Sieci Komputerowe

Standard transmisji równoległej LPT Centronics

Procesy i wątki. Blok kontrolny procesu. Proces. Proces - elementy. Stan procesu. Blok kontrolny procesu

Podsumowanie. Klasyfikacja ze względu na sposób przetwarzania. Klas. ze względu na liczbę wykonywanych zadań

Architektura komputerów

Podsumowanie. Klasyfikacja ze względu na. liczbę użytkowników. Klasyfikacja ze względu na. Inne rodzaje systemów operacyjnych. sposób przetwarzania

Przerwania Przerwanie zdarzenia

Sygnały DRQ i DACK jednego kanału zostały użyte do połączenia kaskadowego obydwu sterowników.

dokument DOK wersja 1.0

Instrukcja do oprogramowania ENAP DEC-1

Od uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Linux.

Zarządzanie procesami i wątkami

Język FBD w systemie Concept

SYSTEMY OPERACYJNE WYKLAD 5 - zarządzanie pamięcią pomocniczą

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

Metody obsługi zdarzeń

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

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

Architektura i administracja systemów operacyjnych

Celem wykładu jest omówienie zagadnień obsługi urządzeń wejścia-wyjścia (zwanych również urządzeniami zewnętrznymi lub peryferyjnymi) i realizacji

URZĄDZENIA WEJŚCIA-WYJŚCIA

Podstawy informatyki. Izabela Szczęch. Politechnika Poznańska

Wprowadzenie do systemów operacyjnych. mgr inż. Krzysztof Szałajko

Urządzenia wejścia-wyjścia. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak

Architektura komputerów

Podstawy techniki cyfrowej i mikroprocesorowej II. Urządzenia wejścia-wyjścia

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

Stan procesu. gotowy - czeka na przydział procesora, zakończony - zakończył działanie.

Architektura Systemów Komputerowych

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

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

Transkrypt:

System wejścia-wyjścia Trzy rodzaje urządze dzeń wejścia cia-wyjścia: Urządzenia pamięci (dyski, taśmy) Urządzenia przesyłania danych (karty sieciowe, modemy) Urządzenia komunikacji z człowiekiem (klawiatury, myszy, monitory) Urządzenia systemu wejścia-wyjścia: Port - punkt kontaktu urządzenia wejścia cia-wyjścia z komputerem Szyna - wiązka przewodów, w, ścieŝek ek za pomocą której jedno lub kilka urządze dzeń komunikuje się z komputerem Sterownik - układ elektroniczny do kierowania pracą portu, szyny lub urządzenia

System wejścia-wyjścia Programowe składowe podsystemu we-wy: wy: Moduły y wejścia cia-wyjścia, moduły y sterujące - tworzą interfejs dostępu podsystemu we-wy wy do urządze dzeń Obsługa wejścia cia-wyjścia w jądrze j systemu wywołania systemowe wejścia cia-wyjścia

Sterowanie urządzeniami wejścia-wyjścia Przekazywanie poleceń z procesora do sterownika: Sterownik posiada rejestry do pamiętania danych i sygnałów sterujących. Procesor pisze i czyta do rejestrów w w sterowniku. Procesor posiada specjalne rozkazy do pisania i czytania portów, Operacje we-wy wy odbywają się w pamięci - rejestry sąs odwzorowywane w przestrzeni adresowej procesora. W komputerach IBM PC zastosowane są obydwie metody: Dla kontrolera grafiki - ekran odwzorowany w pamięci Dla portów w szeregowych - rejestry we-wy wy i bufory

Port wejścia-wyjścia Typowy port składa się z czterech rejestrów w o długod ugości 1-41 4 B kaŝdy: Stan (czytane przez procesor: zakończenie wykonywania polecenia, dostępno pność bajtu do czytania, błąb łąd d urządzenia) Sterowanie (zapisywane przez procesor: rozpoczęcie cie polecenia, zmiana trybu pracy urządzenia) Dane wejściowe (czytane przez procesor dane właściwe) w Dane wyjściowe (zapisywane przez procesor dane dla urządzenia) Układ FIFO - magazyn pośredni redni - buforuje dane, których komputer lub urządzenie nie moŝe e w danej chwili odebrać.

Odpytywanie Do uzgadniania pomiędzy procesorem a urządzeniem w prostym schemacie producent-konsument wystarczą dwa bity: od strony procesora bit gotowości polecenia w rejestrze pleceń - sygnalizujący kompletne polecenie dla urządzenia od strony urządzenia bit zajęto tości (w( w rejestrze stanu), sygnalizujący Ŝe e urządzenie jest zajęte pracą. Kolejność działań przy uzgadnianiu: Procesor realizuje aktywne czekanie, dopóki bit zajęto tości jest ustawiony Procesor ustawia bit pisania i wpisuje bajt danych do rejestru danych d wy. Procesor ustawia bit gotowości polecenia Sterownik ustawia bit zajęto tości po zauwaŝeniu bitu gotowości polecenia Sterownik czyta rejestr poleceń,, rozpoznaje polecenie pisania. Czyta bajt danych z rejestru i wykonuje na urządzeniu operację wejścia cia-wyjścia Sterownik czyści ci bit gotowości polecenia, bit błedu,, a na końcu bit zajęto tości I tak dla kaŝdego bajtu danych

Przerwania Jeśli urządzenie jest rzadko gotowe do działania, ania, odpytywanie staje się nieefektywne ( procesor większo kszość czasu poświ więca na aktywne czekanie. Mechanizm przerwań: procesor ma końcówk wkę (nóŝkę) ) badającą stan linii zgłaszania przerwań po wykonaniu kaŝdego rozkazu. Jeśli procesor wykryje wystąpienie przerwania, to wykonuje operacje zachowania stanu bieŝą Ŝącego procesu i przechodzi do procedur obsługi przerwań. Po wykonaniu niezbędnych operacji procesor wraca do wykonywania przerwanego zadania W nowoczesnych architekturach komputerów w moŝliwa zaawansowana obsługa przerwań: - opóźnianie obsługi przerwania podczas działań krytycznych, - maskowanie przerwań (dwie linie przerwań - maskowalna i niemaskowalna) - przerwania wielopoziomowe o róŝnym r priorytecie

Bezpośredni dostęp do pamięci Jest uŝywany u w celu uniknięcia transmisji bajt-po po-bajcie (zwanego programowanym wejściem ciem-wyjściem) dla urządze dzeń transmitujących wielkie ilości danych (np( dysk), co oszczędza wiele cykli procesora Wiele procedur związanych zanych z transmisją jest wtedy wykonywana przez specjalizowany procesor - sterownik bezpośredniego dostępu do pamięci (DMA controller) Przed rozpoczęciem ciem transmisji w trybie DMA, procesor zapisuje w pamięci blok sterujący DMA (wskaźnik do źródła, adres docelowy, liczba bajtów w do przesłania), następnie przesyła a do sterownika DMA adres tego bloku i przechodzi do wykonywania innych prac. Sterownik DMA wykonuje transmisję,, przejmując c w tym czasie sterownie szyną pamięci. Procesor nie ma wtedy dostępu do pamięci, ale moŝe e korzystać z cache i rejestrów.

UŜytkowy interfejs we-wy Moduły y sterujące - wewnętrznie dostosowane sąs do konkretnych urządze dzeń,, a zewnętrznie udostępniaj pniają pewien standardowy interfejs standaryzacja pomaga producentom sprzętu tworzyć sterowniki do własnych w urządze dzeń,, widziane przez obce systemy operacyjne Systemy muszą umoŝliwia liwiać instalację sterowników w do nowego sprzętu

RóŜnice między urządzeniami we-wy Urządzenie znakowe - przesyła a bajty (znaki) z osobna jeden za drugim (terminal) Urządzenie blokowe - przesyła a jednorazowo całe e bloki (dysk) Dostęp p sekwencyjny - dane przesyłane kolejno w sposób uporządkowany (modem) Dostęp p swobodny - moŝna mieć dostęp p do danych w róŝnych r miejscach, niekoniecznie kolejno (CD-ROM) Przesyłanie synchroniczne - taktowane zegarem (taśma) przesyłanie asynchroniczne - w nieokreślonych chwilach czasu, sterowane startem i stopem (klawiatura) Urządzenie dzielone - przez kilka procesów w (dysk) Wyłą łączne - tylko dla jednego uŝytkownika u (taśma) Szybkość działania ania - od B/s do GB/s Kierunek przesyłania - czytanie, pisanie lub czytanie i pisanie

Urządzenia sieciowe Sieciowe wejście cie-wyjście róŝni r się znacznie od dyskowego, pod względem wydajności i adresowania Interfejs gniazda (socket( socket) - aplikacje umoŝliwiaj liwiają tworzenie gniazda, połą łączenie lokalnego gniazda ze zdalnym adresem, nasłuchiwanie, przesyłanie i odbieranie pakietów w za pomocą połą łączenia funkcja wybierz zarządza gniazdami W systemach Windows NT/2000 - interfejs do kontaktowania się z kartą sieciową oraz interfejs do do protokołów w sieciowych W systemie Unix - półdupleksowe potoki, pełnodupleksowe kolejki FIFO, pełnodupleksowe strumienie, kolejki komunikatów w i gniazda

Zegary i czasomierze Spełniaj niają trzy podstawowe funkcje: podawanie bieŝą Ŝącego czasu, podawanie upływaj ywającego czasu, powodowanie wykonania określonej operacji w określonej chwili czasomierz programowalny - słuŝy y do pomiaru upływaj ywającego czasu i powodowania wykonania operacji w zadanym czasie moŝna go zaprogramować na określony czas, po którym generuje on przerwanie jest to teŝ zegar systemowy do taktowania kwantów w czasu (dla przydziału u procesora)

Wejście-wyjście z blokowaniem Blokowanie uwalnia procesor od aktywnego czekania - proces przenoszony jest do kolejki procesów w czekających. cych. Po zakończeniu we-wy wy proces przechodzi do kolejki procesów gotowych. Niektóre procesy wymagają wejścia cia-wyjścia bez blokowania, np proces w którym sygnały y z klawiatury lub myszy przeplatają się z przetwarzaniem i wyświetlaniem wietlaniem na ekranie, albo czytanie z dysku z dekompresją danych. W aplikacjach wielowątkowych moŝna zablokować pewne wątki, a inne zostawić aktywne.

Podsystem wejścia-wyjścia w jądrze Planowanie wejścia cia-wyjścia ma na celu poprawę wydajności systemu, polepszenie wspólnego korzystania z urządze dzeń przez procesy i zmniejszenie średniego czasu oczekiwania. Buforowanie - dopasowanie prędko dkości producenta i konsumenta danych (podwójne buforowanie), dopasowanie urządze dzeń operujących na róŝnych r wielkościach bloków w danych (np pakiety sieci a bloki na dysku) Przechowywanie podręczne (caching( caching) - zapamiętanie kopii danych w szybkiej pamięci podręcznej Spooling - uŝycie bufora do przechowywania danych przeznaczonych dla urządzenia, które nie dopuszcza przeplatania danych z róŝnych r procesów w (np( drukarka) Obsługa błęb łędów Struktury danych jądra j - jądro musi przechowywać informacje o stanie uŝywanych u składowych wejścia cia-wyjścia

Podsystem wejścia-wyjścia w jądrze, cd Podsystem nadzoruje: zarządzanie przestrzenią nazw plików w i urządze dzeń, przebieg dostępu do plików w i urządze dzeń, poprawność formalna operacji, przydzielanie miejsca w systemie plików, przydział urządze dzeń, buforowanie, caching oraz spooling, planowanie operacji wejścia cia-wyjścia doglądanie danie stanu urządze dzeń,, obsług ugę błędów, czynności ci naprawcze po awarii. konfigurowanie i wprowadzanie w stan początkowy modułu sterującego

Poprawianie wydajności wejścia-wyjścia Podsystem nadzoruje: zmniejszać liczbę przełą łączeń kontekstu, zmniejszać liczbę kopiowań danych w pamięci podczas przekazywania od urządzenia do aplikacji, zmniejszać często stość przerwań poprzez przesyłanie duŝych porcji informacji, przez optymalizację sterowników w i stosowanie odpytywania, gdzie to korzystne, zwiększa kszać współbie bieŝność poprzez stosowanie sterowników pracujących cych w trybie DMA, realizować elementarne działania ania za pomocą sprzętu i pozwalać na ich współbie bieŝne wykonywanie w sterownikach, równowaŝyć wydajność procesora, podsystemów pamięci, szyny i operacji wejścia-wyjścia

Elementy od których zaleŝy wydajność dysku Czytanie lub pisanie wymaga ustawienia głowicy g nad określon loną ścieŝką i na początku konkretnego sektora. Potrzebny na to jest czas dostępu - suma czasu przeszukiwania i opóźnienia obrotowego czas przeszukiwania (seek( time) - czas potrzebny naustawienie głowicy nad ścieŝką opóźnienie obrotowe (rotational( latency) - czas potrzebny na obrót t właściwego w sektora pod głowicg owicę, Czas przeszukiwania ma duŝy y wpływ na wydajność ść. MoŜemy go optymalizować,, poniewaŝ system operacyjny zarządza kolejkąŝą Ŝądań dysku

Planowanie wejścia-wyjścia dla dysku FCFS (first( come, first served) -Ŝądania wejścia cia-wyjścia realizowane w kolejności zgłaszania. Algorytm sprawiedliwy, ale mało o wydajny. Przy duŝej liczbie zgłosze oszeń planowanie zbliŝone do losowego (najgorszego) PRI (priority( priority) - krótkie zadania wsadowe i interakcyjne mają wyŝszy priorytet i pierwszeństwo stwo w dostępie do dysku. Rozwiązanie zanie nieefektywne dla baz danych. LIFO (last( in-first out) - minimalizuje ruch głowicy g (Ŝą( Ŝądania korzystają z ograniczonego obszaru na dysku). MoŜliwo liwość głodzenia procesów SSTF (shortest( seek time first) - najmniejszy ruch głowicy g od pozycji bieŝą Ŝącej. Zawsze minimalny czas przeszukiwania. MoŜliwe głodzenie. g

Planowanie wejścia-wyjścia dla dysku, cd SCAN - głowica przesuwa się od jednej krawędzi dysku do drugiej, lub do ostatniego Ŝądania. Potem zmienia się kierunek przesuwania. Działa a jak winda - najpierw zamówienia w górę,, potem w w dół. d. Najszybciej po sobie obsługiwane Ŝądania na skrajnych ścieŝkach, a najpóźniej niej - po przeciwnej stronie dysku. Nie ma głodzeniag C-SCAN (circular( scan) -po obsłuŝeniu ostatniego zamówienia na końcu dysku, głowica g wraca na początek i zaczyna od zera. N-step-SCAN - podział kolejki na podkolejki o długod ugości N. Kolejne podkolejki obsługiwane metodą SCAN do końca. FSCAN - dwie kolejki, jedna realizowana, nowe Ŝądania przychodzą do drugiej

Wejście-wyjście w róŝnych systemach operacyjnych MS-DOS Nazwy urządze dzeń zakończone dwukropkiem, np.. A:, C:, PRN: Odwzorowane sąs na określone adresy portów w za pomocą tablicy urządze dzeń. System operacyjny moŝe e przypisać kaŝdemu urządzeniu dodatkowych funkcji, np spooling dla drukarki UNIX Nazwy urządze dzeń są pamiętane w przestrzeni nazw systemu plików w (katalog /dev/ /devices) W strukturze katalogowej zamiast numeru I-węzła I a jest zapisany numer urządzenia w postaci pary <starszy,młodszy>. Starszy numer urządzenia identyfikuje moduł sterujący, który trzeba wywołać dla obsługi we-wy, wy, a młodszy jest przekazywany do modułu sterującego jako indeks do tablicy urządzeń. Wpis w tablicy urządzeń zawiera adres portu lub adres sterownika odwzorowany w pamięci

Wejście-wyjście w róŝnych systemach operacyjnych Strumień - kanał komunikacyjny pomiędzy procesem uŝytkownika a urządzeniem Strumień składa się z: - głowy - interfejs z programem uŝytkownika, u - zakończenia sterującego - interfejs z urządzeniem - modułów w przetwarzających - filtrów w na komunikatach płynących w strumieniu. KaŜdy ze składnik adników w strumienia zawiera co najmniej jedną parę kolejek: we i wy Kontrola przepływu w strumieniu realizowana jest za pomocą buforów w wejścia cia-wyjścia We-wy na strumieniu jest asynchroniczne Sterownik jest zawieszony do chwili pojawienia się danych Gdy bufor jest pełny - utrata komunikatów

Wejście-wyjście w róŝnych systemach operacyjnych Windows NT/2000 Cache manager - zarządza całym podsystemem wejścia cia- wyjścia Podsystem we-wy wy traktuje File System Drivers tak samo jak Device Drivers Network Drivers - sterowniki sieci Hardware Device Drivers - dostęp p do rejestrów w urządze dzeń wejścia cia-wyjścia Wejście cie-wyjście moŝe e być asynchroniczne i synchroniczne System ma wbudowane mechanizmy do sygnalizowania zakończenia asynchronicznego wejścia cia-wyjścia