Systemy operacyjne Wprowadzenie

Podobne dokumenty
Przedmiot Systemy operacyjne (II) Systemy operacyjne / Wprowadzenie str.4/26. Konspekt wykładu Systemy operacyjne. Przedmiot Systemy operacyjne (I)

Systemy Operacyjne (1)

Systemy operacyjne III

Wprowadzenie do systemów operacyjnych

Technika mikroprocesorowa

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

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

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

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

Pracownia Komputerowa. Wyk ad I Magdalena Posiada a-zezula

Systemy operacyjne. Paweł Pełczyński

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

MAGISTRALE ZEWNĘTRZNE, gniazda kart rozszerzeń, w istotnym stopniu wpływają na

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

Podstawowe zagadnienia

Działanie systemu operacyjnego

Historia komputera. Architektura komputera Historia komputera. Historia komputera. Historia komputera. Historia komputera

Działanie systemu operacyjnego

Wykład pierwszy Rys historyczny rozwoju sprzętu komputerowego

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

LEKCJA TEMAT: Zasada działania komputera.

Architektura Systemów Komputerowych. Rozwój architektury komputerów klasy PC

Działanie systemu operacyjnego

Informatyka. informatyka i nauki komputerowe (computer science)

Działanie systemu operacyjnego

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

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

Sieciowe Systemy Operacyjne

1. Etapy rozwoju systemów komputerowych

PRZEWODNIK PO PRZEDMIOCIE

Architektura komputerów Historia systemów liczących

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

Architektura komputerów II - opis przedmiotu

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

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

Systemy operacyjne i sieci komputerowe

Systemy operacyjne i sieci komputerowe Szymon Wilk Superkomputery 1

Budowa Mikrokomputera

Wybrane bloki i magistrale komputerów osobistych (PC) Opracował: Grzegorz Cygan 2010 r. CEZ Stalowa Wola

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

Komputer. Komputer (computer) jest to urządzenie elektroniczne służące do zbierania, przechowywania, przetwarzania i wizualizacji informacji

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

Architektura komputerów

Podstawy obsługi komputerów. Budowa komputera. Podstawowe pojęcia

Czujniki obiektowe Sterowniki przemysłowe

Technologie informacyjne - wykład 2 -

Budowa i zasada działania komputera. dr Artur Bartoszewski

PRZEWODNIK PO PRZEDMIOCIE

Systemy operacyjne i sieci komputerowe Szymon Wilk System operacyjny 1

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

Urządzenia wejścia-wyjścia

Przegląd współczesnych systemów operacyjnych

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

Architektura komputerów

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

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

Wstęp do Informatyki dla bioinformatyków

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

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

Jednostka centralna. dr hab. inż. Krzysztof Patan, prof. PWSZ

Technologia informacyjna. Urządzenia techniki komputerowej

System komputerowy. System komputerowy

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

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

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

System operacyjny System operacyjny

Architektura komputera. Cezary Bolek. Uniwersytet Łódzki. Wydział Zarządzania. Katedra Informatyki. System komputerowy

Płyta główna (ang. motherboard) najważniejsza płyta drukowana urządzenia elektronicznego, na której zamontowano najważniejsze elementy urządzenia, umo

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

Jądro systemu operacyjnego

Warstwy systemu Windows 2000

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

Wstęp do informatyki. System komputerowy. Magistrala systemowa. Architektura komputera. Cezary Bolek

POSIX ang. Portable Operating System Interface for Unix

Podsystem graficzny. W skład podsystemu graficznego wchodzą: karta graficzna monitor

Krótka Historia Systemów Operacyjnych. Tomasz Borzyszkowski

Architektura systemów komputerowych

WIELODOSTĘPNE SYSTEMY OPERACYJNE 1 (SO1)

Podstawy technologii informacyjnej. Beata Kuźmińska

Podstawy Informatyki Systemy sterowane przepływem argumentów

Architektura i administracja systemów operacyjnych

Systemy Operacyjne i Sieci Komputerowe

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

Komputery przemysłowe i systemy wbudowane

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

DOS (ang. Disk Operating System). 1 DOS

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

URZĄDZENIA WEJŚCIA-WYJŚCIA

Wieloprogramowanie. Systemy operacyjne / Procesy i wątki str.4/32. Proces w systemie operacyjnym. Tworzenie i kończenie procesów

Architektura systemów informatycznych. system operacyjny podstawowe pojęcia, budowa

KARTA PRZEDMIOTU. Architektura Komputerów C4

Magistrala systemowa (System Bus)

Systemy na Chipie. Robert Czerwiński

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

