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



Podobne dokumenty
Działanie systemu operacyjnego

Działanie systemu operacyjnego

Działanie systemu operacyjnego

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

Działanie systemu operacyjnego

Warstwy systemu Windows 2000

System komputerowy. Sprzęt. System komputerowy. Oprogramowanie

Wstęp do Informatyki. Klasyfikacja oprogramowania

System komputerowy. System komputerowy

Wprowadzenie do systemów operacyjnych

DOS COMMAND.COM. Rys. 2. Główne moduły programowe systemu operacyjnego DOS. Interpreter poleceń. Rys. 3. Warstwowa struktura systemu DOS

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

1.1 Definicja procesu

Systemy operacyjne. Paweł Pełczyński

Sieciowe Systemy Operacyjne

Informatyka. informatyka i nauki komputerowe (computer science)

Temat. Budowa systemu komputerowego Zakładka 1. Elementy tworzące stanowisko komputerowe.

Systemy operacyjne i sieci komputerowe Szymon Wilk System operacyjny 1

Struktury systemów operacyjnych

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

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

1. Etapy rozwoju systemów komputerowych

Systemy Operacyjne. wykład 1. Adam Kolany. Październik, Instytut Techniczny Państwowa Wyższa Szkoła Zawodowa w Nowym Sączu

4. Procesy pojęcia podstawowe

Budowa systemów komputerowych

IdyllaOS. Prosty, alternatywny system operacyjny. Autor: Grzegorz Gliński. Kontakt:

Technika mikroprocesorowa. Struktura programu użytkownika w systemie mikroprocesorowym

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

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

SYSTEMY OPERACYJNE WYKLAD 6 - procesy

SYSTEMY OPERACYJNE I laboratorium 3 (Informatyka stacjonarne 2 rok, semestr zimowy)

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

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

System operacyjny System operacyjny

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

Technologia informacyjna. Urządzenia techniki komputerowej

Podstawy technologii informacyjnej. Beata Kuźmińska

Struktura systemu operacyjnego. Opracował: mgr Marek Kwiatkowski

Systemy operacyjne III

Temat. Budowa systemu komputerowego. Zakładka 1. Elementy tworzące stanowisko komputerowe.

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

Cechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer;

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

WIELODOSTĘPNE SYSTEMY OPERACYJNE 1 (SO1)

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

Podstawy Informatyki Systemy operacyjne

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

Komputery przemysłowe i systemy wbudowane

Paweł Skrobanek. C-3, pok pawel.skrobanek.staff.iiar.pwr.wroc.pl

4. Procesy pojęcia podstawowe

Kernel Kompilacja jądra

Czujniki obiektowe Sterowniki przemysłowe

Użytkownik Użytkownik Użytkownik Użytkownik... kompilatory edytor testu syst. bazy danych gry PROGRAMY UŻYTKOWE SYSTEM OPERACYJNY SPRZĘT KOMPUTEROWY

PRZEWODNIK PO PRZEDMIOCIE

Jądro systemu operacyjnego

System komputerowy, rodzaje, jednostki pamięci

System operacyjny MACH

Systemy Operacyjne I: Procesy

Działanie komputera i sieci komputerowej.

Zagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Systemy operacyjne. Systemy operacyjne. Systemy operacyjne. Program wykładów. Strona WWW przedmiotu: Program ćwiczeń projektowych

Struktury systemów operacyjnych

Egzamin pisemny z przedmiotu: Systemy operacyjne Semestr I

Wykład 3. Procesy i wątki. Wojciech Kwedlo, Wykład z Systemów Operacyjnych -1- Wydział Informatyki PB

System operacyjny komputera Informacje podstawowe

Procesy pojęcia podstawowe. 1.1 Jak kod źródłowy przekształca się w proces

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

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

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

Projektowanie oprogramowania systemów PROCESY I ZARZĄDZANIE PROCESAMI

Systemy GIS Systemy baz danych

U M L. System operacyjny Linux zagnieżdżony w zewnętrznym systemie operacyjnym (Linux)

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński

PRZEWODNIK PO PRZEDMIOCIE

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

5. Model komunikujących się procesów, komunikaty

Dariusz Brzeziński. Politechnika Poznańska, Instytut Informatyki

Jeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.

Linux: Procesy. Systemy Operacyjne. Mateusz Hołenko. 26 marca 2013

dr inż. Konrad Sobolewski Politechnika Warszawska Informatyka 1

Rejestr HKEY_LOCAL_MACHINE

Bezpieczeństwo systemów komputerowych. Java i JavaScript. Java i JavaScript. Java - historia

Prezentacja systemu RTLinux

Systemy operacyjne. Król Tomasz

Systemy operacyjne. dr inż. Jerzy Sas.

Procesy, wątki i zasoby

Czym jest Java? Rozumiana jako środowisko do uruchamiania programów Platforma software owa

Początki Javy. dr Anna Łazińska, WMiI UŁ Podstawy języka Java 1 / 8

Proces instalacji systemu operacyjnego Linux Red Hat 7.3 (1)

