Systemy operacyjne. Wojciech Kwedlo Wydział Informatyki PB, p. 127 aragorn.pb.bialystok.pl/~wkwedlo

Podobne dokumenty
Systemy operacyjne. Wojciech Kwedlo Wydział Informatyki PB, p. 205 aragorn.pb.bialystok.pl/~wkwedlo/dydaktyka.

Systemy operacyjne. Wojciech Kwedlo Wydział Informatyki PB, p. 205 aragorn.pb.bialystok.pl/~wkwedlo/dydaktyka.

Systemy operacyjne. Paweł Pełczyński

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

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

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

Wprowadzenie do systemów operacyjnych

Składowe systemu komputerowego

Systemy operacyjne. wykład 1- System operacyjny i jego zadania. dr Marcin Ziółkowski

Systemy operacyjne. Studia podyplomowe Wydział Informatyki PB

Działanie systemu operacyjnego

Informatyka. informatyka i nauki komputerowe (computer science)

Działanie systemu operacyjnego

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

Działanie systemu operacyjnego

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

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

Wprowadzenie do systemów operacyjnych

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

ZADANIA SYSTEMÓW OPERACYJNYCH

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

Systemy operacyjne III

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

Struktury systemów operacyjnych

System komputerowy. System komputerowy

1. Etapy rozwoju systemów komputerowych

Działanie systemu operacyjnego

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

Systemy operacyjne. Zadania systemu operacyjnego. System komputerowy. Wprowadzenie. Dr inż. Ignacy Pardyka

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

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

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

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

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

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

Jądro systemu operacyjnego

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

PRZEWODNIK PO PRZEDMIOCIE

Sieciowe Systemy Operacyjne

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

Wykład 3. Procesy i wątki. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB

System operacyjny System operacyjny

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

Od uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Windows.

Od uczestników szkolenia wymagana jest umiejętność programowania w języku C oraz podstawowa znajomość obsługi systemu Linux.

Warstwy systemu Windows 2000

Podstawy Informatyki Systemy operacyjne

Systemy operacyjne II

1. Co to jest system operacyjny?

PRZEWODNIK PO PRZEDMIOCIE

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

SYSTEMY OPERACYJNE SYLABUS A. Informacje ogólne

Działanie komputera i sieci komputerowej.

Programowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

Systemy operacyjne i sieci komputerowe Szymon Wilk System operacyjny 1

Systemy Operacyjne. Wykład dla I roku Informatyki Stosowanej i II roku Fizyki Komputerowej Wydziału FAIS UJ Rok akademicki: 2004/05

Czujniki obiektowe Sterowniki przemysłowe

Systemy operacyjne. Tomasz Lewicki. marzec WWSIS, Wrocław. Tomasz Lewicki (WWSIS, Wrocław) Systemy operacyjne marzec / 25

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Dział Dopuszczający Dostateczny Dobry Bardzo dobry Celujący

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

Podstawowe zagadnienia

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Systemy operacyjne Charakterystyka systemów operacyjnych

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

WYKŁAD 3 Jądro systemu i procesy. Marcin Tomana Wyższa Szkoła Informatyki i Zarządzania

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

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

Kernel Kompilacja jądra

Mariusz Rudnicki PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO CZ.1

Systemy Operacyjne wprowadzenie

Struktura systemu operacyjnego. Opracował: mgr Marek Kwiatkowski

Technika mikroprocesorowa. Systemy operacyjne czasu rzeczywistego

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

Technologie informacyjne - wykład 3 -

Architektura komputerów

System operacyjny wstęp

System operacyjny komputera Informacje podstawowe

LEKCJA TEMAT: Zasada działania komputera.

Urządzenia wejścia-wyjścia

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

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

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

Technologia informacyjna. Urządzenia techniki komputerowej

Systemy operacyjne. dr inż. Jerzy Sas.

Paweł Skrobanek. C-3, pok pawel.skrobanek.staff.iiar.pwr.wroc.pl

SYSTEMY OPERACYJNE WYKLAD 6 - wątki

Struktura i funkcjonowanie komputera pamięć komputerowa, hierarchia pamięci pamięć podręczna. System operacyjny. Zarządzanie procesami

Wstęp do Informatyki. Klasyfikacja oprogramowania

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

Modelowanie procesów współbieżnych

