Systemy operacyjne. Program przedmiotu

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

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

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

Systemy operacyjne. Program przedmiotu. Forma zaliczenia przedmiotu. Dariusz Wawrzyniak 1

Systemy operacyjne. Literatura do zagadnień wykładowych (1) Literatura do zagadnień wykładowych (2) Program przedmiotu. Forma zaliczenia przedmiotu

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

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

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

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

System operacyjny wstęp

Podstawy Informatyki Systemy operacyjne

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

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2010/2011

SYSTEMY OPERACYJNE SYLABUS A. Informacje ogólne

Opis efektów kształcenia dla modułu zajęć

PRZEWODNIK PO PRZEDMIOCIE

SYSTEMY OPERACYJNE. kik.pcz.czest.pl/so. (C) KIK PCz Materiały pomocnicze 1 PROWADZI: PODSTAWOWA LITERATURA: ZAJĘCIA: STRONA

Zał nr 4 do ZW. Dla grupy kursów zaznaczyć kurs końcowy. Liczba punktów ECTS charakterze praktycznym (P)

PRZEWODNIK PO PRZEDMIOCIE

WIELODOSTĘPNE SYSTEMY OPERACYJNE 1 (SO1)

WYKŁAD. Jednostka prowadząca: Wydział Techniczny. Kierunek studiów: Elektronika i telekomunikacja

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

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2009/2010

Systemy operacyjne III

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

E-I-0006-s3. Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Informatyka I stopień (I stopień / II stopień) Ogólnoakademicki (ogólno akademicki / praktyczny) Niestacjonarne (stacjonarne / niestacjonarne)

E-1IZ2-06-s4. Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

System operacyjny komputera Informacje podstawowe

Elektronika i Telekomunikacja I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Wprowadzenie do systemów operacyjnych

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

Celem wykładu jest przedstawienie ogólnych informacji o systemie operacyjnym jako składowej oprogramowania komputera. Omawiana jest zatem jego rola i

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2010/2011

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

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

Stronicowanie w systemie pamięci wirtualnej

Działanie systemu operacyjnego

Organizacja typowego mikroprocesora

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

Opis efektów kształcenia dla modułu zajęć

Działanie systemu operacyjnego

Architektura komputerów II - opis przedmiotu

Działanie systemu operacyjnego

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

Systemy operacyjne. dr inż. Jerzy Sas.

KARTA KURSU. Systemy operacyjne

Działanie systemu operacyjnego

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

ARCHITEKTURA PROCESORA,

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

Informatyka. informatyka i nauki komputerowe (computer science)

LEKCJA TEMAT: Zasada działania komputera.

Przedmiot: SYSTEMY OPERACYJNE Czas trwania: semestr IV Przedmiot: obowiązkowy Język wykładowy: polski POZIOM

Systemy operacyjne. Paweł Pełczyński

Czujniki obiektowe Sterowniki przemysłowe

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

dr inż. Grażyna KRUPIŃSKA D-10 pokój 227 WYKŁAD 12 WSTĘP DO INFORMATYKI

4. Procesy pojęcia podstawowe

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

Urządzenia wejścia-wyjścia

Nazwa przedmiotu: ADMINISTRACJA SIECIOWYMI SYSTEMAMI OPERACYJNYMI

Architektura komputerów

Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

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

System operacyjny System operacyjny

Administrowanie systemami informatycznymi Kod przedmiotu

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

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2013/2014

Systemy operacyjne Operating Systems

KARTA PRZEDMIOTU. Projektowanie systemów czasu rzeczywistego D1_13

System komputerowy. System komputerowy

PRZEWODNIK PO PRZEDMIOCIE

Kierunek i poziom studiów: Chemia, pierwszy. Sylabus modułu: Technologia informacyjna (0310-CH-S1-003) 1. Informacje ogólne

KARTA MODUŁU KSZTAŁCENIA

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

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

Budowa systemów komputerowych

Architektura komputerów