Struktura systemów komputerowych

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

PL B1 (19) PL (11) (12) OPIS PATENTOWY (13) B1. (51) Int.Cl.7: G 06F 3 /1 2 G06K 15/02 G06F 17/60 G07G 1/12

Zespół Szkół nr 2 w Nowym Dworze Gdańskim ul. Warszawska 54

LEKCJA TEMAT: Zasada działania komputera.

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

1. Co to jest system operacyjny

Podstawowe pojęcia dotyczące sieci komputerowych

41. System operacyjny. Postrzeganie systemu operacyjnego przez warstwę oprogramowania użytkowego

Zapisywanie algorytmów w języku programowania

Dodatek B. Zasady komunikacji z otoczeniem w typowych systemach komputerowych

Transkrypt:

(opracowano na podstawie skryptu PP: Królikowski Z., Sajkowski M. 1992: Użytkowanie systemu operacyjnego UNIX) W informatyce występują ściśle obok siebie dwa pojęcia: sprzęt (ang. hardware) i oprogramowanie (ang. software). SYSTEM OPERACYJNY stanowi najważniejszy składnik oprogramowania systemu komputerowego. Oprogramowanie - zorganizowany w postać programów zbiór informacji przechowywanych w pamięci komputera, służących do rozszerzenia możliwości sprzętu. u żytkownik 1 użytkownik 2 użytkownik 3..... użytkownik n Programy użytkowe, np. edytor tekstu, system baz danych, kompilator. SYSTEM OPERACYJNY BIOS Sprzęt komputera Struktura oprogramowania i jego związek ze sprzętem System operacyjny jest zbiorem procedur przeznaczonych do zarządzania zasobami systemu komputerowego. Zasoby komputerowe to obiekty współdzielone przez użytkowników i system operacyjny. Dzielą się na: sprzętowe procesory, pamięci, kanały danych, itd. programowe programy użytkownika, struktury danych (tworzone przez użytkownika lub przez sam system operacyjny, w ogólności są to pliki). Zarządzanie zasobami polega na takim ich rozdziale pomiędzy użytkowników, aby każdy miał wrażenie, że pracuje na własnym komputerze, który nazywa się maszyną wirtualną. (Dla każdego użytkownika system operacyjny tworzy, utrzymuje i likwiduje maszynę wirtualną). Zasoby maszyny wirtualnej to zasoby wirtualne. 1

Użytkownikiem jest każdy (to nie tylko fizyczna osoba siedząca przed komputerem), kto wymaga od systemu operacyjnego wykonania jakichkolwiek czynności. Użytkownicy tworzą zadania, czyli zbiór działań potrzebnych do wykonania danej czynności. System operacyjny przyjąwszy zadanie może utworzyć kilka PROCESÓW. Proces to jednostka składowa zadania, w szczególności proces = zadanie. Proces jest najmniejszą jednostką, która może ubiegać się o zasoby systemu komputerowego i która może być wykonywana współbieżnie z innymi procesami. W większości systemów operacyjnych wszystkie informacje o każdym procesie są przechowywane w tablicy procesów. Ogólnie: proces składa się z przestrzeni adresowej i z zapisów w tablicy procesów (przede wszystkim są to zawartości rejestrów procesora). Stany procesu: Procesor przydzielony procesowi wykonywany Proces czeka na zakończenie operacji wej/wyj gotowy czeka zakończono wej/wyj Podstawowymi funkcjami w ramach zarządzania procesami są funkcje tworzenia i zawieszania procesów. Każdy proces rozpoczynający pracę w systemie ma przydzielony swój numer (PID) i identyfikator użytkownika, który go zainicjował. Niektóre procesy mogą generować procesy potomne. Procesy potomne dziedziczą identyfikatory swoich procesów macierzystych. Typy procesów: procesy interakcyjne procesy zainicjowane w trakcie sesji rozpoczętej na terminalu i w ramach tej sesji kontrolowane. Mogą być wykonywać jako: - procesy pierwszoplanowe przez cały czas wykonywania pozostają związane z terminalem; terminal komunikuje się z nimi bezpośrednio; tylko takie procesy mogą odbierać dane z terminala, - procesy tła (w systemie UNIX uruchamiane ze znakiem &). procesy kolejkowane (wsadowe, ang. batch processes) procesy nie związane z żadnym terminalem, kierowane do odpowiednich kolejek i uruchamiane sekwencyjnie. 2

