Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
1
SYSTEMY OPERACYJNE WSTĘP
2
SYSTEMY OPERACYJNE - WSTĘP
System komputerowy Sprzęt komputerowy - zasoby o specyficznej architekturze oraz organizacji zarządzane przez system operacyjny. System operacyjny - program, który nadzoruje i koordynuje dostęp programów do zasobów Programy użytkowe - realizują potrzeby użytkowników systemu komputerowego: kompilatory, edytory, grafika, bazy danych ... Użytkownicy - ludzie, maszyny, komputery..
3
SYSTEMY OPERACYJNE - WSTĘP
Struktura komputera
4
SYSTEMY OPERACYJNE - WSTĘP
Magistrala systemowa Droga zapewniająca komunikację między modułami: procesorem, pamięcią i wejściem-wyjściem - Tryb rozgłaszania (ang. broadcast) 50 do 100 oddzielnych linii pogrupowanych w 8, 16, 32 linii zwanych szynami linie danych - do przenoszenia danych np. szyna danych 8b a rozkaz 16b: 2 x transfer z pamięci - linie adresowe - do określenia adresu danych - linie sterowania - do sterowania urządzeniami - linie zasilania
5
SYSTEMY OPERACYJNE - WSTĘP
Przykład Pentium cache(L2), local bus, memory bus - PCI bridge chip: local, memory, PCI ISA (ang. Industry Standard Architecture) - I/O bus: EIDE (ang. Enhance Integrated Drive Electronics), ATA (ang. Advanced Technology Attachment) - dyski 16,67MB/sec PCI (ang. Peripheral Component Interconnect) - SCSI (ang. Small Computer System Interface) szybkie we/wy do 160MB/sec (dyski,..) - USB (ang. Universal Serial Bus) wolne urządzenia we/wy do 1.5MB/sec (mysz, skaner,..) - IEEE 1394 (FireWire) - do 50MB/sec (multimedia)
6
SYSTEMY OPERACYJNE - WSTĘP
7
Jednostka centralna - funkcje
SYSTEMY OPERACYJNE - WSTĘP Jednostka centralna - funkcje CPU = procesor = jednostka centralna Pobieranie rozkazów z pamięci Interpretowanie rozkazów Pobieranie danych (z pamięci lub we/wy Przechowywanie danych w pamięci Przetwarzanie danych – wykonywanie rozkazów Zapisywanie wyników (do pamięci lub na we/wy)
8
SYSTEMY OPERACYJNE - WSTĘP
Rejestry procesora - licznik programu (PC) - adres rozkazu do pobrania - rejestr rozkazu (IR) - kod rozkazu - rejestr adresowy pamięci (MAR) - adres lokacji - rejestr buforowy pamięci (MBR) - dane do/z pamięci - rejestry PSW (program status word) - słowo stanu programu, informacje o stanie
9
SYSTEMY OPERACYJNE - WSTĘP
Wejście wyjście Dlaczego nie łączy się urządzeń peryferyjnych bezpośrednio z magistralą systemową? wielka różnorodność urządzeń we/wy; przesyłanie różnej ilości danych a) z różną prędkością; b) w różnym formacie; urządzenia we/wy są za wolne dla procesora i pamięci; Potrzeba modułu we/wy - interfejs z procesorem i pamięcią przez magistralę - interfejs z urządzeniami peryferyjnymi
10
SYSTEMY OPERACYJNE - WSTĘP
Realizacja we / wy programowane - dane są wymieniane między procesorem a modułem we/wy, procesor czeka na zakończenie operacji we/wy sterowane przerwaniami - procesor wydaje operację we/wy i wykonuje dalsze rozkazy do momentu zakończenia operacji we/wy (przerwanie we/wy) bezpośredni dostęp do pamięci (direct memory access -DMA) - moduł we/wy wymienia dane bezpośrednio z pamięcią bez udziału procesora
11
SYSTEMY OPERACYJNE - WSTĘP
Pamięć główna - CPU - wewnętrzna (główna) - zewnętrzna (pomocnicza) - długość słowa – 8b, 16b, 32b, 64b procesor 8, 16, 32, 64 bitowy - pojemność pamięci w liczbie słów lub w bajtach
12
Pamięć – własności fizyczne
SYSTEMY OPERACYJNE - WSTĘP Pamięć – własności fizyczne półprzewodnikowa: RAM, ROM, Flash magnetyczna: dyskowa, taśmowa magneto-optyczna: CD, DVD Pamięć – wydajność czas dostępu: realizacja operacji lub ustawienie głowicy czas cyklu pamięci: od polecenia operacji do jej zakończenia szybkość transferu: [czas cyklu]-1 ; czas operacji na n bitach [b/sek]
13
Pamięć – metody dostępu
SYSTEMY OPERACYJNE - WSTĘP Pamięć – metody dostępu - sekwencyjny – liniowo, blok po bloku, w przód lub w tył; czas dostępu zależny od położenia bloku [np. pamięć taśmowa] - bezpośredni – każdy blok z unikalnym adresem, czas dostępu: skok + sekwencyjne przeszukiwanie [np. dysk] - swobodny – każda lokacja w pamięci ma unikatowy mechanizm adresowania; stały czas dostępu [np. RAM] - skojarzeniowy – lokalizacja na podstawie porównania z zawartością a nie na podstawie adresu; stały czas dostępu [np.cache]
14
SYSTEMY OPERACYJNE - WSTĘP
Elementy architektury SK - procesor pamięć operacyjna pamięć podręczna sterownik pamięci pamięć dyskowa sterownik pamięci dyskowej urządzenia zewnętrzne: klawiatura, mysz, drukarka sterownik urządzeń zewnętrznych magistrala systemowa
15
SYSTEMY OPERACYJNE - WSTĘP
Elementy architektury SK - mechanizm przerwań (odpytywanie, wektor przerwań) - synchroniczne i asynchroniczne operacje WE / WY - DMA - rodzaje pamięci - sprzętowe mechanizmy ochrony - rola przerwań w SO
16
SYSTEMY OPERACYJNE - WSTĘP
SO - definicje SO – program pośredniczący pomiędzy użytkownikiem a systemem komputerowym; zadaniem SO jest stworzenie środowiska, w którym użytkownik wykonuje programy. Dystrybutor zasobów - przydziela zasoby poszczególnym procesom Program sterujący - nadzoruje wykonywanie programów użytkowych oraz operacji we / wy Jądro systemu - ta część SO, która działa w komputerze nieustannie.
17
SYSTEMY OPERACYJNE - WSTĘP
Funkcje systemu operacyjnego - nadzoruje i koordynuje (optymalizuje) wykorzystywanie zasobów (sprzętu) przez programy użytkowe, - dostarcza środków do właściwewgo użycia zasobów, - nie wykonuje sam żadnej użytecznej funkcji, ale tworzy środowisko, - zarządza zasobami i przydziela je poszczególnym procesom i użytkownikom wg potrzeb, - steruje urządzeniami we-wy i programami użytkownika.
18
SYSTEMY OPERACYJNE - WSTĘP
Funkcje użytkowe sterowanie i kontrola wykonania programu – zapewnienie pełnej kontroli użytkownika nad kompilacją i uruchomieniem programu, obsługa we/wy – udostępnienie komunikacji z urządzeniami we/wy (bez koniecznej znajomości szczegółów obsługi tych urządzeń), obsługa zbioru plików – umożliwia przetwarzanie plików.
19
SYSTEMY OPERACYJNE - WSTĘP
Funkcje systemowe (definiują interfejs programisty z systemem) zarządzanie pamięcią, ochrona zasobów – wzajemna separacja programów w celu zapewnienia ich prywatności, przydział zasobów poszczególnym programom, komunikacja między procesami, obsługa wyjątków – reagowanie na zdarzenia zagrażające integralności systemu lub poprawnemu wykonaniu programów, harmonogramowanie – ustalanie porządku wykonania programów, raportowanie – tworzenie statystyk wykorzystania zasobów przez poszczególnych użytkowników.
20
SYSTEMY OPERACYJNE - WSTĘP
Podsystemy SO Podsystem zarządzania procesami Podsystem zarządzania pamięcią Podsystem systemu plików Podsystem wejścia / wyjścia Podsystem pamięci pomocniczej Podsystem usług sieciowych Podsystem ochrony Interpreter poleceń i programy użytkowe
21
SYSTEMY OPERACYJNE - WSTĘP
22
SYSTEMY OPERACYJNE - WSTĘP
Podsystem zarządzania procesami – śledzi wszystkie procesy działające w systemie (zarówno systemowe, jak i procesy użytkowników), przydzielone im zasoby, ich stan oraz kolejność ich wykonywania w danej chwili. Podsystem ten odpowiada za: tworzenie i usuwanie procesów, szeregowanie, wstrzymywanie i wznawianie procesów, mechanizmy synchronizacji i komunikacji między procesami, oraz obsługi zakleszczeń.
23
SYSTEMY OPERACYJNE - WSTĘP
Podsystem zarządzania pamięcią – śledzi, które obszary pamięci operacyjnej są wolne, a które są zajęte i przez jakie procesy; – przydziela pamięć procesom i zwalnia ją; – zajmuje się również pamięcią wirtualną; – w środowisku wieloprogramowym decyduje też o tym, które programy mają być załadowane do pamięci operacyjnej, a które mają oczekiwać na uruchomienie.
24
SYSTEMY OPERACYJNE - WSTĘP
Podsystem systemu plików – ukrywa przed użytkownikiem sposób realizacji plików i katalogów Realizuje: podstawowe operacje na plikach i katalogach, dostęp do plików, rozmieszczenie treści plików w pamięci pomocniczej, składowanie plików na urządzeniach pamięci trwałej .
25
SYSTEMY OPERACYJNE - WSTĘP
Podsystem wejścia - wyjścia – ukrywa przed użytkownikiem szczegóły dotyczące urządzeń wejścia/wyjścia. Realizuje: moduły sterujące poszczególnych urządzeń, ujednolicony interfejs modułów sterujących urządzeniami, moduł zarządzający buforowaniem i czytaniem z wyprzedzeniem pamięci pomocniczej.
26
SYSTEMY OPERACYJNE - WSTĘP
Podsystem pamięci pomocniczej – zarządza urządzeniami pamięci pomocniczej (zwykle dyskowej), – śledzi, które obszary są wolne, a które zajęte, – przydziela pamięć, szereguje odwołania do pamięci pomocniczej , – współpracuje zarówno z podsystemem systemu plików jak i z podsystemem pamięci wirtualnej.
27
SYSTEMY OPERACYJNE - WSTĘP
Podsystem usług sieciowych Realizuje: – komunikację pomiędzy połączonymi komputerami w sieci oraz rozproszone funkcje systemu operacyjnego (np. sieciowy system plików).
28
SYSTEMY OPERACYJNE - WSTĘP
Podsystem ochrony – określa z jakich zasobów mogą korzystać poszczególni użytkownicy i w jakim zakresie .
29
SYSTEMY OPERACYJNE - WSTĘP
Interpreter poleceń i programy użytkowe – stanowi interfejs do wydawania poleceń systemowi operacyjnemu; – udostępnia użytkownikom rozmaite programy użytkowe, dostarczane w ramach systemu operacyjnego.
30
SYSTEMY OPERACYJNE - WSTĘP
Struktury SO Prosta (system monolityczny) – jądro nie ma określonej struktury, stanowi monolityczny program (np. MS DOS: max funkcjonalności przy oszczędności miejsca, ewentualne warstwy: obsługa urządzeń ROM BIOS, obsł. urz. z poziomu DOS, programy rezydentne, interpreter poleceń i programy użytkowe); – wszystkie funkcje SO umieszczone w jądrze i wykonywane w trybie uprzywilejowanym (np. OS/360); – część funkcji przeniesiona z jądra na poziom użytkownika (np. w Unix).
31
SYSTEMY OPERACYJNE - WSTĘP
Struktury SO Struktura mikrojądra Mikrojądro obejmuje jedynie: tworzenie procesów, komunikację międzyprocesową, mechanizmy (ale nie strategie) zarządzania pamięcią, procesorem i urządzeniami (na najniższym poziomie), np. QNX (na ogół w systemach przemysłowych), Mach.
32
SYSTEMY OPERACYJNE - WSTĘP
Struktury SO Warstwowa – ustala hierarchię poleceń systemowych. Każda warstwa spełnia funkcje zależne tylko od warstwy niższej, część operacji danej warstwy polega na wywołaniu warstwy niższej, część jest zaimplemen-towana w danej warstwie, np. poziom 5: programy użytkowników poziom 4: buforowanie urządzeń we/wy poziom 3: obsługa konsoli operatora poziom 2: zarządzanie pamięcią poziom 1: planowanie przydziału procesora poziom 0: sprzęt
33
SYSTEMY OPERACYJNE - WSTĘP
Struktury SO Struktura typu klient – serwer moduły pełnią wyodrębnione zadania, komunikują się poprzez wysyłanie komunikatów; klient - żąda usługi, serwer – realizuje ją; protokół bezpołączeniowy typu pytanie – odpowiedź jądro można zredukować do 2 odwołań do systemu (nadaj / odbierz komunikat); prosta i łatwa adaptacja do systemów rozproszonych. Klienci komunikują się z serwerami poprzez jądro systemu, każdy serwer pracuje we własnej, wydzielonej i chronionej przestrzeni adresowej PAO, odizolowany od innych procesów.
34
SYSTEMY OPERACYJNE - WSTĘP
Struktury SO Struktura typu klient – serwer (cd.) 3 warianty struktury K-S: wszystkie aplikacje wykonywane są przez serwer a wyniki wyświetlane na monitorze klienta; serwer dostarcza danych dla aplikacji uruchamianych na komputerze klienta; c) wszystkie komputery współpracują ze sobą jak równy z równym (peer to peer), korzystając wzajemnie ze swoich zasobów (dysków i procesorów).
35
SYSTEMY OPERACYJNE - WSTĘP
Koncepcja maszyny wirtualnej - jądro systemu jest traktowane jako sprzęt; każdy proces otrzymuje (wirtualną) kopię komputera będącego podstawą systemu; każda wirtualna maszyna jest identyczna z rzeczywistym sprzętem, więc każda może wykonywać dowolny system operacyjny; (np. VM dla dużych komputerów firmy IBM). Korzyści: dzięki pełnemu oddzieleniu realizacji wieloprogramowości od realizacji ‘maszyny rozszerzonej’ każda część systemu jest dużo mniejsza, bardziej elastyczna i łatwiejsza w utrzymaniu.
36
SYSTEMY OPERACYJNE - WSTĘP
Koncepcja maszyny wirtualnej (cd.) - maszyna wirtualna dostarcza identycznego interfejsu dla sprzętu; system operacyjny tworzy wirtualne systemy komputerowe, każdy proces ma do dyspozycji własne (wirtualne) jądro, dyski, pamięć, drukarki; zasoby fizycznego komputera są dzielone w celu utworzenia maszyn wirtualnych; • planowanie przydziału procesora jest tak wykorzystane, że użytkownik ma wrażenie jakoby miał do dyspozycji własny procesor, • spooling i system zarządzania plikami jest wykorzystany tak, że powstaje wrażenie użytkowania drukarki, czytnika na wyłączność, • zwykłe terminale użytkownika funkcjonują jak konsole operatorskie maszyny wirtualnej (system interakcyjny).
37
SYSTEMY OPERACYJNE - WSTĘP
Zasoby – obiekty współdzielone, (współużytkowane) [shared] przez użytkowników i system operacyjny. zasoby sprzętowe – procesory, urządzenia we/wy, pamięci, - zasoby programowe – pliki: programy i dane;
38
SYSTEMY OPERACYJNE - WSTĘP
Przestrzeń adresowa i pamięci Adresy, używane przez programistę w programie - adresy wirtualne (logiczne); ich zbiór - przestrzeń adresowa. Adresy rzeczywistych komórek pamięci operacyjnej - adresy fizyczne; ich zbiór - przestrzeń pamięci.
39
SYSTEMY OPERACYJNE - WSTĘP
Procesy Proces – obiekt aktywny = program z przydzielonymi zasobami komputerowymi (pamięć operacyjna, procesor). Proces sekwencyjny – realizacja programu sekwencyjnego Procesy współbieżne – wykonywanie jednego z nich zaczyna się po rozpoczęciu a przed zakończeniem drugiego.
40
SYSTEMY OPERACYJNE - WSTĘP
Jądro systemu operacyjnego - ta część SO, która działa w komputerze nieustannie; wszystkie pozostałe programy są programami użytkowymi. Tryby pracy systemu operacyjnego - tryb użytkownika (user mode) - wykonywane są programy użytkownika; - tryb monitora [jądra, systemu] (monitor mode) - wykonywane są funkcje jądra (funkcje SO).
41
SYSTEMY OPERACYJNE - WSTĘP
Funkcje jądra dostarczenie mechanizmów do tworzenia i usuwania procesów, dostarczenie mechanizmów szeregowania procesora, zarządzania pamięcią i urządzeniami (zarządzanie zasobami), dostarczenie narzędzi do synchronizacji działań procesów, dostarczenie mechanizmów komunikacji międzyprocesowej.
42
SYSTEMY OPERACYJNE - WSTĘP
Spojrzenie na SO I – rodzaje świadczonych przez system usług – spojrzenie użytkownika II – interfejs dla użytkowników i programistów – spojrzenie programisty III – elementy systemu i ich wzajemne powiązania – spojrzenie projektanta
43
SYSTEMY OPERACYJNE - WSTĘP
USŁUGI SO 1) dla wygody programisty / użytkownika Wykonanie programu System umie: załadować program do pamięci, rozpocząć jego wykonywanie, zakończyć go w sposób normalny lub z przyczyn wyjątkowych. Operacje wejścia-wyjścia Program użytkownika nie może bezpośrednio wykonywać operacji we/wy, środki do realizacji tych czynności ma system operacyjny.
44
SYSTEMY OPERACYJNE - WSTĘP
USŁUGI SO Manipulowanie systemem plików System plików umożliwia programom zapisywanie i odczytywanie plików, także tworzenie i usuwanie plików przy użyciu ich nazw. Komunikacja Procesy komunikują się w celu wzajemnego kontaktu i wymiany informacji. Dwie podstawowe metody: pamięć dzielona – procesy działają na tym samym komputerze, system komunikatów – procesy wykonywane są w różnych systemach komputerowych, połączonych przez sieć.
45
SYSTEMY OPERACYJNE - WSTĘP
USŁUGI SO Wykrywanie błędów System umie odpowiednio reagować na wszystkie rodzaje błędów, gwarantując poprawność i spójność obliczeń.
46
SYSTEMY OPERACYJNE - WSTĘP
USŁUGI SO ) optymalizujące działanie systemu Przydział zasobów Wielu użytkowników i zadaniom pracującym w tym samym czasie, muszą być przydzielone zasoby. Rozliczanie Przechowywanie danych o stopniu korzystania z poszczególnych zasobów systemu przez poszczególnych użytkowników, w celach rozliczeniowych lub informacyjnych i statystycznych. Ochrona Procesy wykonywane współbieżnie nie mogą sobie wzajemnie przeszkadzać ani udostępniać informacji użytkownikom (procesom) nieupoważnionym.
47
SYSTEMY OPERACYJNE – WSTĘP
FUNKCJE SYSTEMOWE OPERACJE NA PROCESACH zakończenie (end), zaniechanie (abort), załadowanie (load), wykonanie (execute), utworzenie procesu (create process), zakończenie procesu (terminate process), pobranie atrybutów procesu (get process attributes), określenie atrybutów procesu (set process attributes) czekanie na czas (wait for time), oczekiwanie na zdarzenie (wait for event), sygnalizacja zdarzenia (signal event), przydział i zwolnienie pamięci (allocate and free memory).
48
SYSTEMY OPERACYJNE – WSTĘP
FUNKCJE SYSTEMOWE 2. OPERACJE NA PLIKACH utworzenie pliku (create file), usunięcie pliku (delete file), otwarcie (open), zamknięcie (close), czytanie (read), pisanie (write), zmiana położenia (reposition), pobranie atrybutów pliku (get file attributes), określenie atrybutów pliku (set file attributes).
49
SYSTEMY OPERACYJNE – WSTĘP
FUNKCJE SYSTEMOWE 3. OPERACJE NA URZĄDZENIACH zamówienie urządzenia (request device), zwolnienie urządzenia (release device), czytanie (read), pisanie (write), zmiana położenia (reposition), pobranie atrybutów urządzenia (get device attributes), określenie atrybutów urządzenia (set device attributes), logiczne przyłączenie lub odłączenie urządzeń (logically attach or detach devices).
50
SYSTEMY OPERACYJNE – WSTĘP
FUNKCJE SYSTEMOWE 4. INFORMACJE SYSTEMOWE pobranie czasu lub daty (get time or date), określenie czasu lub daty (set time or date), pobranie danych systemowych (get system data), określenie danych systemowych (set system data), pobranie atrybutów procesu, pliku lub urządzenia (get process, file or device attributes), określenie atrybutów procesu, pliku lub urządzenia (set process, file or device attributes).
51
SYSTEMY OPERACYJNE – WSTĘP
FUNKCJE SYSTEMOWE 5. KOMUNIKACJA utworzenie, usunięcie połączenia komunikacyjnego (create, delete communication connection), nadawanie, odbieranie komunikatów (send, receive messages), przekazanie informacji o stanie (transfer status information), przyłączanie lub odłączanie urządzeń zdalnych (attach or detach remote devices). Ώ
52
SYSTEMY OPERACYJNE - WSTĘP
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.