Wykład 6. Planowanie (szeregowanie) procesów (ang. process scheduling) Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB

KARTA PRZEDMIOTU. Systemy czasu rzeczywistego: D1_9

Prezentacja systemu RTLinux

Budowa systemów komputerowych

WIELODOSTĘPNE SYSTEMY OPERACYJNE 1 (SO1)

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

Systemy Operacyjne - wprowadzenie

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

Systemy operacyjne. Program przedmiotu

Transkrypt:

Systemy operacyjne Wojciech Kwedlo Wydział Informatyki PB, p. 127 wkwedlo@ii.pb.bialystok.pl aragorn.pb.bialystok.pl/~wkwedlo Ten wykład prowadzę pierwszy raz!!! Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB

Literatura A. Silberschatz, P. B. Galvin, Podstawy systemów operacyjnych, wydanie III, WNT, Warszawa, 2000. Podstawowy podręcznik w Polsce i na świecie Trzecie wydanie polskie jest przekładem piątego wydania w USA. Z. Weiss, T. Gruźlewski, Programowanie współbieżne i rozproszone w przykładach i zadaniach, WNT, Warszawa, 1993. M. Ben-Ari, Podstawy programowania współbieżnego i rozproszonego, WNT, Warszawa, 1996. Dwie polskie pozycje n.t. programowania współbieżnego. Bach M., Budowa systemu operacyjnego UNIX, WNT Warszawa, 1995 Techniczny opis jądra UNIX System V. D. P. Bovet, M. Cesati, Linux kernel, Wydawnictwo RM, Warszawa, 2001 Opis jądra Linuksa, może być pomocny jako przykładowa ilustracja pojęć omawianych na tym wykładzie. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -2- Wydział Informatyki PB

Wstępny plan wykładu Wstęp 2g. Struktury systemów komputerowych 2g. Struktury systemów operacyjnych 2g. Procesy i Wątki 2g. Szeregowanie procesów (i wątków) 2g. Komunikacja międzyprocesowa 6g. Zarządzanie pamięcią operacyjną 2g. Pamięć wirtualna 2g. Systemy plików 2g. Bezpieczeństwo + ochrona 2g. Systemy rozproszone 2g. Przykłady: Linux 2.0 i Windows 2000 4g. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -3- Wydział Informatyki PB

Pracownia specjalistyczna Pierwsze 50%. Programowanie współbieżne z wykorzystaniem wątków (POSIX threads, pthreads) J. Shapley Gray, Arkana: Komunikacja między procesami w Unixie, rozdz. 11. M. Mitchell, J. Oldham, A. Samuel, Linux. Programowanie dla zaawansowanych, rozdz. 4 Drugie 50%. Modyfikacja programów napisanych w Javie i symulujących niektóre aspekty pracy systemu (pamięć wirtualna, planowanie procesów, system plików). http://www.ontko.com/moss/ Dowolny podręcznik Javy Łącznie przewiduję 4 wejściówki i 3 projekty, razem 100p. 10p za wejściówkę 20p za projekt Dalsze informacje na stronie www na aragornie. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -4- Wydział Informatyki PB

Czym jest system operacyjny Program kontrolujący wykonywanie aplikacji. Umożliwia wykonywanie programów użytkownika. Dostarcza usługi umożliwiające dostęp do wejścia-wyjścia (pliki, ekran, klawiatura, sieć) Wykrywanie błędów. Sprawozdawczość Cele stojące przed system operacyjnym Przenośność: programy użytkowe działające na różnym sprzęcie. Wydajność: efektywne wykorzystanie sprzętu (procesora,pamięci,we-wy) Wygoda użytkownika. Ewolucja systemu (poprawki etc.) Wojciech Kwedlo, Wykład z Systemów Operacyjnych -5- Wydział Informatyki PB

Abstrakcyjny widok składników komputera Wojciech Kwedlo, Wykład z Systemów Operacyjnych -6- Wydział Informatyki PB

Jądro systemu operacyjnego (ang. kernel) Część systemu przebywająca na stałe w pamięci. Zawiera najczęściej wykorzystywane funkcje systemu Unix, Linux jądro monolityczne: jeden olbrzymi program Możliwość dynamicznego ładowania i usuwania fragmentów jądra, zwanych modułami Pozostała funkcjonalność to programy użytkownika ( np. polecenie ls). Wojciech Kwedlo, Wykład z Systemów Operacyjnych -7- Wydział Informatyki PB

