Temat nr 10: System przerwań

Slides:



Advertisements
Podobne prezentacje
Tryby adresowania Prawie każda operacja wykonywana przez mikroprocesor wykonywana jest na pewnych argumentach (lub argumencie). Sposoby wskazywania argumentów.
Advertisements

Zerowanie mikroprocesorów Cel: wprowadzenie mikroprocesora w określony stan początkowy Zwykle realizowany poprzez: inicjalizację licznika rozkazów (PC)
Wirtualizacja zasobów w systemach operacyjnych
Co to jest BIOS ? Piotr Pierzchalski kl. III B.
Język C/C++ Funkcje.
C++ wykład 7 ( ) Wyjątki.
Mechanizmy pracy równoległej
Wykonał : Marcin Sparniuk
Odpytywanie - Polling Program czeka na nadejście danych z urządzenia i nie może wykonywać innych zadań. Urządzenie zewnętrzne dostarcza dane w trudnym.
Moduł 2. Struktury Systemów Komputerowych
System przerwań na podstawie DOS
Wykład 5 Przerwania w systemie SAB80C537 dr inż. Andrzej Przybył
Magistrale.
Podstawowe składniki funkcjonalne procesora i ich rola.
Systemy operacyjne Wykład nr 5: Wątki Piotr Bilski.
Systemy operacyjne Wykład nr 4: Procesy Piotr Bilski.
Wykład nr 2: Struktura systemu komputerowego a system operacyjny
C++ wykład 7 ( ) Wyjątki. Ogólne spojrzenie na wyjątki Wyjątki zaprojektowano do wspierania obsługi błędów. System wyjątków dotyczy zdarzeń synchronicznych.
Systemy operacyjne.
Magistrala & mostki PN/PD
Schemat blokowy komputera
Komputer, procesor, rozkaz.
ARCHITEKTURA WEWNĘTRZNA KOMPUTERA
Budowa systemów operacyjnych czasu rzeczywistego
Płyty główne BIOS.
Płyty główne Budowa.
ZARZĄDZANIE PROCESAMI
Wieloprocesowy system operacyjny dla komputerów ATARI XL/XE
Budowa Komputera.
Układy wejścia-wyjścia
Bios.
Co to jest BIOS? Artur Młynarski.
ogólne pojęcia struktury
Komputer a system komputerowy
przykładowy 8-bitowy mikroprocesor uniwersalny CISC
Mikroprocesor Z80 przerwania.
ogólne pojęcia struktury
Architektura komputerów
Opracowanie: Maria W ą sik. Pierwsze komputery budowano w celu rozwi ą zywania konkretnych problemów. Gdy pojawiało si ę nowe zadanie, nale ż ało przebudowa.
Opracowanie: Maria Wąsik
Płyta główna. Magistrale I/O
Wielozadaniowowść systemu operacyjnego Linux
Systemy operacyjne.
Zasada działania komputera
Budowa systemu komputerowego
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE
Etapy pracy biosu.
Podstawowe usługi systemów operacyjnych
Budowa i rodzaje procesorów.
Budowa i działanie komputera - jednostka
Przerwanie ang. interrupt.
Buforowanie D e f i n i c j a.
Koncepcja procesu Zadanie i proces. Definicja procesu Process – to program w trakcie wykonywania; wykonanie procesu musi przebiegać w sposób sekwencyjny.
Pamięć komputerowa S t r u k t u r a p a m i ę c i.
Architektura PC.
Elementy zestawu komputerowego
Etapy uruchamiania systemu Pliki konfiguracyjne
Wykład 7 Synchronizacja procesów i wątków
Wykład 3 Praca systemu komputerowego
Procesor, pamięć, przerwania, WE/WY, …
Architektury procesorów rdzeniowych mikrokontrolerów.
Procesy, wątki Program a proces Proces: Przestrzeń adresowa, kod, dane, stos (część pamięci do przechowania zmiennych lokalnych i niektórych adresów) Otwarte.
Tryby adresowania i formaty rozkazów mikroprocesora
Płyta główna. Magistrale I/O
Schemat blokowy komputera
TEMAT: Zapoznanie się z funkcja LICZNIKA w sterowniku Twido
POLITECHNIKA POZNAŃSKA
Mikrokontrolery System przerwań
TEMAT: Zapoznanie się z funkcja LICZNIKA w sterowniku Twido
Format rozkazu Tryby adresowania.
Zapis prezentacji:

Temat nr 10: System przerwań Dr inż.. T. Popkowski Architektura komputerów Sem. II: studia stacjonarne i niestacjonarne Temat nr 10: System przerwań Rola stosu systemowego Priorytety Maskowanie Tablice wektorów

Materiały źródłowe: http://pl.wikipedia.org Biernat J., Architektura komputerów, Oficyna Wydawnicza Politechniki Wrocławskiej, Wrocław 2002 Wojtuszkiewicz K., Jak działa komputer, Mikom, W-a 1999

