Architektura Systemów Komputerowych

Wielkość: px
Rozpocząć pokaz od strony:

Download "Architektura Systemów Komputerowych"

Transkrypt

1 Architektura Systemów Komputerowych Wykład 12: Zarządzanie zasobami komputera. Sytuacje wyjątkowe. Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie

2 Plan Zarządzanie zasobami komputera: Potrzeby ochrony w systemie wieloprocesorowym Ogólne zasady ochrony zasobów Użytkownik i system Poziomy zaufania Ochrona procesora Ochrona urządzeń wejścia-wyjścia Maszyny wirtualne Sytuacje wyjątkowe: Definicja i podział sytuacji wyjątkowych Zasady obsługi sytuacji wyjątkowych Priorytety sytuacji wyjątkowych Szczególne sytuacje wyjątkowe

3 Potrzeby ochrony Współczesne komputery pracują, z wieloprocesowymi i wieloużytkowymi systemami operacyjnymi Procesy nie mogą sobie nawzajem przeszkadzać ani się szpiegować żadne błędne lub świadomie destrukcyjne zachowanie procesu nie może powodować zakłóceń w pracy innych procesów i całego systemu proces nie może mieć dostępu do danych innego procesu bez jego wiedzy Konieczne jest wprowadzenie mechanizmów ochrony, które zabezpieczą przed błędnymi lub świadomymi akcjami programów w celu zagwarantowania poprawnej pracy pozostałych procesów

4 Zasoby podlegające ochronie Procesor proces nie może zmonopolizować czasu procesora inne procesy muszą mieć możliwość wykonywania się (inne aspekty ochrony procesora - w dalszej części wykładu) Pamięć proces może mieć dostęp tylko do przydzielonej mu pamięci ew. do danych współdzielonych - za zgodą innego procesu proces nie powinien odwoływać się do własnej pamięci w nieprawidłowy sposób (np. zapis stałych. odczyt lub zapis kodu, wykonanie danych) Wejście - wyjście dostęp do urządzeń zewnętrznych musi być realizowany w taki sposób, aby procesy nie przeszkadzały sobie nawzajem w praktyce uzyskuje się to przez całkowite uniemożliwienie bezpośrednich odwołań do urządzeń

5 Użytkownik i system Realizacja mechanizmów ochrony wymaga wyodrębnienia co najmniej dwóch poziomów uprawnień tzw. Poziomów zaufania Procesy użytkowe pracują na poziomie użytkownika, na którym podlegają one zasadom określonym przez system operacyjny System operacyjny pracuje na poziomie systemowym, na którym istnieje możliwość określania zasad ochrony obowiązujących procesy użytkowe Zakłada się, że oprogramowanie działające na poziomie systemowym jest zaufane czyli wolne od błędów Oprogramowanie działające na poziomie użytkownika może zawierać dowolne błędy i nie mogą one wpływać destrukcyjnie na działanie systemu

6 Poziomy zaufania W prostych realizacjach systemów ochrony występują dwa lub trzy poziomy zaufania poziom jądra systemu pełny dostęp do wszystkich zasobów poziom usług systemu (opcjonalny) dostęp ograniczony, ale o znacznych uprawnieniach poziom użytkownika dostęp do zasobów przydzielonych przez system. na zasadach określonych przez system Dostęp do zasobów zależy od poziomu zaufania w każdej chwili procesor pracuje z określonym poziomem zaufania Informacja o bieżącym poziomie zaufania jest przechowywana w procesorze najczęściej w systemowym rejestrze stanu procesora informacja ta ma postać jednego lub dwóch bitów, w zależności od liczby poziomów zaufania dostępnych w danej architekturze

7 Poziomy zaufania x86 Cztery poziomy zaufania 0 jądro 1, 2 dodatkowe poziomy systemowe 3 użytkownik Współczesne oprogramowanie korzysta z dwóch poziomów: 0 i 3 Informacja o bieżącym poziomie zaufania jest przechowywana w niewidocznym programowo rejestrze deskryptora segmentu kodu informacja ta ma postać pola 2-bitowego oznaczonego jako CPL(Current Privílege Level)j

8 Ochrona procesora W celu umożliwienia sterowania mechanizmami ochrony procesor jest wyposażony w rejestry zawierające informacje sterujące np. bieżący poziom zaufania Dostęp do tych rejestrów jest możliwy tylko na poziomie systemowym w przeciwnym razie użytkownik mógłby np. zmienić poziom zaufania na systemowy Rejestry systemowe procesora muszą podlegać ochronie

9 Egzekwowanie zasad ochrony Każda próba naruszenia zasad ochrony musi być wykryta i udaremniona oraz zgłoszona systemowi operacyjnemu jako wyjątek więcej o wyjątkach w dalszej części wykładu Próba nie dochodzi do skutku i sterowanie przejmuje system operacyjny System ma możliwość zakończenia wykonania procesu naruszającego zasady ochrony i usunięcia go

10 Ochrona czasu procesora System wieloprocesowy musi przełączać procesy w czasie Proces nie może zmonopolizować procesora nawet jeśli wpadnie w pętlę nieskończoną Praca z przydziałem czasu jest realizowana poprzez periodyczne przejmowanie kontroli przez system operacyjny dzieje się to przez zgłoszenie wyjątku przez zegar systemowy częstotliwość w zależności od potrzeb - od kilkudziesięciu Hz do kilku khz Po przejęciu sterowania system ma możliwość usunięcia procesu dzieje się to zwykle na życzenie użytkownika, który zauważył zawieszenie procesu

11 Ochrona urządzeń we/wy Zwykle realizowana przez całkowite odizolowanie procesów użytkowych od fizycznych urządzeń próba dostępu jest blokowana i sygnalizowana jako wyjątek Fizyczną obsługą urządzeń zajmuje się system operacyjny system operacyjny udostępnia aplikacjom obiekty wirtualne, które są powiązane z urządzeniami w sposób określony przez sam system przykład strumienie STDIN i STDOUT w języku C W niektórych sytuacjach system może zezwolić na wyłączny dostęp pojedynczego procesu do urządzenia przykład: współpraca ze sterownikiem graficznym dla aplikacji intensywnych graficznie podsystem DirectX w Windows

12 Ochrona pamięci Ochrona pamięci jest najbardziej skomplikowanym aspektem ochrony zasobów proces musi mieć dostęp do pamięci mu przydzielonej, a jednocześnie nie może odwoływać się poza przedzielony obszar Temat omówiony na poprzednim wykładzie

