Działanie systemu operacyjnego

Podobne dokumenty
Działanie systemu operacyjnego

Działanie systemu operacyjnego

Działanie systemu operacyjnego

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

Przerwania. Przerwania. Budowa systemu komputerowego. Zdarzenia powodujące przerwanie: Wektor przerwań

Przerwania. Przerwania. Budowa systemu komputerowego. Zdarzenia powodujące przerwanie: Wektor przerwań

Informatyka. informatyka i nauki komputerowe (computer science)

Paweł Skrobanek. C-3, pok

Budowa systemów komputerowych

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

Struktura systemów komputerowych

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

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

Urządzenia wejścia-wyjścia

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

Architektura komputerów

Mikroprocesor Operacje wejścia / wyjś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. Działanie systemu komputerowego. Przerwania. Obsługa przerwań (Interrupt Handling)

Systemy Operacyjne struktura

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

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

LEKCJA TEMAT: Zasada działania komputera.

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

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

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

Systemy operacyjne. dr inż. Jerzy Sas.

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

Architektura komputera

Systemy operacyjne system przerwań

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

SYSTEMY WEJŚCIA-WYJŚCIA

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

System operacyjny System operacyjny

Technologia informacyjna. Urządzenia techniki komputerowej

SYSTEMY OPERACYJNE WYKLAD 6 - procesy

Wprowadzenie do systemów operacyjnych

Urządzenia zewnętrzne

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych

Architektura systemów komputerowych. dr Artur Bartoszewski

Systemy operacyjne III

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

Architektura i administracja systemów operacyjnych

Systemy operacyjne. Król Tomasz

Przerwania, polling, timery - wykład 9

Systemy operacyjne. Paweł Pełczyński

Architektura systemu komputerowego

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

Zarządzanie pamięcią operacyjną

Proces y i y w i ąt ą ki

Podstawy informatyki. System operacyjny. dr inż. Adam Klimowicz

Struktury systemów operacyjnych

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

Księgarnia PWN: Włodzimierz Stanisławski, Damian Raczyński - Programowanie systemowe mikroprocesorów rodziny x86

Układy wejścia/wyjścia

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

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

System komputerowy. System komputerowy