E-3IZ1-05-s5. Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Wstęp do Informatyki. Klasyfikacja oprogramowania

PRZEWODNIK PO PRZEDMIOCIE

4. Procesy pojęcia podstawowe

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów

Wprowadzenie. Dariusz Wawrzyniak 1

KARTA PRZEDMIOTU. Programowanie niskopoziomowe, C1

Podstawowe zagadnienia

KARTA PRZEDMIOTU. Systemy czasu rzeczywistego: D1_9

Informatyka II stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny)

Karta (sylabus) modułu/przedmiotu Mechanika i Budowa Maszyn Studia I stopnia. Technologie informacyjne Rodzaj przedmiotu:

elektrotechnika I stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny) Kierunkowy (podstawowy / kierunkowy / inny HES)

1. Etapy rozwoju systemów komputerowych

Rok akademicki: 2016/2017 Kod: IIN s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

E-I2S-2001-s1. Informatyka II stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny)

PRYWATNA WYŻSZA SZKOŁA BUSINESSU, ADMINISTRACJI I TECHNIK KOMPUTEROWYCH S Y L A B U S

Prezentacja systemu RTLinux

Warstwy systemu Windows 2000

4. Procesy pojęcia podstawowe

Nazwa Wydziału Nazwa jednostki prowadzącej moduł Nazwa modułu kształcenia Kod modułu Język kształcenia Efekty kształcenia dla modułu kształcenia

Transkrypt:

Systemy operacyjne Dariusz Wawrzyniak Politechnika Poznańska Instytut Informatyki ul. Piotrowo 3a, CW p. 5 60-965 Poznań Dariusz.Wawrzyniak@cs.put.poznan.pl www.cs.put.poznan.pl/dwawrzyniak www.cs.put.poznan.pl/sop (61) 665 29 63 Program przedmiotu Semestr 1 wykład (30 godz.): zarządzanie zasobami systemu komputerowego ćwiczenia laboratoryjne (30 godz.): użytkowanie systemu operacyjnego UNIX Semestr 2 wykład (30 godz.): podstawy przetwarzania współbieżnego i synchronizacja procesów ćwiczenia laboratoryjne (30 godz.): programowanie niskopoziomowe z wykorzystaniem funkcji jądra systemu operacyjnego UNIX Systemy operacyjne wprowadzenie 2 Dariusz Wawrzyniak 1

Forma zaliczenia przedmiotu Zaliczenie ćwiczeń laboratoryjnych po każdym semestrze na podstawie testów przeprowadzonych w czasie zajęć i/lub samodzielnie napisanych programów (skryptów). Egzamin końcowy po dwóch semestrach zajęć (w 4-tym dniu zimowej sesji egzaminacyjnej). Systemy operacyjne wprowadzenie 3 Literatura do zagadnień wykładowych (1) 1. G. Nutt: Operating Systems. A Modern Perspective. wyd. 2, Addison Wesley Longman, Inc., 2002. 2. W. Stallings: Systemy operacyjne, Wydawnictwo Robomatic, Wrocław, 2004. 3. L. Bic, A. C. Shaw: The Logical Design of Operating Systems. Prentice-Hall, Inc, 1988. 4. A. Silberschatz, J.L. Peterson, G. Gagne: Podstawy systemów operacyjnych. WNT, W-wa, 2005. 5. A. S. Tanenbaum: Modern Operating Systems. wyd. 2, Prentice-Hall, Inc, 2001. Systemy operacyjne wprowadzenie 4 Dariusz Wawrzyniak 2