13 Maszyny wirtualne W niektórych zastosowaniach może istnieć potrzeba równoczesnej pracy kilku systemów operacyjnych na jednym komputerze Jest to podobne do pracy aplikacji z podziałem czasu, ale system operacyjny musi mieć możliwość sterowania ochroną zasobów Współdzielenie komputera przez kilka systemów wymaga: oprogramowania nadrzędnego w stosunku do systemów - tzw. Hypervisora obniżenia poziomu zaufania systemu w sposób, który nie byłby zauważalny przez pracujący w ten sposób system

14 Maszyny wirtualne implementacja Dawniej: system na poziomie zaufania użytkownika, hypervisor na poziomie zaufania systemu hypervisor emuluje programowo wszelkie operacje o charakterze systemowym Obecnie: próba dostępu do zasobów systemowych powoduje wyjątek, obsługiwany przez hypervisora wymaganie: każda próba odczytu (a nie tylko modyfikacji) informacji systemowych musi być sygnalizowana jako błąd do hypervisora dodatkowy poziom zaufania hypervisora albo hypervisor na poziomie dawnym systemowym (tzw. gospodarz host) i tryb gościa (guest) dla systemów operacyjnych np. AMD64 operacje na niektórych zasobach dostępne tylko w trybie gospodarza

15 SYTUACJE WYJĄTKOWE

16 Wyjątek - definicja Zdarzenie w systemie komputerowym wymagające przerwania wykonania bieżącego strumienia instrukcji i przekazania sterowania do systemu operacyjnego

17 Podział wyjątków Przerwania Pułapki Błędy

18 Przerwania Powstają poza procesorem za wyjątkiem asynchronicznego przerwania programowego Asynchroniczne względem wykonywanego strumienia instrukcji ich wystąpienie nie jest bezpośrednim wynikiem wykonania konkretnej instrukcji Służą do sygnalizacji zdarzeń istotnych dla systemu operacyjnego zmiana kontekstu urządzeń zewnętrznych, np.: wciśnięcie klawisza na klawiaturze, przesunięcie myszy nadejście pakietu z sieci lokalnej zakończenie transmisji danych do/z pamięci masowej upłynięcie określonego odcinka czasu zegar systemowv służący do periodycznego przełączania procesów w systemie wieloprocesorowym budzenie procesu o określonym czasie

19 Pułapki Generowane przez procesor Powodowane przez konkretną instrukcję, na końcu wykonania instrukcji ściśle synchroniczne względem instrukcji Rodzaje: wywołanie usługi systemu operacyjnego przez program użytkowy (często nazywana przerwaniem programowym ) MIPS instrukcja SYSCALL sygnalizacja do systemu operacyjnego błędów wykonania wykrytych przez program użytkowy MIPS instrukcje ADD, SUB w przypadku wystąpienia nadmiaru generują pułapkę x86 instrukcje dzielenia DIV, IDIV, AAM generują pułapkę przy nadmiarze pułapka śledzenia (trace trap) wygenerowana po wykonaniu dowolnej instrukcji przy ustawionym trybie śledzenia

20 Błędy Generowane na ogół przez procesor zarówno przez jednostkę wykonawczą jak i przez jednostkę zarządzania pamięcią wyjątek błąd transmisji generowany poza procesorem Wynikają z wykonywanych instrukcji, ale nie zawsze w sposób jednoznaczny Służą do sygnalizacji błędnych i niedozwolonych zachowań oprogramowania i sprzętu próba wykonania niezdefiniowanej instrukcji błąd wyrównania przy dostępie do pamięci naruszenie zasad ochrony Procesora Pamięci Wykorzystywane do implementacji systemu pamięci wirtualnej

21 Obsługa wyjątków Każdy wyjątek musi być obsłużony Istnieją dwa pojęcia obsługi: na poziomie oprogramowania - reakcja programowa systemu operacyjnego na zdarzenie np. przesłanie kolejnej porcji danych do urządzenia zgłaszającego gotowość przełączenie procesów przy przerwaniu zegarowym na poziomie procesora zespół czynności, których efektem jest zaniechanie wykonywania bieżącego strumienia instrukcji i rozpoczęcie wykonania programowej procedury systemu operacyjnego obsługa wyjątku przez system operacyjny rozpoczyna się z chwilą zakończenia obsługi wyjątku przez procesor

22 Fazy obsługi wyjątków przez procesor Rozpoznanie i identyfikacja źródła wyjątku Przerwanie wykonania strumienia instrukcji i zapamiętanie bieżącego kontekstu procesora Załadowanie nowego kontekstu procesora i rozpoczęcie wykonywania nowego strumienia instrukcji procedury systemowej zapewniającej programową reakcję systemu na wyjątek

23 Identyfikacja wyjątku Jeśli wyjątek powstał w procesorze (pułapka, błąd) procesor zna dokładną jego przyczynę identyfikacja jest zbędna Przerwania: w zależności od budowy systemu przerwań identyfikacja może być przeprowadzona później przez oprogramowanie albo w chwili wykrycia wyjątku przez sprzęt procesora identyfikacja przez procesor wymaga przeprowadzenia zapytania, w postaci specjalnego cyklu transmisji cyklu identyfikacji przerwania w odpowiedzi na cykl identyfikacji procesor otrzymuje z zewnątrz identyfikator przerwania w postaci liczby o długości od 4 do 9 bitów X86 8 bitów M88k 9 bitów mikrokontrolery 8- i 16-bitowe 4 8 bitów identyfikator jest generowany przez układ arbitrażu przerwań

24 Zapamiętanie kontekstu Co zapamiętywać? informacje o stanie procesora, które zostaną samoczynnie zmodyfikowane przez procesor w czasie obsługi wyjątku zawsze PC i rejestr stanu z informacjami systemowymi rejestry uniwersalne zbędne, bo może to zrobić oprogramowanie informacje niezbędne do rozpoznania dokładnej przyczyny wyjątku, a które mogą zostać zamazane w trakcie wykonania programu informacje o odwołaniu do pamięci przy błędzie dostępu Gdzie zapamiętywać? w miejscu naturalnym dla danej architektury Po co? CISC na stosie RISC zwykle w rejestrach powrót po obsłudze komunikat diagnostyczny w przypadku usunięcia błędnego procesu

25 Składowanie kontekstu licznik rozkazów Zapamiętywany w celu powrotu do przerwanego programu lub wyświetlenia komunikatu o błędzie Podczas wyjątku wartość nextpc nie zawsze jest dostępna błędy przerywają wykonanie instrukcji instrukcja niedokończona Zapamiętywana wartość: nextpc wskazuje na następną instrukcję po tej, w czasie której wykryto wyjątek przerwania pułapki wywołania systemu i śledzenia currentpc wskazuje na bieżącą instrukcję pułapki sygnalizujące błąd wykonania (potrzebna identyfikacja miejsca błędu) błędy wykonanie instrukcji było niemożliwe jeśli nastąpi powrót, to ponownie do tej samej instrukcji Niektóre procesory RISC zapamiętują nextpc+4 lub nextpc+8

