SYSTEMY WEJŚCIA-WYJŚCIA

Podobne dokumenty
Działanie systemu operacyjnego

Urządzenia wejścia-wyjścia

Działanie systemu operacyjnego

Działanie systemu operacyjnego

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

Działanie systemu operacyjnego

System wejścia-wyjścia

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

Struktura systemów komputerowych

LEKCJA TEMAT: Zasada działania komputera.

Architektura komputerów

Budowa systemów komputerowych

Architektura systemów komputerowych. dr Artur Bartoszewski

Architektura komputera

URZĄDZENIA WEJŚCIA-WYJŚCIA

System wejścia-wyjścia

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

Architektura systemu komputerowego

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

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

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

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

Systemy operacyjne system przerwań

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

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

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

Klient-Serwer Komunikacja przy pomocy gniazd

IdyllaOS. Prosty, alternatywny system operacyjny. Autor: Grzegorz Gliński. Kontakt:

Architektura Systemów Komputerowych

Budowa karty sieciowej; Sterowniki kart sieciowych; Specyfikacja interfejsu sterownika sieciowego; Open data link interface (ODI); Packet driver

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

Systemy Operacyjne i Sieci Komputerowe

Mikroprocesor Operacje wejścia / wyjścia

Informatyka. informatyka i nauki komputerowe (computer science)

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

Wykład IV. Układy we/wy. Studia Podyplomowe INFORMATYKA Architektura komputerów

Wprowadzenie do systemów operacyjnych

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

Układy wejścia/wyjścia

KOMPUTER. Zestawy komputerowe podstawowe wiadomości

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

Technologia informacyjna. Urządzenia techniki komputerowej

Architektura komputerów

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 zewnętrzne

System komputerowy. System komputerowy

Systemy operacyjne. Paweł Pełczyński

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

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

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

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych

Działanie i charakterystyka sterownika GE FANUC VersaMaxNano

Schematy zarzadzania pamięcia

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

Sieciowe Systemy Operacyjne

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

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

NOWY OPIS TECHNICZNY PRZEDMIOTU ZAMÓWIENIA

Instrukcja programu użytkownika OmegaUW.Exe. Program obsługuje następujące drukarki fiskalne: ELZAB OMEGA II generacji ELZAB OMEGA F, MERA, MERA F.

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

1. Etapy rozwoju systemów komputerowych

Struktury systemów operacyjnych Usługi, funkcje, programy. mgr inż. Krzysztof Szałajko

System komputerowy. Sprzęt. System komputerowy. Oprogramowanie

DOS COMMAND.COM. Rys. 2. Główne moduły programowe systemu operacyjnego DOS. Interpreter poleceń. Rys. 3. Warstwowa struktura systemu DOS

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

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

MODEL WARSTWOWY PROTOKOŁY TCP/IP

IBM DCE/DFS. Mikołaj Gierulski. 17 stycznia 2003

Przykładowe zagadnienia na sprawdzian z wiedzy ogólnej. Linux to nazwa: A. Programu biurowego. B. Systemu operacyjnego. C. Przeglądarki internetowej.

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

Komputer IBM PC niezależnie od modelu składa się z: Jednostki centralnej czyli właściwego komputera Monitora Klawiatury

Pliki. Operacje na plikach w Pascalu

Warstwy systemu Windows 2000

OPIS TECHNICZNY PRZEDMIOTU ZAMÓWIENIA

router wielu sieci pakietów

Prezentacja systemu RTLinux

Interfejs urządzeń peryferyjnych

Technologie informacyjne - wykład 2 -

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

System plików. Warstwowy model systemu plików

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

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

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

Systemy operacyjne. dr inż. Jerzy Sas.

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

Prezentacja systemu plików NFS

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

Budowa Mikrokomputera

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

Architektura komputerów

Budowa Komputera część teoretyczna

PAMIĘĆ OPERACYJNA...107

urządzenie elektroniczne służące do przetwarzania wszelkich informacji, które da się zapisać w formie ciągu cyfr albo sygnału ciągłego.

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

Architektura i administracja systemów operacyjnych

Struktury systemów operacyjnych