Literatura do zagadnień wykładowych (2) 6. M. J. Bach: Budowa systemu operacyjnego Unix. WNT, Warszawa 1995. 7. B. Goodheart, J. Cox: Sekrety magicznego ogrodu. UNIX System V Wersja 4 od środka. WNT, Warszawa 2001. 8. U. Vahalia: Jądro systemu UNIX. Nowe horyzonty. WNT, W-wa, 2001. 9. D. A. Solomon, M. E. Russinovich: Microsoft Windows 2000 od środka, Helion, 2003. 10. R. Lowe: Kernel Linux. Przewodnik programisty, Helion, 2004. Systemy operacyjne wprowadzenie 5 Literatura do zagadnień ćwiczeniowych (sem. 1) 1. C. Sobaniec, System operacyjny Linux przewodnik użytkownika. Wyd. Nakom, Poznań, 2002. 2. J. Marczyński: UNIX użytkowanie i administrowanie. Helion, 1995. 3. Peter P. Silvester: System operacyjny Unix. WNT, Warszawa, 1990. 4. Z. Królikowski, M. Sajkowski: UNIX dla początkujących i zaawansowanych. Wyd. Nakom, Poznań, 1996. Systemy operacyjne wprowadzenie 6 Dariusz Wawrzyniak 3

Literatura do zagadnień ćwiczeniowych (sem. 2) 1. W. R. Stevens: Programowania w środowisku systemu UNIX. WNT, Warszawa, 2002. 2. J. S. Gray: Komunikacja między procesami w Unixie. Oficyna Wydawnicza ReadMe, Warszawa, 1998. 3. M. J. Rochkind: Programowanie w systemie Unix dla zaawansowanych. WNT, Warszawa 1993. 4. Z. Guźlewski, T. Weiss: Programowanie współbieżne i rozproszone w przykładach i zadaniach. WNT, 1993. 5. R. W. Stevens: Programowanie zastosowań sieciowych w systemie Unix. WNT, Warszawa 1995. 6. M. Gabassi, B. Dupouy: Przetwarzanie rozproszone w systemie Unix. Lupus, Warszawa 1995. Systemy operacyjne wprowadzenie 7 Definicja systemu operacyjnego (1) System operacyjny jest zbiorem ręcznych i automatycznych procedur, które pozwalają grupie osób na efektywne współdzielenie urządzeń maszyny cyfrowej Per Brinch Hansen Systemy operacyjne wprowadzenie 8 Dariusz Wawrzyniak 4

Definicja systemu operacyjnego (2) System operacyjny (nadzorczy, nadrzędny, sterujący) jest to zorganizowany zespół programów, które pośredniczą między sprzętem a użytkownikami, dostarczając użytkownikom zestawu środków ułatwiających projektowanie, kodowanie, uruchamianie i eksploatację programów oraz w tym samym czasie sterują przydziałem zasobów dla zapewnienia efektywnego działania. Alen Shaw Systemy operacyjne wprowadzenie 9 Definicja systemu operacyjnego (3) System operacyjny jest programem, który działa jako pośrednik między użytkownikiem komputera a sprzętem komputerowym. Zadaniem systemu operacyjnego jest tworzenie środowiska, w którym użytkownik może wykonywać programy w sposób wygodny i wydajny. Abraham Silberschatz Systemy operacyjne wprowadzenie 10 Dariusz Wawrzyniak 5

Definicja systemu operacyjnego (4) System operacyjny jest warstwą oprogramowania operującą bezpośrednio na sprzęcie, której celem jest zarządzanie zasobami systemu komputerowego i stworzenie użytkownikowi środowiska łatwiejszego do zrozumienia i wykorzystania. Andrew Tanenbaum Systemy operacyjne wprowadzenie 11 System operacyjny w architekturze komputera Programy użytkowe System operacyjny Sprzęt Systemy operacyjne wprowadzenie 12 Dariusz Wawrzyniak 6

Ogólna struktura systemu operacyjnego interpreter poleceń programy systemowe Jądro systemu operacyjnego Sprzęt Systemy operacyjne wprowadzenie 13 Zadania systemu operacyjnego Definicja interfejsu użytkownika Udostępnianie systemu plików Udostępnianie środowiska do wykonywania programów użytkownika mechanizm ładowania i uruchamiania programów mechanizmy synchronizacji i komunikacji procesów Sterowanie urządzeniami wejścia-wyjścia Obsługa podstawowej klasy błędów zarządzanie zasobami Systemy operacyjne wprowadzenie 14 Dariusz Wawrzyniak 7