26 Zmiany kontekstu systemowego w czasie obsługi wyjątku Obsługa wyjątku powoduje zawsze przejście w tryb systemowy podczas wystąpienia wątku procesor mógł być w trybie systemowym lub użytkownika należy zapamiętać poziom zaufania z chwili wystąpienia wyjątku Przy obsłudze wyjątku jest wyłączany tryb śledzenia bit śledzenia znajduje się w rejestrze stanu procesora Przy obsłudze przerwania procesor zmienia poziom wrażliwości na przerwanie należy zapamiętać poziom wrażliwości (tzw. maskę przerwań) z chwili wystąpienia przerwania Wszystkie powyższe informacje znajdują się zwykle w systemowym rejestrze stanu procesora podczas obsługi wyjątków należy zapamiętać systemowy rejestr stanu

27 Składowanie PC i rejestru stanu W procesorach RISC: zawartość PC i SR kopiowana do rejestrów cieni alternatywa przełączenie banku rejestrów (w procesorach z oddzielnymi rejestrami do obsługi wyjątków) W procesorach CISC: PC i SR zapamiętywane na stosie program użytkowy nie daje gwarancji integralności stosu wartość SP może być nieważna kontekst jest składowany na stosie systemowym każdemu poziomowi zaufania odpowiada oddzielny stos kolejność czynności: utworzenie tymczasowej kopii rejestru stanu przełączenie w tryb systemowy (modyfikacja rejestru stanu) zapamiętanie tymczasowej kopii rejestru stanu na stosie systemowym

28 Przełączanie stosów w procesorach CISC Każdemu poziomowi zaufania odpowiada oddzielny stos Przy zmianie poziomu zaufania następuje przełączenie stosów można to zrealizować na dwa sposoby oddzielny rejestr wskaźnika stosu dla każdego poziomu zaufania (np. M68k) przeładowanie wskaźnika stosu przez procesor przy użyciu wartości zapisanych w pamięci (np. x86) Na danym poziomie zaufania oprogramowanie może mieć dostęp do własnego wskaźnika stosu i wskaźników stosów poziomów mniej zaufanych oprogramowanie systemowe może inicjować wskaźnik stosu użytkownika instrukcje dostępu do alternatywnych wskaźników stosu są dozwolone tylko w trybie systemowym

29 Informacje potrzebne do obsługi błędu Błąd różni się od innych wyjątków tym, że uniemożliwia wykonanie bieżącej instrukcji nextpc jest niedostępny lub nieważny zapamiętuje się currpc Błąd sygnalizowany przez MMU może wynikać z pobrania instrukcji lub z dostępu do danych do identyfikacji przyczyny błędu potrzebna jest informacja o adresie i rodzaju odwołania, które spowodowało błąd sam adres instrukcji nie umożliwia jednoznacznej identyfikacji przyczyny błędu Niektóre architektury umożliwiają wykonywanie odwołań w trybie systemowym z poziomem zaufania użytkownika ułatwia to ochronę systemu poziom zaufania odwołania musi być w takim przypadku zapamiętany niezależnie od poziomu zaufania procesora

30 Informacje zapamiętywane przy błędzie strony x86 Na stosie systemowym: rejestr stanu procesora adres instrukcji, która spowodowała błąd kod błędu słowo 32-bitowe bit 0: 0 deskryptor nieważny, 1 błąd ochrony bit 1: 0 błąd podczas odczytu, 1 błąd podczas zapisu bit 2: 0 błąd w trybie systemowym, 1 błąd w trybie użytkownika bit 3: 1 jeśli w deskryptorze strony napotkano ustawiony bit zarezerwowany bit 4: 1 jeśli błąd powstał podczas pobierania instrukcji W rejestrze systemowym CR2 adres odwołania, które spowodowało błąd

31 System przerwań Procesor może pracować na wielu poziomach priorytetowych różniących się wrażliwością na przerwania jednopoziomowy system przerwań (np. x86) dwa poziomy: przerwania zablokowane przerwania odblokowane wielopoziomowy system przerwań 3 16 poziomów wrażliwości przerwania przypisane do poziomów priorytetowych przerwania od szybkich urządzeń wyższe poziomy przerwania od wolnych urządzeń niższe poziomy Informacja o aktualnym poziomie wrażliwości jest przechowywana w rejestrze stanu procesora jest to tzw. maska przerwań poziom może być zmieniany tylko przez oprogramowanie systemowe wykonanie niektórych procedur jądra wymaga zablokowania przerwań (sekcje krytyczne)

32 Zmiany poziomu wrażliwości Podczas obsługi przerwania procesor modyfikuje poziom wrażliwości tak, aby nie były przyjmowane następne przerwania o poziomie tym samym lub niższym, co aktualnie obsługiwane w przypadku jednopoziomowego systemu przerwań oznacza to zablokowanie przerwań Ponieważ poziom jest samoczynnie zmieniany, dotychczasowy poziom musi być zapamiętany podczas obsługi przerwania Istnieją przerwania obsługiwane niezależnie od ustawionego w procesorze poziomu maski przerwań są to tzw. Przerwania niemaskowalne przerwań niemaskowalncvh używa się do sygnalizacji sytuacji krytycznych, np. awarii zasilania

33 Załadowanie nowego kontekstu Po zapamiętaniu informacji potrzebnych do obsługi wyjątku i ew. powrotu z tej obsługi, procesor rozpoczyna wykonanie systemowej procedury obsługi wyjątku nowe wartości są ładowane do licznika rozkazów, rejestru stanu i ew. w niektórych architekturach również do innych rejestrów Typowe rozwiązania: wspólny punkt wejścia dla wszystkich wyjątków, procedura obsługi identyfikuje rodzaj wyjątku na drodze programowej i wywołuje odpowiedni podprogram (np. MIPS) kilka lub kilkanaście ustalonych adresów początkowych procedur obsługi wyjątków (niektóre mikrokontrolery) tablica adresów lub struktur danych opisujących procedury obsługi - tzw. wektorowy system przerwań stosowany w większości procesorów uniwersalnych i w bardziej rozbudowanych mikrokontrolerach

