Wprowadzenie do systemów operacyjnych mgr inż. Krzysztof Szałajko
Co to jest system operacyjny? Co to jest system komputerowy? 2 / 37
Definicja: system operacyjny System operacyjny jest programem pośredniczącym pomiędzy użytkownikiem, a sprzętem komputerowym. Generuje środowisko, w którym użytkownik może wykonywać programy. 3 / 37
System komputerowy Sprzęt + System operacyjny + Oprogramowanie + Użytkownicy 4 / 37
Zarządca zasobów Czas pracy procesora Obszar pamięci Obszar dysku Urządzenia wejścia-wyjścia 5 / 37
Nadzorca Nadzoruje działanie programów Przeciwdziała błędom Zapobiega niewłaściwemu użyciu komputera 6 / 37
Pytania 1. Jak to jest, że system operacyjny może zajmować 1 MB, a może kilka GB? 2. Czym tak naprawdę jest system operacyjny? 7 / 37
Zarys historyczny
Pierwsze komputery Wielkie maszyny obsługiwane za pomocą konsoli. 9 / 37
Pierwsze komputery Urządzenia wejściowe: - czytniki kart - przewijaki taśm Urządzenia wyjściowe: - drukarki wierszowe - przewijaki taśm - perforatory kart 10 / 37
Pierwsze komputery Użytkownik przygotowywał dane (karty perforowane) i karty sterujące, przekazywał je operatorowi. Następnie oczekiwano na rezultat działania. System operacyjny znajdował się na stałe w pamięci operacyjnej, a jego głównym zadaniem było przekazywanie sterowania od jednego, do kolejnego zadania. 11 / 37
Systemy wsadowe Podobne wymaganiowo zadania zaczęto grupować. Operator w momencie dostępności komputera przekazywał grupę zadań do wykonania. Grupa taka nazywana była wsadem. 12 / 37
Systemy wsadowe Cechą dotychczasowych systemów jest brak nadzoru użytkownika podczas wykonania zadania. Jedyną możliwością było oczekiwanie na jego rezultat (np. w postaci wydruku na drukarce wierszowej). 13 / 37
Systemy wsadowe Taki system działania sprawiał, że jednostka centralna pozostawała często bezczynna. Działo się tak ze względu na ograniczenia szybkości mechanicznej sprzętu chociażby w momencie wczytywania kart, czy wydruku. 14 / 37
Spooling Wprowadzono technologię dyskową: dane wczytane z kart na dysk czytane z dysku przetwarzane wynik skopiowany do bufora systemowego i zapisany do pliku wynik drukowany 15 / 37
Spooling Simultaneous peripheral operation on-line jednoczesna, bezpośrednia praca urządzeń żywa dysku jako bufora do czytania z wyprzedzeniem anych wejściowych i do przechowania danych ejściowych do czasu, kiedy urządzenie wyjściowe ędzie w stanie je przyjąć. 16 / 37
Spooling Dzięki tej technologii system mógł wykonywać obliczenia jednego zadania jednocześnie z operacjami wejścia wyjścia. Efekt utrzymanie urządzeń w znacznie większej aktywności. 17 / 37
Spooling Pula zadań (job pool) struktura przechowująca listę zadań do wykonania. Dzięki temu system może tak wybierać kolejność zadań, aby zwiększyć efektywność działania całego systemu komputerowego. 18 / 37
Wieloprogramowość System wykonując zadanie z puli w pewnym momencie dojdzie do momentu oczekiwania na jakąś usługę. Wieloprogramowość wykorzystuje ten moment, aby zamiast przejść w stan bezczynności system przeszedł do wykonywania kolejnego zadania. 19 / 37
Wieloprogramowość Planowanie zadań: - wybór zadań do wczytania do pamięci operacyjnej Planowanie przydziału procesora: - wybór kolejnego zadania z pamięci do wykonania 20 / 37
Wielozadaniowość Kolejna faza rozwoju systemu operacyjnego. Procesor wykonuje na przemian wiele zadań, przełączając się niezauważalnie dla użytkownika pomiędzy każdym z nich. Eliminuje to również brak możliwości ingerencji w program przed końcem jego wykonania. 21 / 37
Wielozadaniowość Użytkownik wydaje komputerowi polecenia i otrzymuje natychmiastowe ich rezultaty. Urządzeniem wejściowym jest już najczęściej klawiatura, a wyjściowym ekran monitora. 22 / 37
Wielozadaniowość Wielu użytkowników może od tej pory jednocześnie korzystać z zasobów jednego komputera. Idea podziału czasu powstała w roku 1960, jednak swojej realizacji doczekała się dopiero w latach 70. 23 / 37
Pamięć wirtualna Zapotrzebowanie na pamięć oraz koszt pamięci operacyjnej spowodowały powstanie idei pamięci wirtualnej. - możliwość wykonania zadania, które nie mieści się w pamięci operacyjnej - wykorzystanie zasobów dysku twardego 24 / 37
Pamięć wirtualna 25 / 37
Systemy równoległe - jednostka wieloprocesorowa - procesory połączone szyną - procesory zegar - procesory mogą współdzielić pamięć i urządzenia zewnętrzne 26 / 37
Systemy równoległe Zwiększenie przepustowości Współczynnik przyspieszenia przy zwiększeniu o n procesorów mniejszy od n Straty na współdziałanie wszystkich procesorów Zwiększenie niezawodności 27 / 37
Łagodna degradacja Zdolność kontynuowania pracy systemu komputerowego w proporcjonalnej wydajności do ilości ocalałego sprzętu. Systemy przystosowane do łagodnej degradacji nazywany systemami tolerującymi awarie. 28 / 37
Systemy równoległe Wieloprzetwarzanie symetryczne wkażdym procesorze działa identyczna kopia systemu operacyjnego. Wieloprzetwarzanie asymetryczne Każdy procesor ma przypisane inne zadanie 29 / 37
Systemy rozproszone Podział zasobów Możliwość korzystania przez różne jednostki z pewnych zasobów wspólnych, bądź znajdujących się na innej jednostce Przyspieszanie obliczeń Wykorzystanie mocy obliczeniowej wielu jednostek 30 / 37
Systemy rozproszone Niezawodność W przypadku awarii jednej jednostki, pozostałe mogą pracować bez zakłóceń Komunikacja Wymiana informacji w ramach jednego systemu 31 / 37
Systemy czasu rzeczywistego Rygorystyczny system czasu rzeczywistego Surowe wymagania co do czasu wykonania zadania Procesy przemysłowe, medyczne, itp. Dane przechowywane w nieulotnej pamięci ROM o szybkim czasie dostępu 32 / 37
Systemy czasu rzeczywistego Łagodny system czasu rzeczywistego Zadanie krytyczne, wymagające obsługi czasu rzeczywistego dostaje pierwszeństwo Techniki multimedialne, kreowanie wirtualnej rzeczywistości 33 / 37
Pytania 1. Wymień cele systemu operacyjnego. 2. Staging - przemieszczenie, jest postacią spoolingu polegającą na przesłaniu całej zawartości taśmy magnetycznej na dysk. Jaka jest główna zaleta takiego działania? 3. Określ, jakie problemy bezpieczeństwa mogą dotyczyć systemu wielodostępowego i wieloprogramowego. 34 / 37
Pytania 4. Wymień zalety wieloprogramowości. 5. Wymień cechy systemu wsadowego. 6. Wymień cechy systemu z podziałem czasu. 7. Wymień cechy systemu czasu rzeczywistego. 8. Wymień cechy systemu rozproszonego. 35 / 37
Bibliografia Abraham Silberschatz, Peter B. Galvin, Greg Gagn Podstawy Systemów Operacyjnych 36 / 37
37 / 37