Przerwania Komunikację procesora z otoczeniem przy użyciu rozkazów WE-WY całkowicie kontroluje program (system operacyjny) i odbywa się ona w chwilach z góry zaplanowanych przez programistę. W wielu przypadkach potrzebne jest jednak wejście, za pomocą którego urządzenie zewnętrzne może zażądać obsługi w dowolnej chwili, niezależnie od stanu aktualnie wykonywanego programu. Definicja: Przerwaniem nazywamy zawieszenie realizacji programu zasadniczego spowodowane sygnałem przerywającym. Może to być sygnał wewnętrzny - generowany rozkazem zawartym w programie lub (i tak bywa najczęściej) sygnał zewnętrzny wywołujący rozwidlenie programu.

Rodzaje przerwań: Zewnętrzne – sygnał przerwania pochodzi z zewnętrznego układu obsługującego przerwania sprzętowe; przerwania te służą do komunikacji z urządzeniami zewnętrznymi, np. z klawiaturą, napędami dysków itp. Wewnętrzne - nazywane wyjątkami (ang. exceptions) – zgłaszane przez procesor dla sygnalizowania sytuacji wyjątkowych (np. dzielenie przez zero); dzielą się na trzy grupy: faults (niepowodzenie) – sytuacje, w których aktualnie wykonywana instrukcja powoduje błąd; gdy procesor powraca do wykonywania przerwanego kodu wykonuje następną, po tej która wywołała wyjątek, instrukcję; traps (pułapki) – sytuacja, która nie jest błędem, jej wystąpienie ma na celu wykonanie określonego kodu; wykorzystywane przede wszystkim w debugerach; gdy procesor powraca do wykonywania przerwanego kodu tę samą instrukcję która wywołała wyjątek; aborts – błędy, których nie można naprawić. Programowe – z kodu programu wywoływana jest procedura obsługi przerwania; najczęściej wykorzystywane do komunikacji z systemem operacyjnym, który w procedurze obsługi przerwania umieszcza kod wywołujący odpowiednie funkcje systemowe w zależności od zawartości rejestrów ustawionych przez program wywołujący, lub oprogramowaniem wbudowanym jak procedury BIOS lub firmware.

Realizacja przerwania: pobranie rozkazu z pamięci spod adresu zawartego w rejestrze PC i przekazanie go magistralą danych do dekodera rozkazów. zwiększenie licznika rozkazów o jeden. żądanie obsługi ze strony urządzenia zewnętrznego rozpoczęcie procedury obsługi przerwania. (do procesora nadawany jest kod przerwania)

Realizacja przerwania, cd. zwiększenie licznika rozkazów o jeden. żądanie obsługi ze strony urządzenia zewnętrznego rozpoczęcie procedury obsługi przerwania. (do procesora nadawany jest kod przerwania)

realizacja przerwania cd. na stos odkładany jest starszy bajt licznika rozkazów komórkę pamięci do której zostaną wpisane dane wskazuje zawartość rejestru SP na stos odkładany jest młodszy bajt licznika rozkazów komórkę pamięci do której zostaną wpisane dane wskazuje zawartość SP - 1

realizacja przerwania cd. ustalenie nowej zawartości rejestru PC na podstawie numeru restartu wykonanie rozkazów z obszaru pamięci należącego do RST6 - lokalizację rozkazu wskazuje rejestr PC (licznik rozkazów) (po wykonaniu rozkazu RET) następuje powrót do miejsca w którym został przerwany główny program

realizacja przerwania cd. do licznika rozkazów ładowana jest wartość wcześniej odłożona na stos - (komórki stosu wskazuje rejestr SP) ładowanie młodszego bajtu licznika rozkazów, później starszego bajtu pobranie kolejnego rozkazu z programu głównego wskazanego zawartością rejestru PC.

Operacje wejścia / wyjścia z przerwaniem programu STEROWNIK PRZERWAŃ: Pośredniczenie w przyjmowaniu zgłoszeń przerwań pomiędzy mikroprocesorem, a innymi układami wejścia / wyjścia Przyjmowanie zgłoszeń przerwań od wielu układów wejścia / wyjścia Wybór z pośród kilku jednocześnie zgłoszonych przerwań tego, które zostanie obsłużony Zasygnalizowanie dokonanego wyboru przez podanie numeru (adresu) układu wejścia / wyjścia, z którym zostanie dokonana wymiana, a dokładniej, adresu programów obsługi przerwania realizującego tą wymianę Po przyjęciu sygnałów zgłoszeń przerwań od układów wejścia / wyjścia i wyborze układów, który będzie obsłużony, wygenerowanie sygnału zgłoszenia przerwania bezpośrednio do mikroprocesora.

Wykonanie operacji wejścia / wyjścia z przerwaniem programu

Schemat blokowy sterownika przerwań

Operacja maskowania sygnałów przerwań

Koniec!