Poszczególne platformy UNIXowe posiadają swoje wersje programów narzędziowych do obsługi kolejek procesów, z uwzględnieniem odciążania przeładowanych procesorów i rozdziału zadań do innych, mniej obciążonych procesorów danego komputera lub innego komputera w sieci. demony procesy o charakterze usługowym, uruchamiane na ogół podczas startu systemu. Wykonują się w tle i oczekują na zlecenia wydawane przez inne procesy systemu, np. demony sieciowe pozostają w stanie oczekiwania, dopóki inne procesy nie zażądają dostępu do sieci. W systemach UNIX do sprawdzania stanu procesów służy polecenie ps FUNKCJE SYSTEMU OPERACYJNEGO polegają, ogólnie mówiąc, na rozwiązywaniu konfliktów podczas współubiegania się różnych zadań użytkowników o zasoby systemu komputerowego i na optymalizacji wykorzystywania zasobów przez zadania. Zadaniem systemu operacyjnego jest tworzenie środowiska operacyjnego, w którym użytkownik może wygodnie i bezpiecznie uruchamiać i eksploatować programy. W szczególności system operacyjny umożliwia: przechowywanie informacji przez dłuższy czas w pamięciach zewnętrznych, jednoczesne wykonywanie różnych czynności przez system komputerowy, korzystanie z różnych pakietów programistycznych i języków programowania, wspólne wykorzystywanie niektórych urządzeń komputerowych przez grupy osób. Cechy charakterystyczne sytemu UNIX: - wielodostępność liczba użytkowników zależy głównie od mocy obliczeniowej sprzętu, - wielozadaniowość (wieloprocesowość) jednostkami aktywnymi w systemie są pracujące współbieżnie procesy, - hierarchiczny, drzewiasty system plików, z jednolitym potraktowaniem wszystkich typów plików, - wykonywanie operacji wej / wyj niezależnie od typu urządzenia zewnętrznego, - duża liczba programów narzędziowych, tj. kompilatorów języków programowania, - duża liczba programów usługowych, - przenaszalność oprogramowania dzięki zapisowi w C. 3

STRUKTURY SYSTEMÓW OPERACYJNYCH 1. Struktura monolityczna system operacyjny traktowany jako zbiór procedur, przy czym każda z nich może wywoływać drugą; poszczególne procedury muszą mieć bardzo dobre złącza (ang. interface). W celu stworzenia konkretnej wersji systemu operacyjnego należy skompilować odpowiedni zbiór procedur. 2. Struktura warstwowa system zbudowany jest z kilku poziomów, co zapewnia jego modularność. Każdy poziom składa się ze zbioru procedur i danych, które mogą być wywoływane z poziomu wyższego. Poziom najniższy sprzęt, najwyższy interface z użytkownikiem. W każdym systemie operacyjnym poziomy mogą być różne. Programy aplikacyjne Programy rezydentne MS-DOS - Sterowniki urządzeń ROM BIOS - sterowniki urządzeń MS DOS jako warstwowy system operacyjny Użytkownicy Powłoki i polecenia systemowe, kompilatory i interpretery, biblioteki systemowe - Sygnały - Obsługa terminali i innych znakowych urządzeń wej/wyj Urządzenia znakowe i ich sterowniki Funkcje systemowe złącza z jądrem systemu - System plików - Obsługa blokowych urządzeń wej/wyj - Moduły obsługi dysków i taśm Złącze jądra ze sprzętem Dyski i taśmy oraz ich sterowniki Przykładowa struktura systemu operacyjnego UNIX 4 - Zarządzanie procesami - Obsługa wymiany stron - Moduły obsługi pamięci wirtualnej Sterowniki pamięci i pamięci fizyczne

W systemach operacyjnych o strukturze warstwowej wyodrębniona jest część realizująca najbardziej podstawowe funkcje systemu operacyjnego, tzw. jądro systemu lub warstwa wewnętrzna. Pozostała część systemu to warstwa zewnętrzna. Podział taki nie jest jednoznacznie określony dla wszystkich systemów. W jądrze systemu implementuje się wszystkie funkcje, które muszą być traktowane w sposób uprzywilejowany. Jądro odpowiada m.in. za: obsługę przerwań, przydział procesora, operacje wej/wyj. Ponadto w jądrze systemu są implementowane mechanizmy, które tworzą wspomnianą już maszynę wirtualną. Warstwa zewnętrzna obejmuje procesy użytkowników (można przyjąć, że są to po prostu programy) i moduły systemu operacyjnego nie należące do jądra systemu. Jednym z procesów warstwy zewnętrznej jest POWŁOKA (ang. shell). Powłoka jest jedyną widoczną częścią maszyny wirtualnej. Funkcje systemowe (ang. system calls) stanowią maszynę wirtualną, ich wywołania są poleceniami dla jądra systemu, np. zainicjowanie nowego procesu, otwarcie pliku. Funkcje systemowe dzielą się na: funkcje systemowe dotyczące procesów i funkcje systemowe dotyczące sytemu plików. Zwykłe polecenia użytkowników są poleceniami dla programu powłoki. 3. Struktura klient serwer model związany z rozproszonymi systemami operacyjnymi. Rozróżniamy sieciowe i rozproszone systemy operacyjne w systemach sieciowych klient/użytkownik musi znać adres pliku, z którym chce pracować, który chce wywoływać, w systemach rozproszonych użytkownik pracuje jak na własnym pececie. Podstawową zasadą działania w tej strukturze jest przesyłanie maksymalnej ilości kodu na wyższe poziomy, pozostawiając minimalne jądro. 5