Świat komputerów. Urządzenia wyjściowe:

Wstęp do informatyki. Interfejsy, urządzenia we/wy i komunikacja. Linie magistrali

Mikroprocesor Operacje wejścia / wyjścia

Wprowadzenie do systemów operacyjnych

Wstęp do informatyki. Świat komputerów. Sprzęt (Hardware) Komputer osobisty (Personal Computer) Cezary Bolek

Transkrypt:

Systemy operacyjne Wprowadzenie [2] Przedmiot Systemy operacyjne (I) prowadzący: dr inż. Tomasz J. Kruk, T.Kruk@ia.pw.edu.pl, p. 530 przedmiot składa się z wykładu (60 punktów) i laboratorium (40 punktów), ocenianych niezależnie w skali punktowej (w sumie 100 punktów). ocena z wykładu jest wystawiana na podstawie pisemnego kolokwium w trakcie semestru i egzaminu w sesji. Student ma prawo do przystąpienia do 2 terminów egzaminu. Wymagane jest uzyskanie co najmniej połowy punktów z kolokwium i egzaminu łącznie. każde z ćwiczeń laboratoryjnych jest oceniane niezależnie. Ocenę wystawia prowadzący i jest ona ostateczna. Wynik wszystkich ćwiczeń jest przeliczany na ocenę w skali 0-40 punktów. Wymagane jest uzyskanie co najmniej połowy punktów z laboratorium. obecność na zajęciach laboratoryjnych jest obowiązkowa. [3] Przedmiot Systemy operacyjne (II) Zadania laboratoryjne 1. 4 p. - Kompilacja jądra i wywołania systemowe 2. 8 p. - Szeregowanie procesów 3. 8 p. - Synchronizacja procesów (I) 4. 8 p. - Synchronizacja procesów (II) 5. 4 p. - Zarządzanie pamięcią 6. 8 p. - System plików Skala ocen: 51-60 3 61-70 3.5 71-80 4 81-90 4.5 91-100 5 Punkty z wykładu i laboratorium są sumowane. Przedmiot zalicza 51 punktów. Szczegóły precyzuje regulamin przedmiotu. W indywidualnych przypadkach wykładowca ma prawo podwyższyć ocenę. [4] Konspekt wykładu Systemy operacyjne 1. Wprowadzenie 2. Programowanie w języku interpretera poleceń 3. Procesy i wątki

4. Synchronizacja i komunikacja międzyprocesowa 5. Zarządzanie pamięcią operacyjną 6. Systemy wejścia-wyjścia 7. System plików 8. Multimedialne systemy operacyjne 9. Systemy wieloprocesorowe i rozwiązania klastrowe 10. Bezpieczeństwo i monitorowanie wykorzystania systemu [5] System operacyjny Def. 1 System operacyjny jest to zbiór programów i procedur spełniających dwie podstawowe funkcje: zarządzanie zasobami systemu komputerowego, tworzenie maszyny wirtualnej. Def. 2 Zasobem systemu jest każdy jego element sprzętowy lub programowy, który może być przydzielony danemu procesowi. [6] Zasoby systemu operacyjnego Przez zasoby sprzętowe rozumiemy: czas procesora, pamięć operacyjną, urządzenia zewnętrzne, inne komputery powiązane poprzez sieć teleinformatyczną. Przez zasoby programowe rozumiemy: pliki, bufory, semafory, tablice systemowe. 2

Zasobami system zarządza w czasie i przestrzeni. [7] Zarządzanie zasobami systemu operacyjnego Rozpatrując system operacyjny jako zarządcę zasobów można stwierdzić, ze powinien on w ogólności: śledzić zasoby systemu, narzucać strategię, która określa odbiorcę, rodzaj zasobu, moment przydziału i ilość zasobu, przydzielać zasób, odzyskiwać zasób. [8] Tworzenie maszyny wirtualnej Tworzenie maszyny wirtualnej polega na udostępnieniu użytkownikowi abstrakcji systemu łatwiejszej do wykorzystywania/ oprogramowywania. przekształcenie maszyny rzeczywistej w maszynę o cechach wymaganych przez przyjęty tryb przetwarzania (przeznaczenie systemu komputerowego), przykładowe abstrakcje: na dysku przechowywana jest uporządkowana grupa nazwanych plików, system umożliwia współbieżne wykonywanie się aplikacji. [9] Tryby przetwarzania tryb wsadowy, pośredni (ang. off-line, batch), autonomiczne wykorzystanie komputera bez konieczności obecności użytkownika + duża przepustowość systemu komputerowego, możliwy długi okres oczekiwania na wyniki, ograniczone możliwości szeregowania, niemozność bieżącej kontroli procesu wykonania. tryb interaktywny, bezpośredni (ang. on-line, interactive), konwersacyjne współdziałanie użytkownika z systemem komputerowym z wykorzystaniem terminala komputera. + szybka reakcja systemu, możliwość kontroli przebiegu procesu wykonania, mniejsze wykorzystanie zasobów systemu komputerowego. 3