Systemy operacyjne. Literatura: A. Silberschatz, J.L. Peterson, P.B. Galwin, Podstawy systemów operacyjnych, WNT, Warszawa 2006

Transkrypt:

SYSTEMY WEJŚCIA-WYJŚCIA Systemy wejścia-wyjścia mają na celu umożliwienie wprowadzania informacji do komputera (wpisywanie tekstu, odczytywanie i zapisywanie danych na urządzeniach pamięci masowej itp.) oraz jego wyprowadzanie (np. wyświetlanie na monitorze, drukowanie) Zadania systemu operacyjnego wobec systemów we-wy: - sterowanie nimi - sprawowanie nad nimi nadzoru - wypełnienie luki między interfejsem aplikacji a interfejsem urządzenia Podsystem wejścia-wyjścia (ang. I/O subsystem) zbiór metod w jądrze systemu operacyjnego, przeznaczony do obsługi urządzeń I/O. Sprzęt wejścia-wyjścia: - pamięci masowe (dyski, taśmy) - urządzenia komunikacji z użytkownikiem (monitory, klawiatury, myszki), - urządzenie komunikacyjne (karty sieciowe, modemy) - inne urządzenia specjalistyczne (kierownice, manetki,...) Elementy niezbędne do komunikacji: - łącze (kablowe lub bezprzewodowe) - port (ew. szyna) łącznik pomiędzy urządzeniem a komputerem - protokół zbiór dozwolonych komunikatów służących do przekazywania informacji Szyna jako połączenie wielu urządzeń, umożliwiające ich komunikację: PCI - szyna standardowo stosowana w komputerach osobistych: SCSI (ang. small computer system interface) szybka szyna służąca m.in. do podłączenia dysków twardych

Sterownik (ang. controller) zespół układów elektronicznych będących w stanie kierować pracą portu, szyny lub urządzenia (np. prosty sterownik portu szeregowego składa się z jednego układu scalonego). Sposoby przekazywania informacji do urządzenia: zapisywanie do rejestru sterownika zapisywanie do obszaru odwzorowanego rejestru w pamięci operacyjnej (tutaj np. starcze typu kart graficznych przechowują zawartość ekranu w ustalonym obszarze przestrzeni adresowej (fizycznej) procesora) Wymiana danych pomiędzy procesem biegnącym w procesorze a sterownikiem polega na: zapisywaniu informacji w rejestrze sterującym sterownika,

odczytywaniu informacji o aktualnym stanie sterownika z rejestru statutu, odczytywaniu i/lub zapisywaniu danych w rejestrze danych sterownika. Sposoby przekazywania informacji do urządzenia: zapisywanie do rejestru sterownika zapisywanie do obszaru odwzorowanego rejestru w pamięci operacyjnej (tutaj np. karty graficzne przechowują zawartość ekranu) Rejestry portu we-wy: - stan (ang. status) - sterowanie (ang. controll) - dane wejściowe (ang. data-in) - dane wyjściowe (data-out) Uzgadnianie (ang.handshaking) sposób koordynowania współpracy procesor sterownik urządzenia: 1. procesor główny powtarza czytanie bitu zajętości, dopóki nie przyjmie wartości 0 - jest to tzw. aktywne oczekiwanie, czyli odpytywanie (ang. polling) 2. procesor główny ustawia bit pisania (ang. write bit) w rejestrze poleceń i wpisuje bajt do rejestru danych wejściowych 3. procesor główny ustawia bit gotowości poleceń 4. gdy sterownik zauważy, że bit gotowości polecenia jest ustawiony, wówczas ustawia bit zajętości 5. sterownik czyta rejestr poleceń i rozpoznaje polecenie pisania. Czyta więc bajt z rejestru danych wyjściowych i wykonuje na urządzeniu operacje we-wy 6. sterownik czyści bit gotowości polecenia oraz bit błędu (ang. error bit) w rejestrze stanu (powiadamia, że operacja we-wy zakończyła się pomyślnie) a następnie czyści bit zajętości (sygnalizuje zakończenie działania) Polling metoda oczekiwania na wystąpienie określonego stanu urządzenia lub grupy urządzeń o podobnej funkcji polegająca na