34 Wektorowy system obsługi wyjątków Informacja uzyskana w fazie identyfikacji źródła wyjątku ma postać liczby W pamięci jest przechowywana tablica, której każdy element zawiera informacje potrzebne do wywołania procedury obsługi wyjątku tablica ta zajmuje ustalone miejsce w przestrzeni adresowej (zwykle na początku lub na końcu) albo jest wskazywany przez specjalny rejestr systemowy W zależności od architektury, element tablicy może zawierać: adres początkowy procedury (np. M68k) jedną lub więcej instrukcji procedury (zwykle jest to instrukcja skoku do właściwej procedury) ARM, 51, Alpha AXP deskryptor zawierający adres początkowy procedury i inne informacje x86

35 Wyjątki w x86 Numer Symbol Opis 0 #DE Nadmiar dzielenia stałopozycyjnego 1 #DB Zarezerwowane 2 Przerwanie niemaskowalne (NMI) 3 #BP Pułapka śledzenia, jednostka wspomagania uruchamiania 4 #OF Pułapka przy nadmiarze 5 #BR Przekroczenie zakresu danej instrukcja BOUND 6 #UD Niezdefiniowany kod operacyjny 7 #NM Brak jednostki zmiennopozycyjnej 8 #DF Błąd podwójny 10 #TS Wyjątek związany z przełączaniem zadań (TSS) 11 #NP Nieważny deskryptor segmentu 12 #SS Błąd dostępu do segmentu stosu 13 #GP Ogólny błąd ochrony (jednostka segmentacji) 14 #PF Błąd stronicowania 15 Zarezerwowane 16 #MF Błąd obliczeń jednostki zmiennopozycyjnej x87 17 #AC Błąd wyrównywania danych 18 #MC Błąd sprzętowy procesora 19 #XF Wyjątek (błąd obliczeń) jednostki SSE

36 Wyjątki w ARM7 Procesor rozpoznaje 8 wyjątków 0 inicjowanie systemu 1 niezidentyfikowana instrukcja 2 pułapka wywołania systemu (SWI software interrupt) 3 błąd pobrania instrukcji 4 błąd dostępu do danych 5 ( pusty) 6 przerwanie (IRQ) 7 przerwanie szybkie (FIQ) Podczas obsługi następuje skok do adresu 4 * nurner_wyjątku pod adresem tym znajduje się instrukcja skoku do właściwej procedury obsługi dla ostatniego wyjątku przerwania szybkiego procedura może zaczynać się od adresu 0x1C, bo jest to ostatni element tablicy

37 ARM7 obsługa wyjątków

38 Powrót z obsługi wyjątku Nie z każdej obsługi wyjątku powrót jest możliwy błąd ochrony może wymagać zamknięcia programu Powrót polega na odtworzeniu informacji zapamiętanych podczas obsługi (co najmniej PC i rejestr stanu) służy do tego specjalna instrukcja powrotu z obsługi wyjątku instrukcja ta jest dozwolona wyłącznie w trybie systemowym, w przeciwnym razie użytkownik mógłby załadować nową wartość rejestru stanu i zmienić poziom zaufania na systemowy W praktyce systemów operacyjnych obsługa wyjątku często kończy się przełączeniem procesu powrót z wyjątku następuje do innego strumienia instrukcji, niż strumień przerwany przez wątek wykorzystywany mechanizm jest identyczny jak przy powrocie do przerwanego strumienia instrukcji

39 Asynchroniczne przerwanie programowe Mechanizm implementowany w niektórych procesorach pożyteczny w systemach czasu rzeczywistego Umożliwia zgłoszenie asynchronicznego, maskowalnego przerwania przez sam procesor Przerwanie zostaje obsłużone, gdy poziom wrażliwości procesora na przerwania osiągnie odpowiednią wartość Zwykle używa się tego mechanizmu do zgłoszenia przerwania o niższym priorytecie z procedury obsługi przerwania o wyższym priorytecie cel: kontynuacja akcji wynikających z przerwania przy zachowaniu możliwości reakcji na przerwania o niższych priorytetach można w ten sposób uniknąć inwersji priorytetów, czyli sytuacji, gdy procesor wykonuje czynność o niskim priorytecie jednocześnie nie obsługując przerwania o wyższym priorytecie

40 Błąd podwójny Podczas obsługi sytuacji wyjątkowych procesory CISC wykonują serię odwołań do pamięci (składowanie kontekstu, ładowanie nowego kontekstu) nie wynikających z wykonania instrukcji Podczas tych odwołań procesor nie ma ważnej wartości licznika rozkazów Odwołania te mogą spowodować błąd związany z zarządzaniem pamięciąj

41 Inicjowanie działania procesora - Reset W wielu procesorach inicjowanie działania jest traktowane jako wyjątek o najwyższym priorytecie Powoduje natychmiastowe przekazanie sterowania pod ustalony adres Nie wymaga składowania kontekstu

42 Priorytety sytuacji wyjątkowych Priorytet określa pilność obsługi danego wyjątku Dwa aspekty priorytetów odpowiadają dwóm pojęciom obsługi na poziomie procesora na poziomie systemu operacyjnego Priorytety na poziomie systemu wynikają z pilności zdarzenia przerwania krytyczne czasowo pułapki (wywołanie systemu) decyduje o wydajności aplikacji Błędy usunięcie programu, pamięć wirtualna Priorytety na poziomie procesora wynikają z logicznej sekwencji czynności w procesorze błędy w razie błędu nie można zakończyć wykonania instrukcji pułapki obsługa stanowi ostatnią fazę wykonania instrukcji przerwania obsługiwane po zakończeniu wykonania instrukcji

43 DZIĘKUJĘ ZA UWAGĘ!

3 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.06 Rok akad. 2011/2012 2 / 22

3 Literatura. c Dr inż. Ignacy Pardyka (Inf.UJK) ASK SP.06 Rok akad. 2011/2012 2 / 22 ARCHITEKTURA SYSTEMÓW KOMPUTEROWYCH struktury procesorów ASK SP.06 c Dr inż. Ignacy Pardyka UNIWERSYTET JANA KOCHANOWSKIEGO w Kielcach Rok akad. 2011/2012 1 Maszyny wirtualne 2 3 Literatura c Dr inż. Ignacy

Bardziej szczegółowo

Przerwania, polling, timery - wykład 9

Przerwania, 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ółowo

Metody obsługi zdarzeń

Metody 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ółowo

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

PRZERWANIA. 1. Obsługa zdarzeń, odpytywanie i przerwania Obsługa zdarzeń jest jedną z kluczowych funkcji w prawie każdym systemie czasu rzeczywistego. PRZERWANIA 1. Obsługa zdarzeń, odpytywanie i Obsługa zdarzeń jest jedną z kluczowych funkcji w prawie każdym systemie czasu rzeczywistego. Istnieją dwie metody pozyskania informacji o zdarzeniach: 1. Cykliczne