tryb czasu rzeczywistego, system, którego użytkownikiem jest proces technologiczny narzucający pewne wymagania czasowe. Dwa podejścia: system jest zobowiązany do reagowania na zdarzenia zewnętrzne w ustalonym nieprzekraczalnym okresie. system bada okresowo stan procesu technologicznego [10] Historia systemów operacyjnych Charles Babbage (1792-1871) - projekt pierwszego komputera mechanicznego, Ada Lovelace pierwszym zatrudnionym programistą. Generacje systemów operacyjnych: 1. Pierwsza generacja (1945-55) - lampy i przekaźniki. 2. Druga generacja (1955-65) - tranzystory i systemy wsadowe. 3. Trzecia generacja (1965-80) - układy zintegrowane i wieloprogramowanie. 4. Czwarta generacja (1980-..) - komputery osobiste. [11] Pierwsza generacja (1945-55) (I) ENIAC - Electronic Numerical Integrator and Computer (elektroniczne urządzenie numeryczne całkujące i liczące) - zbudowany na Uniwersytecie Pensylwania przez J. Eckerta. i J. Mauchly. zbudowany w latach 1943-1946, wykorzystywany do 1955, 30 ton, 1400 m2, 18 tys. lamp próżniowych, 140 kw, 5000 operacji dodawania na sekundę, 20 rejestrów na dziesięciocyfrowe liczby dziesiętne, główna wada: programowanie przez ustawianie przełączników i wtykanie i wyjmowanie kabli. Pierwszą generację cechował brak oprogramowania. [12] Pierwsza generacja (1945-55) (II) W 1944 roku John von Neuman sformułował następujące założenia: 1. Współczesny komputer powinien posiadać: pamięć złożoną z elementów przyjmujących stany 0 lub 1, arytmometr, który wykonuje działania arytmetyczne, logiczne i inne, 4

możliwość wprowadzania danych, wyprowadzania danych oraz sterowania, 2. Działanie komputera związane jest z realizacją programu i obróbką danych zakodowanych w pamięci. Program może zawierać rozkazy warunkowe, które umożliwiają rozgałęzienia i skoki, może się także modyfikować podczas wykonywania. [13] Druga generacja (1955-65) tranzystory i systemy wsadowe, epoka systemów typu mainframe, przetwarzanie wsadowe (ang. batch system) metodą zwiększenia poziomu utylizacji czasu procesora, specjalizacja systemów, reprezentanci: IBM1401 do wprowadzania i wyprowadzania danych, IBM7094 do obliczeń numerycznych. [14] Wczesne systemy wsadowe Card reader Tape drive Input tape System tape Output tape Printer 1401 7094 1401 (a) (b) (c) (d) (e) (f) FMS (ang. the Fortran Monitor System) [15] Struktura typowego zlecenia w FMS 5

$END Data for program $LOAD $RUN Fortran program $FORTRAN $JOB, 10,6610802, MARVIN TANENBAUM [16] Trzecia generacja (1965-1980) wykorzystanie układów scalonych (ang. ICs) do budowy IBM 360, wieloprogramowanie (ang. multiprogramming), maszyny klasy IBM 1401 wyeliminowane przez spooling Simultaneous Peripheral Operation On Line, Job 3 Job 2 Job 1 Operating system Memory partitions dzielenie czasu (ang. timesharing) jako wariant wieloprogramowania, w którym użytkownicy korzystali równocześnie z rożnych terminali, CTSS (ang. Compatible Time Sharing System) pierwszym poważnym systemem z podziałem czasu (M.I.T., 1962), przetwarzanie wsadowe jak i interaktywne. [17] Systemy trzeciej generacji MULTICS (ang. MULTiplexed Information and Computing Service) - MIT, Bell Labs, General Electric - projekt pojedynczego systemu z mocą obsługującą cały region Bostonu (www.multicians.org), DEC PDP PDP-1 (1961 r.) rozpoczął erę minikomputerów - prawie tak szybki jak IBM 7094, ale za 5% ceny; sukces systemów PDP-11, Ken Thompson z Bell Labs na komputerze PDP-7 stworzył okrojoną jednoużytkownikową wersję systemu Multics, która wyewoluowała w system Unix, dwie główne gałęzie systemu Unix: System V (AT&T) oraz BSD (Uniwersytet Kalifornijski w Berkeley), 6

