Twoim problemem jest to, że powszechną NICOŚĆ mylisz z osobistą PUSTKĄ
System operacyjny, składowe komputera, systemy wsad. Ochrona cpu, sr. Obliczeniowe, przerwania, caching, DMA, składowe SO, zarz. We/wy
-----------------------------------
System operacyjny–program, który działa jako pośrednik między użytkownikiem komputera a sprzętem komputerowym.
Zadania systemu operacyjnego:
•Zarządzanie zasobami komputera: procesory, pamięć, urządzenia wejścia-wyjścia, porty komunikacyjne itd.
•Ukrywanie szczegółów sprzętowych przez tworzenie abstrakcyjnych obiektów (maszyn wirtualnych).
•Tworzenie środowiska, w którym użytkownik może wydajnieiwygodniewykonywać programy.
Składowe systemu komputer.
•Sprzęt(ang.hardware)–dostarcza podstawowe zasoby systemu komputerowego: procesor (jednostka centralna,, ang. centralprocessing unit–CPU), pamięć, urządzenia wejścia-wyjścia (WE/WY) itd.
•System operacyjny–nadzoruje i koordynuje posługiwanie się sprzętem przez różne programy aplikacyjne (użytkowe) pracujące na zlecenie różnych użytkowników.
•Programy aplikacyjne(kompilatory, systemy baz danych, gry komputerowe, programy dla biznesu) –określają sposoby użycia zasobów systemu do rozwiązywania zadań stawianych przez użytkowników.
•Użytkownicy(ludzie, maszyny, inne komputery).
Proste systemy wsadowe(Simple Batch Systems)
Konieczne zatrudnienie operatora (użytkownik ≠operator).
Użytkownik przygotowuje zadanie (na kartach perforowanych) i przekazuje je operatorowi.
Operator uruchamia zadanie i wyniki zwraca użytkownikowi.
Skrócenie czasu ustawiania (set-up) przez grupowanie podobnych zadań.
Automatyczne porządkowanie zadań –automatyczne przekazywanie sterowania od jednego zadania do drugiego.
Wprowadzenie kart sterujących w celu rozróżniania zadań itd.
☺Zalety –większa przepustowość!
Wady –niska wydajność:
•długi czas obiegu zadania;
•szybki procesor i wolny czytnik kart (drukarka) pracujące naprzemian.
Spooling: Metoda nakładania operacji WE/WY jednego zadania na obliczenia drugiego zadania.
Wieloprogramowe systemy wsadowe
Wiele zadań rezyduje w tym samym czasie w pamięci, a procesor jest im odpowiednio przydzielany (współbieżność);
Np. gdy wykonujące się zadanie potrzebuje zaczekać na jakąś usługę (np. WE/WY), to uruchamiane jest inne.
Niezbędne cechy systemu operacyjnego:
•Szeregowanie zadań –decydowanie, które zadania z puli zadańmają być załadowane do pamięci operacyjnej.
•Zarządzanie pamięcią –system musi alokować pamięć dla wielu zadań.
•Planowanie przydziału procesora (CPUscheduling) –system musi wybrać do uruchomienia jedno spośród wielu zadań w pamięci.
•Ochrona zadań na wszystkich etapach pobytu w systemie.
•Alokowanie urządzeń, dostarczanie procedur WE/WY.
☺Zalety:Wydajne wykorzystanie zasobów (CPU, pamięć operacyjna, urządzenia zewnętrzne).
Wady:
Użytkownik nie może ingerować w zadanie w trakcie jego wykonywania, np. reagować na błędy kompilacji, nie może na bieżąco testować programu itd.
Długi obieg zadania –od złożenia programu do odebrania wyników.
Ochrona jednostki centralnej (CPU CPU)
•Czasomierz(timer)–generuje przerwania po wyznaczonym okresie aby zapewnić systemowi operacyjnemu utrzymanie kontroli.
Licznik czasomierza jest zmniejszany przy każdym tyknięciu zegara.
Kiedy licznik osiągnie wartość zero pojawia się przerwanie.
•Czasomierz jest zwykle używany do realizacji podziału czasu.
Środowiska obliczeniowe (Computing Environments Environments)
Tradycyjne obliczenia
•W przeszłości typowymi środowiskami obliczeniowymi były: przedsiębiorstwo, instytucja, biuro, czy pojedynczy komputer; komunikacja zdalna była utrudniona.
•Wraz z rozwojem sieci przewodowych i bezprzewodowych oraz technologii WWW środowiska obliczeniowe stają się coraz bardziej rozproszonei globalne.
Obliczenia oparte na WWW (Web-based computing)
•Rozpowszechnienie WWW sprawiło, że coraz więcej coraz bardziej różnorodnych urządzeń ma do niego dostęp: PC, PDA, telefony komórkowe itd.
•Środowisko obliczeniowe WWW zwiększyło znaczenie łączności sieciowej w odniesieniu do urządzeń sprzętowych oraz systemów operacyjnych.
•Powstała nowa kategoria urządzeń: balansery obciążeń(load balancers)–rozdzielają połączenia sieciowe w ramach puli podobnych serwerów.
Obliczenia wbudowane(embeddedcomputing)
•Najbardziej rozpowszechnionymi formami komputerów są komputerywbudowane, np. w samochodach, robotach produkcyjnych, magnetowidach, kuchenkach mikrofalowych, systemach alarmowych itd.
•Ich celem jest na ogół wykonywanie bardzo specjalizowanych funkcji.
•Komputery wbudowane działają często pod nadzorem wbudowanych systemów czasu rzeczywistego.
•Systemy operacyjne tego typu urządzeń mają dość ograniczone możliwości.
Zastosowania oraz możliwości systemów wbudowanych stale się zwiększają!
Mechanizm przerwań
•Przerwanieprzekazuje sterowanie do procedury obsługi przerwania, zwykle poprzez wektor przerwańzawierający adresy wszystkich procedur obsługi (stosowane np. w systemach UNIX, MS-DOS).
•W architekturze przerwań trzeba uwzględniać przechowywanie adresu przerwanego rozkazu.
•Podczas obsługi jednego przerwania inne przerwania są wyłączone, aby uchronić przed jego utratą.
•Przerwanie generowane przez oprogramowanie nazywa się pułapką (trap)–może być spowodowane przez jakiś błąd (np. dzielenie przez zero) lub na życzenie użytkownika.
•System operacyjny (SO) przechowuje stan CPU zapamiętując zawartość rejestrów i licznika rozkazów.
•SO ustala rodzaj przerwania przy pomocy: odpytywania(polling)lub wektorowego systemu przerwań.
•Oddzielne segmenty kodu określają działania, jakie należy podjąćdla każdego typu przerwania.
•Nowoczesne systemy operacyjne są sterowane przerwaniami(interrupt driven).
Przechowywanie podręczne (Caching Caching)
Stosowaniepamięci podręcznej(cache)–kopiowanie informacji, która może być potrzebna (np. CPU), do szybszego systemu pamięci na okres przejściowy.
Gdy potrzebny jest jakiś fragment informacji, najpierw sprawdza się, czy nie ma go w pamięci podręcznej –jeżeli nie, to się go do niej sprowadza.
Zarządzanie pamięcią podręczną (cache management)jest ważnym zagadnieniem projektowym odnośnie sprzętu oraz systemów operacyjnych –odpowiedni dobór wielkości pamięci podręczneji polityki zastępowaniaw niej informacji może sprawić, że 80 –95%wszystkich dostępów będzie odnosić się do pamięci podręcznej.
Struktura DMA •Używana dla szybkich urządzeń WE/WY zdolnych do transmisji danych z szybkością zbliżoną do szybkości pamięci operacyjnej (np. dyski, sieci komunikacyjne).•Sterownik urządzenia przesyła blok danych między własnym buforem a pamięcią –bez interwencji procesora.•Przerwanie jest generowane na cały blok danych, a nie po każdym przesłanym bajcie (jak dla powolnych urządzeń WE/WY).•Działanie:SO wybiera bufor z kolejki buforów do przesłania.Moduł obsługi urządzenia(device driver)ustawia w rejestrach DMA adresy źródła i celu oraz długość transmisji.Sterownik DMA otrzymuje rozkaz do zainicjowania operacji WE/WY.Podczas transmisji danych procesor może wykonywać inne zadania.Po zakończeniu operacji sterownik DMA wysyła procesorowi przerwanie.☺Duża szybkość operacji WE/WY.Sterownik DMA „kradnie” cykle pamięci procesorowi, co może spowalniać jego działanie.
Składowe systemu operacyjnego
Zarządzanie procesami.
Zarządzanie pamięcią operacyjną.
Zarządzanie plikami.
Zarządzanie systemem wejścia-wyjścia.
Zarządzanie pamięcią pomocniczą.
Praca sieciowa.
System ochrony.
System interpretacji poleceń.
Zarządzanie systemem WE/WY
•Jednym z celów systemu operacyjnego jest ukrywanie przed użytkownikiem (czasem też przed większością samego systemu operacyjnego) szczegółów dotyczących sprzętu, m.in. WE/WY.
Wiele systemów ma specjalnepodsystemy WE/WY..
•System WE/WYskłada się z: Systemu zarządzania pamięcią: buforowanie, przechowywanie podręczne, spooling;
Ogólnego interfejsu do modułów sterujących urządzeń;
Modułów sterujących (programów obsługi) dla poszczególnych urządzeń sprzętowych.
Uslugi i funkcje SO, VM, rozruch systemu, procesy, probl. Pord-kons. Watki
----------------------------------
Usługi systemu operacyjnego
•Wykonywanie programów–zdolność systemu operacyjnego do ładowania programów do pamięci i ich wykonywania.
•Operacje WE/WY–ponieważ program użytkownika nie może bezpośrednio wykonywać operacji WE/WY, system operacyjny musi dostarczać środki do ich wykonywania.
•Manipulowanie systemem plików–programy muszą mieć możliwość czytania i pisania w plikach, a także tworzenia i usuwania plików przy użyciu ich nazw.
•Komunikacja–wymiana informacji między procesami wykonywanymi albo w tym samym komputerze albo w różnych systemach komputerowych.
Zaimplementowana za pomocą pamięci dzielonej(sharedmemory) lub techniki przekazywania komunikatów (messagepassing).
•Wykrywanie błędów–zapewnienie poprawnego przebiegu obliczeń poprzez wykrywanie i obsługę błędów w działaniu CPU i pamięci, w urządzeniach WE/WY lub programach użytkownika.
Dodatkowe funkcje SO:
•Przydzielanie zasobów–alokacja zasobów do wielu użytkowników i wielu wykonywanych zadań.
•Rozliczanie–przechowywanie i śledzenie informacji o tym, którzy użytkownicy i w jakim stopniu korzystają z poszczególnych zasobów.
...