Zarządzanie zasobami systemu komputerowego Przydział zasobów Synchronizacja dostępu do zasobów Ochrona i autoryzacja dostępu do zasobów Odzyskiwanie zasobów Rozliczanie gromadzenie danych o wykorzystaniu zasobów Systemy operacyjne wprowadzenie 15 Zasoby zarządzane przez system operacyjny Procesor przydział czasu procesora Pamięć alokacja przestrzeni adresowej dla procesów transformacja adresów Urządzenia zewnętrzne udostępnianie i sterowanie urządzeniami pamięci masowej alokacja przestrzeni dyskowej udostępnianie i sterownie drukarkami, skanerami itp. Informacja (system plików) organizacja i udostępnianie informacji ochrona i autoryzacja dostępu do informacji Systemy operacyjne wprowadzenie 16 Dariusz Wawrzyniak 8

Klasyfikacja SO ze względu na sposób przetwarzania Systemy przetwarzania bezpośredniego (ang. on-line processing systems) systemy interakcyjne występuje bezpośrednia interakcja pomiędzy użytkownikiem a systemem, wykonywanie zadania użytkownika rozpoczyna się zaraz po przedłożeniu. Systemy przetwarzania pośredniego (ang. off-line processing systems) systemy wsadowe występuje znacząca zwłoka czasowa między przedłożeniem a rozpoczęciem wykonywania zadania, niemożliwa jest ingerencja użytkownika w wykonywanie zadania. Systemy operacyjne wprowadzenie 17 Klasyfikacja SO ze względu na liczbę wyk. programów Systemy jednozadaniowe niedopuszczalne jest rozpoczęcie wykonywania następnego zadania użytkownika przed zakończeniem poprzedniego. Systemy wielozadaniowe dopuszczalne jest istnienie jednocześnie wielu zadań (procesów), którym zgodnie z pewną strategią przydzielany jest procesor. Zwolnienie procesora następuje w wyniku żądania przydziału dodatkowego zasobu, zainicjowaniu operacji wejścia-wyjścia, przekroczenia ustalonego limitu czasu (kwantu czasu). Systemy operacyjne wprowadzenie 18 Dariusz Wawrzyniak 9

Klasyfikacja SO ze względu na liczbę użytkowników Systemy dla jednego użytkownika zasoby przeznaczone są dla jednego użytkownika (np. w przypadku komputerów osobistych), nie ma mechanizmów autoryzacji dostępu, a mechanizmy ochrony informacji są ograniczone. Systemy wielodostępne wielu użytkowników może korzystać ze zasobów systemu komputerowego, a system operacyjny gwarantuje ich ochronę przed niepowołaną ingerencją. Systemy operacyjne wprowadzenie 19 Inne rodzaje systemów operacyjnych Systemy czasu rzeczywistego (ang. real-time systems) zorientowane na przetwarzanie z uwzględnieniem czasu zakończenie zadania, tzw. linii krytycznej (ang. deadline). Systemy sieciowe i rozproszone (ang. network and distributed systems) umożliwiają zarządzanie zbiorem rozproszonych jednostek przetwarzających, czyli zbiorem jednostek (komputerów), które są zintegrowane siecią komputerową i nie współdzielą fizycznie zasobów. Systemy operacyjne wprowadzenie 20 Dariusz Wawrzyniak 10