POSIX (ang. Portable Operating System Interface) - definiowany przez IEEE standard zgodności z systemem Unix (teraz: z systemem otwartym). [18] Czwarta generacja (1980-dziś) (I) komputery osobiste (mikrokomputery) podobne do minikomputerów budową ale rożne ceną, 1974, Intel wprowadza 8080, pierwszy ośmiobitowy procesor ogólnego przeznaczenia, Gary Kildall pisze CP/M (ang. Control Program for Microcomputers) 1977, CP/M przepisane przez Digital Research na inne mikroprocesory, 5 lat dominacji CP/M, początek lat osiemdziesiątych - IBM zaprojektował IBM PC i skontaktował się z Billem Gatesem w celu licencjonowania interpretera języka BASIC, najgorsza decyzja Digital Research - brak zaangażowania w rozmowach z IBM, B. Gates kupuje od Seattle Computer Products system operacyjny DOS i oferuje tandem DOS/BASIC dla IBM, [19] Czwarta generacja (1980-dziś) (II) MS DOS (ang. MicroSoft Disk Operating System) nową wersją systemu DOS przepisaną przez zatrudnionego twórcę oryginalnego systemu DOS, GUI (ang. Graphical User Interface) wymyślone przez Douga Engelbarta w Stanford Research Institute w latach sześćdziesiątych; zaadoptowane przez naukowców z Xerox PARC, Steve Jobs, współtwórca Apple - próba zbudowania Apple z GUI, systemy Lisa i Apple Macintosh, systemy Windows 3.11, Windows 95, Windows 98, Windows ME, systemy Windows NT zaprojektowane w dużym stopniu przez projektantów systemu VAX VMS, czas sieci i sieciowych systemów operacyjnych, klon systemu Unix, Minix, napisany przez A. Tanenbauma, klon systemu Minix, Linux, stworzony przez L. Torvaldsa. [20] Różne typy systemów operacyjnych Wyróżnić można następujące typy systemów operacyjnych: 7

dla komputerów klasy mainframe, serwerowe, wieloprocesorowe, dla komputerów osobistych, systemy czasu rzeczywistego, z ograniczeniami twardymi bądź miękkimi (VxWorks, QNX), dla systemów wbudowanych (PalmOS, Windows CE), [21] Powtórka z achitektury systemów komputerowych (I) procesor: licznik rozkazów, wskaźnik stosu, słowo stanu procesora, pamięć: RAM, ROM, EEPROM, flash RAM, adresy fizyczne i wirtualne, MMU, różne typy szyn/ magistrali: IDE (ang. Integrated Drive Electronics), ISA (ang. Industry Standard Architecture), PCI (ang. Peripheral Component Interconnect), USB (ang. Universal Serial Bus), SCSI (ang. Small Computer System Interface), IEEE 1394 (FireWire) [22] Powtórka z arch. systemów komputerowych (II) Cache bus Local bus Memory bus Level 2 cache CPU PCI bridge Main memory PCI bus SCSI USB ISA bridge IDE disk Graphics adaptor Available PCI slot Mouse Key- board ISA bus Mon- itor Modem Sound card Printer Available ISA slot Struktura systemu komputerowego klasy Pentium. 8

[23] Przerwanie w systemie komputerowym Disk drive Current instruction 1 CPU 3 Interrupt controller 4 2 Disk controller Next instruction 1. Interrupt 3. Return 2. Dispatch to handler Interrupt handler (a) (b) Przebieg wystąpienia i obsługi przerwania w systemie komputerowym. [24] Koncepcje związane z systemem operacyjnym proces, przestrzeń adresowa procesu, tablica procesów, obraz procesu, procesy potomne, komunikacja międzyprocesowa, sygnały, identyfikatory: procesu, grupy, właściciela procesu, blokady, zarządzanie pamięcią, wejście/ wyjście, pliki, katalogi, ścieżki dostępu, katalog główny, katalog bieżący, deskryptor pliku, system plików, pliki specjalne, urządzenia blokowe i znakowe, potoki, bezpieczeństwo, bity rwx, listy kontroli dostępu, interpreter poleceń. [25] Blokady w systemie operacyjnym (a) (b) a. stan potencjalnej blokady, b. stan rzeczywistej blokady. 9

[26] Montowanie zewnętrznego systemu plików Root Floppy a b x y a b c d c d x y (a) (b) a. przed montowaniem - pliki z dyskietki niedostępne, b. po montowaniu - pliki z dyskietki dostępne. 10