cyklicznym odpytywaniu (odczytywaniu) rejestru stanu urządzenia, wydajna jedynie, gdy urządzenie jest często gotowe do wykonania operacji. Bezpośredni dostęp do pamięci: PIO (Programmed Input/Output) programowane wyjście-wyjście - bezspośrednia obsługa urządzeń we-wy przez procesor główny. Gdy urządzenie (np. pamięć masowa) przekazuje do/z procesu duże ilości danych dostęp taki jest nieefektywny, ponieważ wymaga angażowania mocy procesora, a w środowisku wieloprocesowym również częstego przełączania procesów lub wykonywania operacji obsługi przerwań. DMA (Direct Memory Access) urządzenie we-wy obsługiwane jest przez wyspecjalizowany procesor, tzw. sterownik bezpośredniego dostępu do pamięci. W ten sposób procesor główny zostaje odciążony.

Uzgadnianie w trybie DMA pomiędzy sterownikiem DMA a sterownikiem urządzenia odbywa się za pomocą pary sygnałów: zamówieniem DMA (ang. DMA request) potwierdzeniem DMA (ang. DMA acknowledge) DVMA (ang. Direct Virtual Memory Access) bezpośredni dostęp do pamięci wirtualnej pozwala dokonywać przesyłania pomiędzy dwoma urządzeniami odwzorowanymi w pamięci (nie angażując procesora głównego). Użytkowy interfejs wejścia-wyjścia: Taka strukturalizacja systemu operacyjnego pozwala na jednolite traktowanie bardzo zróżnicowanych urządzeń we-wy (dzięki temu np. aplikacja może utworzyć plik na dysku, nie znając jego producenta i zestawu poleceń rejestru obsługujących ten dysk).

API - Interfejs (ang. Application Program Interface) w odniesieniu do systemów wejścia-wyjścia - ustandaryzowany zbiór funkcji pozwalających na dostęp do danego typu urządzeń. Moduły sterujące (popularnie: sterowniki lub drivery) moduły jądra systemu przystosowane do obsługi konkretnych typowych urządzeń działających zgodnie z standardowym interfejsem sprzętowym. Na zewnątrz udostępniają ustandaryzowany API. Mają na celu ukrywać różnice w poszczególnych urządzeniach przed podsystemem wejścia-wyjścia w jądrze. Producenci sprzętu niezgodnego z żadnym interfejsem sprzętowym dołączają specjalizowane moduły sterujące, które mają na celu stworzenie nowego interfejsu między urządzeniem a systemem operacyjnym (stąd moduły te są dedykowane do konkretnych systemów operacyjnych i konkretnych urządzeń).

Klasyfikacja urządzeń: Urządzenia blokowe (np. dysk): Urządzenia tego typu przesyłają duże ilości danych w blokach o określonej wielkości (512b, 1 kb, 4kB, 8kB...) z dużą szybkością. Jednostką przesyłania jest blok. Urządzenie tego typu wykonuje polecenia typu: czytaj blok(read), pisz blok(write). Dostęp z aplikacji do urządzeń blokowych: poprzez system plików, w trybie raw I/O. Tryb raw I/O (surowego wejścia wyjścia) urządzenie traktowane jak zwykła, liniowa tablica bloków. Metoda stosowana w przypadku jeśli aplikacja sama organizuje przestrzeń pamięci masowej (np. serwer bazy danych) Urządzenia znakowe (np. klawiatura): Urządzenia tego typu przesyłają małe ilości danych z niewielką częstotliwością. Jednostką przesyłania jest pojedynczy znak.