System operacyjny w ujęciu wielowarstwowym poziom języka zorientowanego problemowo poziom asemblera poziom systemu operacyjnego poziom maszynowy procesora poziom mikroarchitektury Systemy operacyjne wprowadzenie 21 Architektury von Neumana założenia Zarówno program (kody instrukcji), jak i dane (argumenty instrukcji, operandy) znajdują się w pamięci operacyjnej. Rozkazy wykonywane są w kolejności, w jakiej zostały umieszczone w programie (i tym samym w pamięci), a zmiana tej kolejności może nastąpić w wyniku wykonania specjalnej instrukcji, np. instrukcji skoku, wywołania podprogramu, powrotu z podprogramu itp., (jest więc zdefiniowana przez sam program). W celu pobrania rozkazu z pamięci procesor wystawia odpowiedni adres na magistrali adresowej. Systemy operacyjne wprowadzenie 22 Dariusz Wawrzyniak 11

Cykl rozkazowy Cykl rozkazowy cykl działań procesora i jego interakcji z pamięcią operacyjną związanych z realizacją rozkazu. Cykl rozkazowy składa się z faz, zwanych cyklami maszynowymi. Typowe fazy cyklu rozkazowego: pobranie kodu rozkazu odczyt pamięci pobranie operandu odczyt pamięci składowanie wyniku zapis pamięci Systemy operacyjne wprowadzenie 23 Cykl rozkazowy graf stanów procesora (1) pamięć pobranie kodu rozkazu pobranie operandu CPU wystaw. adresu kodu rozkazu dekodowanie operacji wystaw. adresu operandu faza pobrania rozkazu następny rozkaz faza pobrania argumentów łańcuch Systemy operacyjne wprowadzenie 24 Dariusz Wawrzyniak 12

Cykl rozkazowy graf stanów procesora (2) zapis operandu faza przerwania wykonanie rozkazu wystaw. adresu operandu sprawdz. wystąpienia przerwań przerwanie faza składowania wyniku brak przerwań Systemy operacyjne wprowadzenie 25 Zasada działania systemu operacyjnego Odwołania do jądra systemu przez system przerwań lub specjalne instrukcje (przerwanie programowe) Sprzętowa ochrona pamięci Dualny tryb pracy tryb użytkownika (ang. user mode) i tryb systemowy (ang. system mode) Wyróżnienie instrukcji uprzywilejowanych, wykonywanych tylko w trybie systemowym Uprzywilejowanie instrukcji wejścia-wyjścia Przerwanie zegarowe Systemy operacyjne wprowadzenie 26 Dariusz Wawrzyniak 13

Przerwania w systemie komputerowym Przerwanie jest reakcją na asynchroniczne zdarzenie, polegającą na automatycznym zapamiętaniu bieżącego stanu procesora w celu późniejszego odtworzenia oraz przekazaniu sterowania do ustalonej procedury obsługi przerwania. Podział przerwań ze względu na źródło: przerwania zewnętrzne od urządzeń zewnętrznych przerwania programowe wykonanie specjalnej instrukcji przerwania diagnostyczne pułapki, błędy programowe i sprzętowe Systemy operacyjne wprowadzenie 27 Przerwania w ujęciu wielowarstwowym przerwanie zewnętrzne przerwanie diagnostyczne poziom systemu operacyjnego poziom maszynowy procesora przerwanie programowe poziom mikroarchitektury Systemy operacyjne wprowadzenie 28 Dariusz Wawrzyniak 14

Zasady ochrony pamięci W wyniku wykonywania programu następuje odwołanie do komórek pamięci o określonych adresach Zaalokowane obszary pamięci opisane są przez dwa parametry: bazę (ang. base) i granicę (ang. limit) adres TAK < TAK pamięć rejestr bazowy rejestr graniczny Systemy operacyjne wprowadzenie 29 Przerwanie zegarowe Przerwanie zegarowe generowane jest przez czasomierz (ang. timer) po wyznaczonym okresie czasu. Obsługa przerwania zegarowego oznacza przekazanie sterowania do jądra systemu operacyjnego, umożliwiając w ten sposób wykonanie pewnych zdań okresowych oraz uniemożliwiając zawłaszczenie procesora przez program użytkownika. programy użytkow. program 2 program 1 program jądra przerwanie zegarowe Systemy operacyjne wprowadzenie czas 30 Dariusz Wawrzyniak 15