Bardziej szczegółowo

Mikroinformatyka. Wielozadaniowość

Mikroinformatyka. 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ółowo

PRZERWANIA. P1 - Procedura obslugi przerwania. Obsługa zdarzenia Z1 poprzez procedurę obsługi przerwania P1

PRZERWANIA. P1 - Procedura obslugi przerwania. Obsługa zdarzenia Z1 poprzez procedurę obsługi przerwania P1 PRZERWANIA 1. Obsługa zdarzeń poprzez Obsługa polega na przerwaniu aktualnie wykonywanego procesu i wykonaniu procedury przypisanej danemu zdarzeniu gdy takie zdarzenie zajdzie. Procedura nazywa się procedurą

Bardziej szczegółowo

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

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Definicja systemu operacyjnego (1) Miejsce,

Bardziej szczegółowo

Mikroprocesor Operacje wejścia / wyjścia

Mikroprocesor 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ółowo

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

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego (2) Miejsce, rola i zadania systemu operacyjnego

Bardziej szczegółowo

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

Systemy operacyjne. Wprowadzenie. Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Wprowadzenie Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działania systemu operacyjnego

Bardziej szczegółowo

Działanie systemu operacyjnego

Dział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ółowo

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1 dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1 Cel wykładu Definicja, miejsce, rola i zadania systemu operacyjnego Klasyfikacja systemów operacyjnych Zasada działanie systemu operacyjnego

Bardziej szczegółowo

Podstawy Informatyki Układ przerwań

Podstawy Informatyki Układ przerwań maszyny W Podstawy Informatyki alina.momot@polsl.pl http://zti.polsl.pl/amomot/pi Plan wykładu maszyny W 1 Wprowadzenie Przerwania we współczesnych procesorach Rodzaje systemów przerwań Cykl rozkazowy

Bardziej szczegółowo

Działanie systemu operacyjnego

Dział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ółowo

Mikroinformatyka. Mechanizmy ochrony pamięci

Mikroinformatyka. Mechanizmy ochrony pamięci Mikroinformatyka Mechanizmy ochrony pamięci Mechanizmy ochrony pamięci Ochrona na poziomie segmentów: - limit - typ segmentu - selektor zerowy - poziom uprzywilejowania Ochrona na poziomie stronicowania:

Bardziej szczegółowo

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

Architektura 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ółowo

Działanie systemu operacyjnego

Dział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ółowo

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2

Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2 Technika mikroprocesorowa I Studia niestacjonarne rok II Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci,

Bardziej szczegółowo

Działanie systemu operacyjnego

Dział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ółowo

Systemy operacyjne. wykład dr Marcin Czarnota laboratorium mgr Radosław Maj

Systemy operacyjne. wykład dr Marcin Czarnota laboratorium mgr Radosław Maj Systemy operacyjne wykład dr Marcin Czarnota laboratorium mgr Radosław Maj Plan wykładów 1. Wprowadzenie, 2. Procesy, wątki i zasoby, 3. Planowanie przydziału procesora, 4. Zarządzanie pamięcią operacyjną,

Bardziej szczegółowo

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

Poś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ółowo

Organizacja typowego mikroprocesora

Organizacja 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ółowo

Technika mikroprocesorowa I Wykład 2

Technika mikroprocesorowa I Wykład 2 Technika mikroprocesorowa I Wykład 2 Literatura: www.zilog.com Z80 Family, CPU User Manual Cykle magistrali w mikroprocesorze Z80 -odczyt kodu rozkazu, -odczyt-zapis pamięci, -odczyt-zapis urządzenia we-wy,

Bardziej szczegółowo

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych

Dodatek 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ółowo

Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz]

Procesor ma architekturę rejestrową L/S. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset nand Rx, Ry, A add Rx, #1, Rz store Rx, [Rz] Procesor ma architekturę akumulatorową. Wskaż rozkazy spoza listy tego procesora. bgt Rx, Ry, offset or Rx, Ry, A add Rx load A, [Rz] push Rx sub Rx, #3, A load Rx, [A] Procesor ma architekturę rejestrową

Bardziej szczegółowo

Prezentacja systemu RTLinux

Prezentacja 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ółowo

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Współpraca z układami peryferyjnymi i urządzeniami zewnętrznymi Testowanie programowe (odpytywanie, przeglądanie) System przerwań Testowanie programowe

Bardziej szczegółowo

Budowa i zasada działania komputera. dr Artur Bartoszewski

Budowa i zasada działania komputera. dr Artur Bartoszewski Budowa i zasada działania komputera 1 dr Artur Bartoszewski Jednostka arytmetyczno-logiczna 2 Pojęcie systemu mikroprocesorowego Układ cyfrowy: Układy cyfrowe służą do przetwarzania informacji. Do układu

Bardziej szczegółowo

Zarządzanie zasobami pamięci

Zarzą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ółowo

LEKCJA TEMAT: Zasada działania komputera.

LEKCJA TEMAT: Zasada działania komputera. LEKCJA TEMAT: Zasada działania komputera. 1. Ogólna budowa komputera Rys. Ogólna budowa komputera. 2. Komputer składa się z czterech głównych składników: procesor (jednostka centralna, CPU) steruje działaniem

Bardziej szczegółowo

Programowanie Niskopoziomowe

Programowanie Niskopoziomowe Programowanie Niskopoziomowe Wykład 8: Procedury Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Wstęp Linkowanie z bibliotekami zewnętrznymi Operacje na stosie

Bardziej szczegółowo

Budowa systemów komputerowych

Budowa 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ółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 11 Wejście - wyjście Urządzenia zewnętrzne Wyjściowe monitor drukarka Wejściowe klawiatura, mysz dyski, skanery Komunikacyjne karta sieciowa, modem Urządzenie zewnętrzne

Bardziej szczegółowo

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt

Architektura komputera. Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt Architektura komputera Architektura von Neumanna: Dane i rozkazy przechowywane są w tej samej pamięci umożliwiającej zapis i odczyt Zawartośd tej pamięci jest adresowana przez wskazanie miejsca, bez względu

Bardziej szczegółowo

dr inż. Jarosław Forenc

dr 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ółowo

Księ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 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ółowo

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE WINDOWS 1 SO i SK/WIN 007 Tryb rzeczywisty i chroniony procesora 2 SO i SK/WIN Wszystkie 32-bitowe procesory (386 i nowsze) mogą pracować w kilku trybach. Tryby pracy

Bardziej szczegółowo

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski

Układ sterowania, magistrale i organizacja pamięci. Dariusz Chaberski Układ sterowania, magistrale i organizacja pamięci Dariusz Chaberski Jednostka centralna szyna sygnałow sterowania sygnały sterujące układ sterowania sygnały stanu wewnętrzna szyna danych układ wykonawczy