ang. file) Pojęcie pliku (ang( Typy plików Atrybuty pliku Fragmentacja wewnętrzna w systemie plików Struktura pliku

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

Pliki. Operacje na plikach w Pascalu

Instrukcja do konwertera USB-RS232

Jądro systemu operacyjnego

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

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

Struktury systemów operacyjnych

System wejścia-wyjścia

Metody obsługi zdarzeń

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]

Architektura komputerów

System plików warstwa logiczna

1.1 Definicja procesu

Czujniki obiektowe Sterowniki przemysłowe

Systemy operacyjne. Informatyka Stosowana, I rok. Krzysztof Wilk. Katedra Informatyki Stosowanej i Modelowania

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

URZĄDZENIA WEJŚCIA-WYJŚCIA

Organizacja typowego mikroprocesora

Procesy, wątki i zasoby

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

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

Kernel Kompilacja jądra

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

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

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

4. Procesy pojęcia podstawowe

Zarządzanie pamięcią operacyjną

Systemy Operacyjne sprzęt

Systemy operacyjne i sieci komputerowe Szymon Wilk System operacyjny 1

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

SYLABUS DOTYCZY CYKLU KSZTAŁCENIA realizacja w roku akademickim 2016/2017

Struktury systemów operacyjnych

Systemy operacyjne System sieciowy UNIX-a

Wykład 2. Struktury systemów komputerowych. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB

System plików. Warstwowy model systemu plików

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

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

Warstwy systemu Windows 2000

Architektura komputerów

Transkrypt:

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

Przerwania Przerwanie jest sygnałem pochodzącym od sprzętu lub oprogramowania i sygnalizuje wystąpienie zdarzenia sygnał przerwania sprzętowego 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. Sygnały przerwań od sprzętu wysyłane są do procesora najczęściej za pośrednictwem szyny systemowej

Przerwania Przerwanie polega na tym, że urządzenie wymagające obsługi procesora, np. wejścia/wyjścia (klawiatura), moduł DMA (Direct Memory Access), posiada specjalne połączenie (pojedynczy przewód) łączące niniejsze urządzenie z procesorem. Linia ta nosi nazwę linii przerwania. W momencie kiedy urządzenie chce być obsługiwane przez procesor wystawia umówiony sygnał na linii przerwania z reguły jest to stan wysoki (wyzwalanie poziomem sygnału) lub też zmiana stanu z 0 na 1 (wyzwalanie zboczem).

Zdarzenia powodujące przerwanie: Zakończenie operacji wejścia-wyjścia Dzielenie przez zero, Niedozwolony dostęp do pamięci, Zapotrzebowanie na usługę systemu, itd., itp.. Każdemu przerwaniu odpowiada procedura obsługi.

Wykres czasowy przerwań procesu wykonującego operację wejścia-wyjścia Proces użytkownika Obsługa przerwań I/O Procesor Zał Wył Urządzenie wejścia-wyjścia START STOP START STOP

Wektor przerwań Aby przyspieszyć operację obsługi przerwań stosuje się tablicę wskaźników do procedur obsługujących poszczególne przerwania. Indeksy tej tablicy odpowiadają numerom Indeksy tej tablicy odpowiadaj numerom urządzeń generujących przerwania, a elementami tablicy są adresy procedur obsługujących przerwania.

Przy przejściu do obsługi przerwania należy zapamiętać adres przerwanego rozkazu, a także np. zawartości rejestrów, jeżeli obsługa przerwania zmienia je. W nowych systemach adres powrotny przechowywany jest na stosie systemowym. Podczas obsługi jednego przerwania inne są wyłączone, lub ustalone są priorytety przerwań (przerwania maskowane).

Wyjątki Przerwania 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 (niepowodzenia) sytuacje, w których aktualnie wykonywana instrukcja powoduje błąd; gdy procesor powraca do wykonywania przerwanego kodu wykonuje jeszcze raz tę samą instrukcję, która wywołała wyjątek;

Wyjątki 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, wykonuje następną instrukcję, po tej która wywołała wyjątek; aborts (nienaprawialne) błędy, których nie można naprawić.

Przerwania 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 (np. w DOS 21h, Windows 2fh, Linux x86 przerwanie 80h) umieszcza kod wywołujący odpowiednie funkcje systemowe w zależności od zawartości rejestrów ustawionych przez program wywołujący, lub do komunikacji z oprogramowaniem wbudowanym jak procedury BIOS lub firmware.

Obsługa wejścia-wyjścia a) synchroniczna: AKTYWNOŚĆ STER. I/O O.P. TRANSMISJA b) asynchroniczna AKTYWNOŚĆ STER. I/O O.P.

Asynchroniczne wejście-wyjście W czasie wykonywania operacji wejściawyjścia jednostka centralna systemu może być użyta do obliczeń lub do rozpoczynania operacji wejścia-wyjścia z innych urządzeń. Ponieważ operacje I/O są powolne w porównaniu z szybkością procesora, może on w międzyczasie obsłużyć kilka innych zadań.

Bezpośredni dostęp do pamięci (DMA) W przypadku powolnych urządzeń I/O, obsługa przesyłania danych z bufora urządzenia do pamięci, nie angażuje zbytnio procesora. Dla urządzeń szybkich (dysk, sieć) wygodniej jest przesyłać cały blok danych bezpośrednio do pamięci, bez angażowania procesora. Umożliwia to mechanizm Direct Memory Access, realizowany sprzętowo. Uwaga! Kradnie cykle pamięci!

Dwa tryby pracy procesora Procesor rozróżnia dwa tryby: Tryb użytkownika (z ograniczeniami) Tryb monitora, nadzorcy, systemu, uprzywilejowany. Wykonuje potencjalnie niebezpieczne operacje. Są to tzw. operacje uprzywilejowane.

Operacje wejścia/wyjścia nie są bezpośrednio dostępne dla użytkownika (musi o nie prosić system operacyjny). Użytkownik ma dostęp tylko do pamięci przydzielonej swojemu programowi. Nie wolno też dopuścić do tego, aby system stracił kontrolę nad procesorem, np. przez nieskończoną pętlę w programie użytkownika.

Proces Proces jest programem, który jest aktualnie wykonywany. Jest to jednostka pracy w systemie. System składa się ze zbioru procesów, z System składa się ze zbioru procesów, z których część to procesy systemu operacyjnego, a pozostałe są procesami użytkowymi.

