Systemy operacyjne
description
Transcript of Systemy operacyjne
Systemy operacyjne
Wykład nr 1:
Wprowadzenie. Pojęcia podstawowe
Piotr Bilski
Zasady zaliczenia
• Przedmiot składa się z dwóch części: wykładu i laboratorium
• Laboratorium składa się z 14 ćwiczeń wykonywanych co tydzień (7 z Windows i 7 z Linuksa)
• Wykład zaliczany jest na egzaminie w sesji po zakończeniu semestru
Program przedmiotu
1. Wstęp. Pojęcia podstawowe2. Struktura systemu komputerowego3. Struktura systemu operacyjnego4. Procesy5. Modele wątków6. Planowanie przydziału procesora7. Metody synchronizacji procesów8. Zakleszczenia i zapobieganie im9. Zarządzanie pamięcią10. Pamięć wirtualna11. Systemy plików12. Systemy wejścia-wyjścia i pamięć masowa13. Ochrona systemu operacyjnego
Literatura
• A. Silberschatz, P. B. Galvin, G. Gagne, „Podstawy systemów operacyjnych”, WNT, Warszawa, 2005
• A. S. Tanenbaum, „Systemy operacyjne”, Helion, Gliwice, 2010
• W. Stallings, „Systemy operacyjne. Struktura i zasady budowy”, WN PWN, Warszawa, 2006
• A. S. Tanenbaum, M. Van Steen „Systemy rozproszone. Zasady i paradygmaty”, WNT, 2006
Definicja systemu operacyjnego
• Nie istnieje ścisła definicja
• Jest to zwykle program lub zbiór programów zarządzających sprzętem komputerowym
Rodzaje systemów operacyjnych• Przeznaczenie
– Ogólnego przeznaczenia (SOOP)
– Specjalizowane• Równoległe• Czasu rzeczywistego• Wbudowane
• Rodzaj systemu komputerowego– Osobiste (np. biurkowe, notebooki)
– Dla komputerów główne (mainframe)
– Systemy mobilne (Android, BBOS, iOS, Windows Phone)
– Systemy przemysłowe (QNX)
Rodzaje systemów operacyjnych (c.d.)
Elementy systemu komputerowego
System operacyjny
Aplikacje systemowe i użytkowe
Użytkownik 1
Sprzęt komputerowy
Użytkownik 2 Użytkownik n…
Rodzaje systemów komputerowych
• Komputery główne• Komputery biurkowe• Terminale• Komputery przenośne• Komputery podręczne
Cele systemów operacyjnych
• Maksymalizacja wykorzystania zasobów
• Łączność z innymi komputerami
• Wygoda użytkownika
• Zarządzanie zasobami
• Obsługa wielu użytkowników
Systemy komputerów głównych
• Systemy wsadowe• Systemy wieloprogramowe• Systemy z podziałem czasu
Systemy wsadowe
• Obsługa za pomocą konsoli• Wejście: czytniki kart
perforowanych• Operator komputera wykonywał
wszystkie działania• Wsad to zestaw zadań
wykonywanych przez system• Główna wada: powolne!!• Brak możliwości planowania
zadań
System operacyjny
Programy użytkownika
Systemy wieloprogramowe
• Wiele programów w pamięci• System zarządza przydziałem
procesora zadaniom i wykorzystaniem pamięci
• Cel: maksymalizacja wykorzystania CPU
• Procesor ciągle jest przełączany między zadaniami
• Wada: skomplikowane!!
System operacyjny
Zadanie 1
Zadanie 2
Zadanie 3
Planowanie przydziału procesora (scheduling)
Systemy z podziałem czasu• Systemy wieloprogramowe
wzbogacone o interakcję z użytkownikiem
• Przykład: interakcyjny system komputerowy
• Parametr: czas odpowiedzi• Program w pamięci – proces• Operacje wejścia-wyjścia
interakcyjne• Zaawansowane zarządzanie
pamięcią i ochrona (pamięć wirtualna i logiczna, system plików)
System operacyjny
Zadanie 1
Zadanie 2
Zadanie 3
Inne systemy komputerowe
• Systemy biurkowe
• Systemy wieloprocesorowe
• Systemy rozproszone
• Systemy zgrupowane
• Systemy czasu rzeczywistego
• Systemy kieszonkowe
Systemy biurkowe
• Cel: maksymalizacja wygody użytkownika i szybkość kontaktu z użytkownikiem
• Obecność graficznego interfejsu użytkownika (GUI)
• Potrzebne dodatkowe mechanizmy ochrony przed szkodliwym oprogramowaniem (malware)
Systemy wieloprocesorowe
• Systemy równoległe (ściśle powiązane)
• Większa liczba procesorów zapewnia większą przepustowość
• Wykorzystanie ekonomiki skali
• Zwiększenie niezawodności (systemy tolerujące awarie)
• Dwa rozwiązania: przetwarzanie symetryczne i asymetryczne
Systemy rozproszone
• Wykorzystują sieć komputerową (najczęściej LAN lub MAN)
• Dwa modele:– Klient-serwer– Partnerskie (peer-to-peer)
• Są to systemy luźno powiązane
• Zarządzane przez sieciowy system operacyjny
Systemy zgrupowane
• Wykorzystują wiele systemów indywidualnych do wykonania zadania
• Węzły (grona) wspomagane oprogramowaniem
• Grona mogą być symetryczne lub asymetryczne
• Wykorzystanie:– Obliczenia– Udostępnianie rozproszonych systemów plików– Sieci pamięci masowych
Systemy czasu rzeczywistego• Realizują wymagania na czas wykonania
operacji• Nacisk na szybką pamięć operacyjną• Dwa tryby:
– Rygorystyczny (Hard Real-Time)– Łagodny (Soft Real-Time)
• Zastosowania:– Przemysł– Wizualizacja danych– Monitorowanie badań naukowych
Systemy kieszonkowe
• Wykorzystywane w telefonach komórkowych i inteligentnych urządzeniach typu palmtop, czy PDA
• Niewielkie rozmiary wymuszają małą ilość pamięci, niewielki procesor i ekran
• Liczne interfejsy komunikacji bezprzewodowej (Bluetooth, IrDA, WiFi)