Bardziej szczegółowo

Systemy operacyjne III

Systemy 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ółowo

Stronicowanie w systemie pamięci wirtualnej

Stronicowanie 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ółowo

4. Procesy pojęcia podstawowe

4. Procesy pojęcia podstawowe 4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa

Bardziej szczegółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Wykład 3 Jan Kazimirski 1 Podstawowe elementy komputera. Procesor (CPU) 2 Plan wykładu Podstawowe komponenty komputera Procesor CPU Cykl rozkazowy Typy instrukcji Stos Tryby adresowania

Bardziej szczegółowo

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

Podstawy techniki cyfrowej Układy wejścia-wyjścia. mgr inż. Bogdan Pietrzak ZSR CKP Świdwin Podstawy techniki cyfrowej Układy wejścia-wyjścia mgr inż. Bogdan Pietrzak ZSR CKP Świdwin 1 Układem wejścia-wyjścia nazywamy układ elektroniczny pośredniczący w wymianie informacji pomiędzy procesorem

Bardziej szczegółowo

Wybrane zagadnienia elektroniki współczesnej

Wybrane zagadnienia elektroniki współczesnej Wybrane zagadnienia elektroniki współczesnej y pracy, Marika Kuczyńska Fizyka Techniczna IV rok 20-03-2013, AGH prezentacji y pracy 1 2 y pracy 3 4 5 6 Jednostka wykonawcza, instrukcje (Marika) Rodzina

Bardziej szczegółowo

Architektura komputerów

Architektura 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ółowo

Architektura Systemów Komputerowych

Architektura Systemów Komputerowych Architektura Systemów Komputerowych Wykład 8: Procesory wielopotokowe, czyli superskalarne Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Struktury i rodzaje

Bardziej szczegółowo

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

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 Adresowanie obiektów Bit - stan pojedynczego sygnału - wejście lub wyjście dyskretne, bit pamięci Bajt - 8 bitów - wartość od -128 do +127 Słowo - 16 bitów - wartość od -32768 do 32767 -wejście lub wyjście

Bardziej szczegółowo

Architektura systemów komputerowych. dr Artur Bartoszewski

Architektura systemów komputerowych. dr Artur Bartoszewski Architektura systemów komputerowych dr Artur Bartoszewski Układy we/wy jak je widzi procesor? Układy wejścia/wyjścia Układy we/wy (I/O) są kładami pośredniczącymi w wymianie informacji pomiędzy procesorem

Bardziej szczegółowo

Urządzenia wejścia-wyjścia

Urządzenia wejścia-wyjścia Urządzenia wejścia-wyjścia Wykład prowadzą: Jerzy Brzeziński Dariusz Wawrzyniak Plan wykładu Klasyfikacja urządzeń wejścia-wyjścia Struktura mechanizmu wejścia-wyjścia (sprzętu i oprogramowania) Interakcja

Bardziej szczegółowo

Programowanie na poziomie sprzętu. Tryb chroniony cz. 1

Programowanie 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ółowo

Rejestry procesora. Nazwa ilość bitów. AX 16 (accumulator) rejestr akumulatora. BX 16 (base) rejestr bazowy. CX 16 (count) rejestr licznika

Rejestry procesora. Nazwa ilość bitów. AX 16 (accumulator) rejestr akumulatora. BX 16 (base) rejestr bazowy. CX 16 (count) rejestr licznika Rejestry procesora Procesor podczas wykonywania instrukcji posługuje się w dużej części pamięcią RAM. Pobiera z niej kolejne instrukcje do wykonania i dane, jeżeli instrukcja operuje na jakiś zmiennych.

Bardziej szczegółowo

Struktura systemów komputerowych

Struktura 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ółowo

Materiały pomocnicze 1

Materiały pomocnicze 1 JĄDRO SYSEMU Jądro systemu stanowi główny interfejs między sprzętem (surową maszyną), a systemem operacyjnym. JĄDRO SYSEMU inne elementy systemu jądro systemu surowa maszyna 2 PODSAWOWE UDOGODIEIA SPRZĘOWE

Bardziej szczegółowo

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski

Układ wykonawczy, instrukcje i adresowanie. Dariusz Chaberski Układ wykonawczy, instrukcje i adresowanie Dariusz Chaberski System mikroprocesorowy mikroprocesor C A D A D pamięć programu C BIOS dekoder adresów A C 1 C 2 C 3 A D pamięć danych C pamięć operacyjna karta

Bardziej szczegółowo

Zarządzanie pamięcią w systemie operacyjnym

Zarzą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ółowo

Architektura komputera

Architektura komputera Architektura komputera Architektura systemu komputerowego O tym w jaki sposób komputer wykonuje program i uzyskuje dostęp do pamięci i danych, decyduje architektura systemu komputerowego. Określa ona sposób

Bardziej szczegółowo

J. Ułasiewicz Komputerowe systemy sterowania 1. 1 Architektura PC Ogólna struktura systemu jednoprocesorowego

J. Ułasiewicz Komputerowe systemy sterowania 1. 1 Architektura PC Ogólna struktura systemu jednoprocesorowego J. Ułasiewicz Komputerowe systemy sterowania 1 1 Architektura PC 1.1. Ogólna struktura systemu jednoprocesorowego Już systemy jednoprocesorowe mogą być środowiskiem, w którym wykonywane jest wiele programów

Bardziej szczegółowo

4. Procesy pojęcia podstawowe

4. Procesy pojęcia podstawowe 4. Procesy pojęcia podstawowe 4.1 Czym jest proces? Proces jest czymś innym niż program. Program jest zapisem algorytmu wraz ze strukturami danych na których algorytm ten operuje. Algorytm zapisany bywa

Bardziej szczegółowo

Jądro systemu operacyjnego

Jądro systemu operacyjnego Jądro systemu operacyjnego Jądro (ang. kernel) jest to podstawowa część systemu operacyjnego, która jest odpowiedzialna za wszystkie jego zadania. Zapewnia ono usługi systemowe takie jak: komunikacja między

Bardziej szczegółowo

ARCHITEKTURA PROCESORA,

ARCHITEKTURA 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ółowo

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Mechanizm przerwań i menadżer zdarzeń procesora sygnałowego F/C240

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Mechanizm przerwań i menadżer zdarzeń procesora sygnałowego F/C240 LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ Mechanizm przerwań i menadżer zdarzeń procesora sygnałowego F/C240 Strona 1 z 12 Opracował mgr inż. Jacek Lis (c) ZNE 2004 1. Mechanizm przerwań