Zarządzanie procesami przez OS Tworzenie i usuwanie procesów użytkowych i systemowych, wstrzymywanie i wznawianie procesów, dostarczanie mechanizmów synchronizacji procesów, dostarczanie mechanizmów komunikacji procesów, dostarczanie mechanizmów obsługi zakleszczeń.

Zarządzanie pamięcią przez OS Ewidencja aktualnie zajętych obszarów pamięci, informacja o użytkownikach danych obszarów, decydowanie o tym, które procesy mają być załadowane do zwolnionych obszarów pamięci, przydzielanie i zwalnianie obszarów pamięci stosownie do potrzeb.

Zarządzanie plikami przez OS Tworzenie i usuwanie plików, tworzenie i usuwanie katalogów, dostarczanie elementarnych informacji do manipulowania plikami i katalogami, odwzorowanie plików na obszary pamięci pomocniczej, składowanie plików na trwałych nośnikach pamięci.

Inne funkcje systemu operacyjnego Zarządzanie systemem wejścia-wyjścia (buforowanie, pamięć, spooling, interfejs, moduły sterujące), zarządzanie pamięcią pomocniczą (dyskową), praca sieciowa, system ochrony, system interpretacji poleceń (powłoka).

Usługi systemu operacyjnego Wykonanie programu, operacje wejścia-wyjścia, manipulowanie systemem plików, komunikacja między procesami, wykrywanie błędów. przydzielanie zasobów, rozliczanie ochrona

Funkcje systemowe Tworzą interfejs pomiędzy wykonywanym programem a systemem operacyjnym. Poprzez f.s. program użytkownika daje zlecenia systemowi operacyjnemu.

F.S. - Nadzorowanie procesów Załadowanie lub wykonanie programu, zakończenie lub zaniechanie procesu, utworzenie lub zakończenie procesu (potomnego), pobranie lub ustawienie parametrów procesu, czekanie czasowe, oczekiwanie na zdarzenie lub sygnalizacja zdarzenia, przydział i zwolnienie pamięci.

F.S. - Operacje na plikach Utworzenie lub usunięcie pliku, otwarcie lub zamknięcie pliku, czytanie, pisanie lub zmiana położenia, pobranie lub ustawienie atrybutów pliku.

F.S. - Operacje na urządzeniach Zamówienie lub zwolnienie urządzenia, czytanie, pisanie lub zmiana położenia, pobranie lub ustawienie atrybutów urządzenia, logiczne przyłączanie lub odłączanie urządzeń.

F.S. - Utrzymywanie informacji Pobranie lub ustawienie daty/czasu, pobranie lub ustawienie danych systemowych, pobranie atrybutów procesu, pliku lub urządzenia, ustawienie atrybutów procesu, pliku lub urządzenia.

F.S. - Komunikacja Utworzenie, usunięcie połączenia komunikacyjnego, nadawanie, odbieranie komunikatów, przekazywanie informacji o stanie, przyłączanie i odłączanie urządzeń zdalnych.

Przykładowe funkcje systemowe Operacje na plikach Operacje na katalogach Środowisko Tworzenie nowego i uruchamianie programu creat(2) open(2) read(2) write(2) close(2) chmod(2) chown(2) opendir(3) closedir(3) scandir(3) getenv(3) putenv(3) setenv(3). execve(2) exec(3) fork(2)

Programy systemowe Manipulowanie plikami, informowanie o stanie systemu, tworzenie i zmienianie zawartości plików, translatory języków programowania, ładowanie i wykonywanie programów, komunikacja.

Struktura systemu - UNIX Użytkownicy Powłoki i polecenia Kompilatory i interpretery Biblioteki systemowe Interfejs funkcji systemowych jądra Sygnały System plików Planowanie Obsługa terminali Wymiana przydziału procesora System znakowego System blokowego Zstępowanie stron wejścia-wyjścia Moduły sterujące terminali wejścia-wyjścia Moduły sterujące dysków i taśm Stronicowanie na żądanie Pamięć wirtualna Sterowniki terminali Terminale Interfejs między jądrem a sprzętem Sterowniki urządzeń Dyski i taśmy Sterowniki pamięci Pamięć operacyjna