Brak systemu operacyjnego Lata 40 połowa lat 50, komputery zbudowane z lamp próżniowych Programista rezerwuje w specjalnym zeszycie czas komputera W zarezerwowanym czasie ma pełną kontrolę nad maszyną poprzez konsolę Wczytuje program z czytnika kart perforowanych lub taśmy magnetycznej Kompiluje program (w tym celu wczytuje kompilator np. Fortranu) Uruchamia program.. Drukarka drukuje wyniki. Problemy: Duża część czasu spędzana na przygotowaniu programu do uruchomienia Nieefektywne wykorzystanie czasu pracy systemu. Zaleta: w przypisanym czasie mam pełną kontrolę nad komputerem Wojciech Kwedlo, Wykład z Systemów Operacyjnych -8- Wydział Informatyki PB

Proste systemy wsadowe Programista zostawia zadanie (ang. job) w postaci pliku kart perforowanych (program źródłowy, dane) operatorowi. Czynności o podobnym charakterze (np. Kompilacja) grupowane są razem Zadania łączone we wsad (ang. Batch) i wykonywane. Programista po jakimś czasie (kilka godzin) otrzymuje wyniki. Program monitora (protoplasta systemu operacyjnego) Wczytuje program użytkownika do pamięci Przekazuje mu sterowanie Po zakończeniu pracy program użytkownika powraca do monitora Może zawierać procedury obsługi wejścia wyjścia Zaleta: lepsze wykorzystanie z systemu. Wada: programista nie ma kontroli nad wykonywaniem zadania Wojciech Kwedlo, Wykład z Systemów Operacyjnych -9- Wydział Informatyki PB

Prosty system wsadowy - jednoprogramowość Musimy przeznaczyć część pamięci na monitor Jeden program w pamięci. Pożądane wprowadzenie sprzętowej ochrony monitora przed programami użytkownika. W niektórych zastosowaniach biznesowych (banki ubezpieczenia) wejście-wyjście może zajmować dużą część czasu wykonania zadania. W takim przypadku procesor nie jest efektywnie wykorzystany. Potrzebne są mechanizmy pozwalające na jednoczesne wykorzystanie procesora i we-wy. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -10- Wydział Informatyki PB

Spooling Simulateneous Peripheral Operation On-Line Wykorzystuje szybką pamięć dyskową. Dane i program z czytnika kart są przesyłane na dysk Program wczytany z dysku, wykonywany, wyniki są zapisywane na dysk Wyniki z dysku przesyłane są na drukarkę Wykonując zadanie i jednocześnie: Wczytuj kod następnych zadań z czytnika kart na dysk Drukuj wyniki już zakończonych zadań. Pula gotowych zadań na dysku algorytmy szeregowania (ang. scheduling) Wojciech Kwedlo, Wykład z Systemów Operacyjnych -11- Wydział Informatyki PB

Wada jednoprogramowości Podczas wykonywania we-wy procesor jest bezczynny Rozwiązanie: wieloprogramowość (ang. Multiprogramming) W pamięci przechowywanych jest kilka programów Wojciech Kwedlo, Wykład z Systemów Operacyjnych -12- Wydział Informatyki PB

Wieloprogramowość Kiedy zadanie zgłasza zapotrzebowanie na usługę systemu wymagającą oczekiwania, wykonywany jest inne zadanie Potrzebny jest specjalny hardware (przerwania, DMA, ochrona pamięci) Wojciech Kwedlo, Wykład z Systemów Operacyjnych -13- Wydział Informatyki PB

Wieloprogramowy system wsadowy Zapewnianie usług we-wy. Przydzielanie urządzeń we-wy zadaniom. Zadania wstępnie na dysku - zarządzanie pamięcią dyskową. Wybór zadania wczytywanego do pamięci (szeregowanie zadań) Przydzielenie procesora jednemu z zadań rezydującemu w pamięci Zarządzanie dostępną pamięcią Wojciech Kwedlo, Wykład z Systemów Operacyjnych -14- Wydział Informatyki PB