Bardziej szczegółowo

Zarządzanie pamięcią operacyjną

Zarzą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ółowo

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

Architektura komputerów. Układy wejścia-wyjścia komputera Architektura komputerów Układy wejścia-wyjścia komputera Wspópraca komputera z urządzeniami zewnętrznymi Integracja urządzeń w systemach: sprzętowa - interfejs programowa - protokół sterujący Interfejs

Bardziej szczegółowo

Architektura mikroprocesorów TEO 2009/2010

Architektura mikroprocesorów TEO 2009/2010 Architektura mikroprocesorów TEO 2009/2010 Plan wykładów Wykład 1: - Wstęp. Klasyfikacje mikroprocesorów Wykład 2: - Mikrokontrolery 8-bit: AVR, PIC Wykład 3: - Mikrokontrolery 8-bit: 8051, ST7 Wykład

Bardziej szczegółowo

Budowa Mikrokomputera

Budowa Mikrokomputera Budowa Mikrokomputera Wykład z Podstaw Informatyki dla I roku BO Piotr Mika Podstawowe elementy komputera Procesor Pamięć Magistrala (2/16) Płyta główna (ang. mainboard, motherboard) płyta drukowana komputera,

Bardziej szczegółowo

Zarządzanie pamięcią operacyjną

Zarzą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ółowo

Systemy Operacyjne. wykład 1. Adam Kolany. Październik, Instytut Techniczny Państwowa Wyższa Szkoła Zawodowa w Nowym Sączu

Systemy Operacyjne. wykład 1. Adam Kolany. Październik, Instytut Techniczny Państwowa Wyższa Szkoła Zawodowa w Nowym Sączu Systemy Operacyjne wykład 1. Adam Kolany Instytut Techniczny Państwowa Wyższa Szkoła Zawodowa w Nowym Sączu dr.a.kolany@wp.pl Październik, 2007 Literatura DrAK (PWSZ) Systemy Operacyjne 11 Październik,

Bardziej szczegółowo

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW

MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW MOŻLIWOŚCI PROGRAMOWE MIKROPROCESORÓW Projektowanie urządzeń cyfrowych przy użyciu układów TTL polegało na opracowaniu algorytmu i odpowiednim doborze i zestawieniu układów realizujących różnorodne funkcje

Bardziej szczegółowo

Mikrokontroler ATmega32. System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe

Mikrokontroler ATmega32. System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe Mikrokontroler ATmega32 System przerwań Porty wejścia-wyjścia Układy czasowo-licznikowe 1 Przerwanie Przerwanie jest inicjowane przez urządzenie zewnętrzne względem mikroprocesora, zgłaszające potrzebę

Bardziej szczegółowo

Programowanie współbieżne Wykład 2. Iwona Kochańska

Programowanie 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ółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 14 Procesory równoległe Klasyfikacja systemów wieloprocesorowych Luźno powiązane systemy wieloprocesorowe Każdy procesor ma własną pamięć główną i kanały wejścia-wyjścia.

Bardziej szczegółowo

Część I - Sterownik przerwań 8259A i zegar/licznik 8253

Część I - Sterownik przerwań 8259A i zegar/licznik 8253 Programowanie na poziome sprzętu opracowanie pytań Część I - Sterownik przerwań 8259A i zegar/licznik 8253 Autor opracowania: Marcin Skiba cines91@gmail.com 1. Jakie są dwie podstawowe metody obsługi urządzeń

Bardziej szczegółowo

SOE Systemy Operacyjne Wykład 8 Pamięć wirtualna dr inż. Andrzej Wielgus

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ółowo

Monitor maszyn wirtualnych

Monitor maszyn wirtualnych Monitor maszyn wirtualnych Jest to oprogramowanie nadzorujące działanie systemów gości Może być to oddzielny software lub zintegrowany z systemem operacyjnym System gospodarza Oznaczany zazwyczaj jako

Bardziej szczegółowo

Przerwania w systemie mikroprocesorowym. Obsługa urządzeo wejścia/wyjścia

Przerwania w systemie mikroprocesorowym. Obsługa urządzeo wejścia/wyjścia Przerwania w systemie mikroprocesorowym 1 Obsługa urządzeo wejścia/wyjścia W każdym systemie mikroprocesorowym oprócz pamięci programu i pamięci danych znajduje się szereg układów lub urządzeo wejścia/wyjścia,

Bardziej szczegółowo

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne

Spis treœci. Co to jest mikrokontroler? Kody i liczby stosowane w systemach komputerowych. Podstawowe elementy logiczne Spis treści 5 Spis treœci Co to jest mikrokontroler? Wprowadzenie... 11 Budowa systemu komputerowego... 12 Wejścia systemu komputerowego... 12 Wyjścia systemu komputerowego... 13 Jednostka centralna (CPU)...

Bardziej szczegółowo

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa... 9. Wstęp... 11

Spis treúci. Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1. Przedmowa... 9. Wstęp... 11 Księgarnia PWN: Krzysztof Wojtuszkiewicz - Urządzenia techniki komputerowej. Cz. 1 Spis treúci Przedmowa... 9 Wstęp... 11 1. Komputer PC od zewnątrz... 13 1.1. Elementy zestawu komputerowego... 13 1.2.

Bardziej szczegółowo

Dokumentacja sterownika mikroprocesorowego "MIKSTER MCC 026"

Dokumentacja sterownika mikroprocesorowego MIKSTER MCC 026 Dokumentacja sterownika mikroprocesorowego "MIKSTER MCC 026" Sp. z o.o. 41-250 Czeladź ul. Wojkowicka 21 Tel. 032 763-77-77 Fax: 032 763-75-94 v.1.2 www.mikster.pl mikster@mikster.pl (14.11.2007) SPIS

Bardziej szczegółowo

Hardware mikrokontrolera X51

Hardware mikrokontrolera X51 Hardware mikrokontrolera X51 Ryszard J. Barczyński, 2016 Politechnika Gdańska, Wydział FTiMS, Katedra Fizyki Ciała Stałego Materiały dydaktyczne do użytku wewnętrznego Hardware mikrokontrolera X51 (zegar)

Bardziej szczegółowo

Wstęp do informatyki. Architektura co to jest? Architektura Model komputera. Od układów logicznych do CPU. Automat skończony. Maszyny Turinga (1936)

Wstęp do informatyki. Architektura co to jest? Architektura Model komputera. Od układów logicznych do CPU. Automat skończony. Maszyny Turinga (1936) Wstęp doinformatyki Architektura co to jest? Architektura Model komputera Dr inż Ignacy Pardyka Slajd 1 Slajd 2 Od układów logicznych do CPU Automat skończony Slajd 3 Slajd 4 Ile jest automatów skończonych?