Urządzenie tego typu wykonuje polecenia: pobierz(get) jeden znak, przekaż(put) jeden znak. Urządzenia sieciowe: Interfejs gniazda sieciowego pozwala podłączyć się do innych procesów na tym samym lub innym komputerze, wysyłać i odbierać pakiety. Wyróżnia się dwie strony połączenia: aktywną (inicjującą połączenie) klient, pasywną (oczekującą na inicjację połączenia) serwer. Podstawowe polecenie: Zegary i czasomierze: Funkcje: - podawanie bieżącego czasu - podawanie upływającego czasu - powodowanie przez odpowiednio nastawiony czasomierz wykonania operacji X w chwili czasu T Czasomierz programowalny po upływie określonego czasu wywołuje przerwanie. Z niego korzysta m.in. planista przydziału procesora określa czas przyznawany poszczególnym procesom) podsystem dyskowego we-wy powoduje czasowe opróżnianie buforów podręcznych podsystem sieciowy kasuje operacje wykonywane zbyt długo (np. spowodowane awarią), odmierza okres tzw. timeout'u Buforowanie: Bufor (ang. buffer) obszar pamięci, w którym przechowuje się dane przesyłane między dwoma urządzeniami lub między urządzeniem a aplikacją. Powody buforowania: 1. dysproporcje między szybkością strumienia danych producenta i konsumenta

2. dopasowanie urządzeń przesyłających jednostki danych o różnych wielkościach 3. potrzeba zapewnienia semantyki kopii na wejściu i wyjściu (gwarantuje, że wersja danych zapisywana na dysku jest wersją z chwili odwołania się aplikacji do systemu niezależnie od późniejszych zmian w buforze aplikacji) bufor aplikacji -> bufor jądra -> zapis na dysku Pamięć podręczna (ang. cache) obszar szybkiej pamięci, w której przechowuje się kopie danych (dostęp do danych w cache u jest szybszy niż do oryginału). Różnica pomiędzy buforem a pamięcią podręczną: Bufor zawiera jedyną kopię struktury danych Cache obszar który zawiera kopię danych istniejących gdzie indziej Spooling i rezerwowanie urządzeń: Spooling użycie bufora do przechowywania danych przeznaczonych dla danego urządzenia, które jednak nie dopuszcza przeplatania danych w przeznaczonym dla niego strumieniu. M.in. drukarka może w danej chwili wykonywać tylko jedno zadanie, podczas gdy spooling umożliwia wielu aplikacjom gotowość do drukowania wyników współbieżnie. Dane wysyłane przez poszczególne aplikacje są gromadzone przez system operacyjny w osobnych plikach-buforach, po czym w drukowane w kolejności tworzenia plików-buforów.

Przekształcanie zamówień wejścia-wyjścia na operacje sprzętowe:

SYSTEM PLIKÓW NFS NFS (ang. Network File Sysytem) sieciowy system plików umożliwia dostęp do plików w zdalnych sieciach lokalnych. Dostępny w większości wersji systemu UNIX. Idea systemu: zbiór połączonych ze sobą stacji roboczych traktuje się jako zbiór niezależnych maszyn z niezależnymi systemami plików. Cel systemu: umożliwienie dzielenia zasobów między różnymi systemami plików. Operacja montowania: polega na podłączeniu zdalnego systemu plików do lokalnego w ten sposób, że wygląda on jak integralne poddrzewo lokalnego systemu plików. Przed zamontowaniem: Po zamontowaniu:

System NFS stworzony został z myślą o działaniu w heterogenicznym środowisku różnych maszyn, systemów operacyjnych i architektur sieciowych w związku z czym jest od nich niezależny (dzięki użyciu elementarnych wywołań RPC Remote Procedure Call zdalne wywoływanie procedur). Protokół NFS: dostarcza zbioru wywołań procedur zdalnych do obsługi zdalnych operacji plikowych. Możliwości protokołu: szukanie plików w obrębie katalogu czytanie zbioru wpisów katalogowych manipulowanie dowiązaniami i katalogami dostęp do atrybutów plików czytanie i pisanie plików Serwery NFS są bezstanowe nie utrzymują informacji o użytkownikach między jednym a drugim dostępem. Architektura NFS:

Warstwy systemu plików: 1. system plików UNIX umożliwia funkcje otwierania, czytania, pisania i zamykania plików oraz funkcje na deskryptorach plików 2. VFS (Virtual File System) wirtualny system plików a. oddziela operacje plikowe od ich implementacji b. zawiera v-węzły jednoznaczny w całej sieci oznacznik pliku Tłumaczenie nazwy ścieżki: odbywa się poprzez pocięcie ścieżki na nazwy składowe i wykonywanie osobnego przeszukania NFS dla każdej pary złożonej z nazwy składowej i v-węzła katalogu.