Współdzielenie procesora (ang. time sharing) W systemach wsadowych celem jest maksymalizacja przepustowości. Programista (użytkownik) nie ma kontroli nad wykonywaniem zadań. Problem w przypadku np. błędu kompilacji. Niektóre typy zadań wymagają pracy interakcyjnej. Podział czasu procesora Wiele użytkowników korzystających z terminali (praca interakcyjna) System otrzymuje polecenia kontrolne z terminala. Procesor wykonuje na przemian programy poszczególnych użytkowników Załadowany do pamięci i wykonywany w niej program nazywany jest procesem. Nowe funkcje systemu operacyjnego: wymiana (ang. swapping), pamięć wirtualna. W systemach z podziałem czasu celem jest minimalizacja czasu odpowiedzi. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -15- Wydział Informatyki PB

Systemy operacyjne dla komputerów osobistych Komputer dedykowany jednemu użytkownikowi. Mała cena sprzętu sprawia, że maksymalizacja wykorzystania procesora przestaje być głównym celem. Priorytetem jest wygoda użytkownika i minimalizacja czasu odpowiedzi. Systemy graficznego interfejsu użytkownika. Nastąpiło stopniowe zaadoptowanie technologii rozwiniętych dla większych maszyn. MS-DOS (brak podziału czasu, brak ochrony systemu) Windows 3.1 (współdzielenie procesora wymagające współpracy procesów, pamięć wirtualna, brak ochrony) Windows NT (współdzielenie procesora, pamięć wirtualna, pełna ochrona, mechanizmy bezpieczeństwa) Wojciech Kwedlo, Wykład z Systemów Operacyjnych -16- Wydział Informatyki PB

Systemy równoległe Architektura postaci Symmetric Multiprocessing (SMP). System ze współdzieloną pamięcią (ang. shared memory, tightly coupled system). Każdy procesor wykonuje identyczną kopię systemu operacyjnego Pozwala na wykonywanie wielu procesów jednocześnie Wspierana przez większość nowoczesnych systemów operacyjnych (Linux, Win NT i pochodne) Wojciech Kwedlo, Wykład z Systemów Operacyjnych -17- Wydział Informatyki PB

Systemy czasu rzeczywistego (ang. real-time) Reakcja na zdarzenie musi się zakończyć przed upływem określonego czasu. (ang. hard real-time). Przykłady: odtwarzacz DVD, sterownik wtrysku paliwa, system naprowadzania rakiety. Z reguły system w ROM-ie, brak pamięci dyskowej. Konflikt z zasadą podziału czasu. Warunek hard real-time nie jest spełniony przez większość współczesnych systemów ogólnego przeznaczenia. Systemy klasy soft real-time: zadanie do obsługi w czasie rzeczywistym otrzymuje pierszeństwo nad pozostałymi zadaniami. Nie gwarantują nieprzekraczalnego czasu reakcji. Większość systemów Unixowych i Win NT spełnia te wymagania. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -18- Wydział Informatyki PB

Systemy rozproszone (ang. distributed) Luźno związany (ang. loosely coupled) system komputerowy. Każdy procesor dysponuje własną pamięcią, niedostępną innym procesorom. Koordynacja i synchronizacja poprzez wymianę komunikatów Zalety Współdzielenie zasobów (ang. resource sharing) Przyspieszenie obliczeń. Większa wiarygodność systemu. Udostępnienie możliwości komunikacji. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -19- Wydział Informatyki PB

Systemy rozproszone Sieciowe systemy operacyjne Umożliwia współdzielenie plików, drukarek Dostarcza mechanizm komunikacji System na jednej maszynie wykonuje się niezależnie od pozostałych maszyn w sieci Rozproszone systemy operacyjne Mniejsza autonomia poszczególnych maszyn Sprawia wrażenie, że pojedynczy system operacyjny kontroluje pracę sieci (jednej wielkiej maszyny) Obecnie przedmiot badań naukowych (Amoeba, Mach, Locus, systemy typu Grid...) Wojciech Kwedlo, Wykład z Systemów Operacyjnych -20- Wydział Informatyki PB

Systemy typu hand-held Personal Digital Asistants Telefony komórkowe Cechy charakterystyczne Ograniczona pamięć Wolne procesory (nacisk na niski pobór mocy) Małe rozmiary wyświetlaczy Wojciech Kwedlo, Wykład z Systemów Operacyjnych -21- Wydział Informatyki PB

Migracja cech i własności systemów operacyjnych Wojciech Kwedlo, Wykład z Systemów Operacyjnych -22- Wydział Informatyki PB