Bardziej szczegółowo

QEMU działa na procesorach procesorach: emuluje procesory: dostępne dla s.o. hosta:

QEMU działa na procesorach procesorach: emuluje procesory: dostępne dla s.o. hosta: QEMU Stosunkowo szybki emulator procesora, korzystający z tzw. dynamicznej translacji i kilku innych ciekawych technik programistycznych i optymalizacyjnych. działa na procesorach procesorach: Intel x86,

Bardziej szczegółowo

Zarządzanie procesami i wątkami

Zarządzanie procesami i wątkami SOE - Systemy Operacyjne Wykład 4 Zarządzanie procesami i wątkami dr inŝ. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW Pojęcie procesu (1) Program zbiór instrukcji dla procesora

Bardziej szczegółowo

Architektura Systemów Komputerowych

Architektura Systemów Komputerowych Architektura Systemów Komputerowych Wykład 10: Redukcja opóźnień w procesorach superpotokowych i superskalarnych Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie

Bardziej szczegółowo

BIOS, tryb awaryjny, uśpienie, hibernacja

BIOS, tryb awaryjny, uśpienie, hibernacja BIOS, tryb awaryjny, uśpienie, hibernacja Wykład: BIOS, POST, bootstrap loader, logowanie, uwierzytelnianie, autoryzacja, domena, tryb awaryjny, stan uśpienia, hibernacja, wylogowanie, przełączanie użytkownika,

Bardziej szczegółowo

Architektura i administracja systemów operacyjnych

Architektura 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ółowo

Rejestr HKEY_LOCAL_MACHINE

Rejestr HKEY_LOCAL_MACHINE Rejestr HKEY_LOCAL_MACHINE Poddrzewo HKEY_LOCAL_MACHINE zawiera dane konfiguracyjne lokalnego systemu. Informacje tutaj przechowywane są wykorzystywane przez aplikacje i sterowniki urządzeń, a także przez

Bardziej szczegółowo

Mikroinformatyka. Tryb wirtualny

Mikroinformatyka. Tryb wirtualny Mikroinformatyka Tryb wirtualny Tryb wirtualny z ochroną Wprowadzony w 80286. Rozbudowany w 80386. - 4 GB pamięci fizycznej, - 64 TB przestrzeni wirtualnej, - pamięć podzielona na segmenty o rozmiarze

Bardziej szczegółowo

Projektowanie oprogramowania systemów PROCESY I ZARZĄDZANIE PROCESAMI

Projektowanie oprogramowania systemów PROCESY I ZARZĄDZANIE PROCESAMI Projektowanie oprogramowania systemów PROCESY I ZARZĄDZANIE PROCESAMI plan Cechy, właściwości procesów Multitasking Scheduling Fork czym jest proces? Działającą instancją programu Program jest kolekcją

Bardziej szczegółowo

Sp. z o.o Czeladź ul. Wojkowicka 21 Tel. (0-32) , , Fax:

Sp. z o.o Czeladź ul. Wojkowicka 21 Tel. (0-32) , , Fax: Instrukcja obsługi sterownika mikroprocesorowego MIKSTER MCM 020, 021, 022 R Sp z oo 41-250 Czeladź ul Wojkowicka 21 Tel (0-32) 265 70 97, 265 76 41, 763-77-77 Fax: 763 75-94 wwwmiksterpl mikster@miksterpl

Bardziej szczegółowo

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

Definicja systemu operacyjnego (1) Definicja systemu operacyjnego (2) Miejsce systemu operacyjnego w architekturze systemu komputerowego Systemy operacyjne wprowadzenie 1 Definicja systemu operacyjnego (1) Definicja systemu operacyjnego (2) System operacyjny jest zbiorem ręcznych i automatycznych procedur, które pozwalają grupie osób na

Bardziej szczegółowo

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

Logiczny 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ółowo

Architektura komputerów

Architektura komputerów Architektura komputerów Tydzień 5 Jednostka Centralna Zadania realizowane przez procesor Pobieranie rozkazów Interpretowanie rozkazów Pobieranie danych Przetwarzanie danych Zapisanie danych Główne zespoły

Bardziej szczegółowo

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

Pamięć 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

Wprowadzenie do systemów operacyjnych

Wprowadzenie do systemów operacyjnych SOE - Systemy Operacyjne Wykład 1 Wprowadzenie do systemów operacyjnych dr inż. Andrzej Wielgus Instytut Mikroelektroniki i Optoelektroniki WEiTI PW System komputerowy Podstawowe pojęcia System operacyjny

Bardziej szczegółowo

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

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Program wykładów. Strona WWW przedmiotu: Program ćwiczeń projektowych Systemy operacyjne Systemy operacyjne Inżynieria obliczeniowa, II rok Krzysztof Wilk Katedra Informatyki Stosowanej i Modelowania wilk@agh.edu.pl Wykłady: 7 tygodni po 2 h, s. 209, B-4 Projekty: 2 godziny

Bardziej szczegółowo

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

Mechanizmy pracy równoległej. Jarosław Kuchta Mechanizmy pracy równoległej Jarosław Kuchta Zagadnienia Algorytmy wzajemnego wykluczania algorytm Dekkera Mechanizmy niskopoziomowe przerwania mechanizmy ochrony pamięci instrukcje specjalne Mechanizmy

Bardziej szczegółowo

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

Magistrala. Magistrala (ang. Bus) służy do przekazywania danych, adresów czy instrukcji sterujących w różne miejsca systemu komputerowego. Plan wykładu Pojęcie magistrali i jej struktura Architektura pamięciowo-centryczna Architektura szynowa Architektury wieloszynowe Współczesne architektury z połączeniami punkt-punkt Magistrala Magistrala

Bardziej szczegółowo

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

Wykład IV. Układy we/wy. Studia Podyplomowe INFORMATYKA Architektura komputerów Studia Podyplomowe INFORMATYKA Architektura komputerów Wykład IV Układy we/wy 1 Część 1 2 Układy wejścia/wyjścia Układy we/wy (I/O) są kładami pośredniczącymi w wymianie informacji pomiędzy procesorem

Bardziej szczegółowo

Systemy operacyjne i sieci komputerowe. 1 SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE. Etapy uruchamiania systemu

Systemy operacyjne i sieci komputerowe. 1 SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE. Etapy uruchamiania systemu Systemy operacyjne i sieci komputerowe. 1 SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE Etapy uruchamiania systemu 010 2 Systemy operacyjne i sieci komputerowe. Część 010. I. Etapy uruchamiania systemu Windows

Bardziej szczegółowo