SO - LAB1 Wojciech Pieprzyca

Slides:



Advertisements
Podobne prezentacje
Wirtualizacja zasobów w systemach operacyjnych
Advertisements

SYSTEMY OPERACYJNE ·       SO : zestaw programów zarządzających zasobami komputera i wspomagających jego użytkowanie zarządzanie zasobami.
SO – LAB2 Wojciech Pieprzyca
BEZPIECZEŃSTWO DANYCH W KOMPUTERZE
Sieci komputerowe.
1 Linux jako system wielozadaniowy i wielodostępny.
SIECI KOMPUTEROWE (SieKom) PIOTR MAJCHER WYŻSZA SZKOŁA ZARZĄDZANIA I MARKETINGU W SOCHACZEWIE Zarządzanie.
System plików UNIX i sposób ich reprezentacji przez i-węzły
Systemy plików UNIX Krzysztof Ratkowski Mateusz Wosiński.
Wprowadzenie do Unix’a
Wykład nr 1: Wprowadzenie. Pojęcia podstawowe
Wykład nr 2: Struktura systemu komputerowego a system operacyjny
Systemy operacyjne.
Systemy operacyjne Bibliografia:
Podstawowe polecenia systemu DOS
Podstawowe komendy UNIXA
Temat nr 10: System przerwań
SO – LAB3 Wojciech Pieprzyca
SAMBA JAKO SERWER PLIKÓW
System operacyjny LINUX
ZARZĄDZANIE PROCESAMI
1 Podstawy informatyki H. P. Janecki- 2006_ Systemy Operacyjne W6.
Wieloprocesowy system operacyjny dla komputerów ATARI XL/XE
Modele baz danych - spojrzenie na poziom fizyczny
SIEĆ P2P 1. Definicja sieci równouprawnionej. To taka sieć, która składa się z komputerów o takim samym priorytecie ważności, a każdy z nich może pełnić.
Konsole wirtualne, terminale.
Administracja linux-em
Instytut Tele- i Radiotechniczny WARSZAWA
Opracowanie: Maria Wąsik
Tworzenie nowych kont lokalnych i domenowych, oraz zarządzanie nimi
Interpretatory poleceń - powłoki systemu
Linux - polecenia.
Wielodostępność systemu operacyjnego Linux
Wielozadaniowowść systemu operacyjnego Linux
Systemy operacyjne.
Budowa systemu komputerowego
SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE
Podstawowe usługi systemów operacyjnych
System plików systemu linux
Maszyna wirtualna ang. virtual machine, VM.
Pamięć komputerowa S t r u k t u r a p a m i ę c i.
Polecenia systemowe dos, winodws, linux
POŚREDNIK Jak reprezentowana jest informacja w komputerze? liczby – komputer został wymyślony jako zaawansowane urządzenie służące do wykonywania.
Przeglądanie zasobów komputera - uruchamianie programów
Sieciowe systemy operacyjne - UNIX
Spis treści Architektura systemu windows Pamięć wirtualna Plik wymiany
Instalacja systemu Linux
Linux w sieci Konfigurowanie interfejsu sieciowego.
Etapy uruchamiania systemu Pliki konfiguracyjne
Systemy plików Bibliografia: Windows XP. Komendy i polecenia. Praktyczne przykłady, P. Czarny Windows XP. Naprawa i optymalizacja, B. Danowski Windows.
Systemy rozproszone  Rozdzielenie obliczeń między wiele fizycznych procesorów.  Systemy luźno powiązane – każdy procesor ma lokalną pamięć; procesory.
Linux, to kompletny system operacyjny (jądro i programy użytkownika), który powstał na zasadzie GNU – czyli Powszechnej Licencji Publicznej (General Public.
System plików.
System Zarządzania Bazą Danych
Linux. Legalność i Dostępność Oparty jest na licencji GNU – tzn. Dla zwykłych użytkowników jest bezpłatny Oparty jest na licencji GNU – tzn. Dla zwykłych.
Procesor, pamięć, przerwania, WE/WY, …
Procesy, wątki Program a proces Proces: Przestrzeń adresowa, kod, dane, stos (część pamięci do przechowania zmiennych lokalnych i niektórych adresów) Otwarte.
Struktura systemu operacyjnego
Polecenie chmod change mode - zmiana atrybutu. chmod [opcje] uprawnienia plik Opis klas użytkowników u - użytkownik (user) g - grupa (group) o - inni.
Powtórzenie Zadania systemu operacyjnego… Rodzaje i jednostki pamięci…
Systemy operacyjne - Budowa systemu komputerowego i jego zadania
Tryby adresowania i formaty rozkazów mikroprocesora
T. 18. E Proces DGA - Działania (operatorka).
Hipertekst HTML WWW.
Podstawowe komendy „unixowych”
Linux ssh.
System operacyjny LINUX
System operacyjny Linux
Microsoft Disk Operating System
Modele baz danych - spojrzenie na poziom fizyczny
Zapis prezentacji:

SO - LAB1 Wojciech Pieprzyca Systemy operacyjne SO - LAB1 Wojciech Pieprzyca

1. Systemy wielodostępne systemy wielodostępowe charakteryzują się możliwością równoczesnej pracy wielu użytkowników w danym systemie mówimy o tzw. obsłudze wielu sesji z użytkownikami, dostęp do systemu poprzez terminale tekstowe i graficzne, możliwość dostępu za pomocą protokołów sieciowych takich jak Telnet, SSH przykłady: UNIX, MVS/OS370, VMS/VAX, Windows Terminal Server (WTS), Citirix.

2. Praca wielodostępna (I) praca wielodostępna w uproszczeniu polega na umożliwieniu dostępu do zasobów (np. mocy obliczeniowej, pamięci, określonych plików i programów) wielu użytkownikom jednocześnie, należy jednak zapewnić sprawiedliwy podział dostępu do zasobów, a przy tym odpowiednio zabezpieczyć system przed niepowołanym dostępem zarówno do całego systemu jak i poszczególnych zasobów pierwsza zasada polega na tym, że każdy z użytkowników ma przydzielony swój identyfikator oraz hasło dostępowe

Praca wielodostępna (II) identyfikatory użytkowników związane są z prawami dostępu (uprawnieniami), dzięki temu administrator systemu może kontrolować dostęp do plików i innych zasobów, dodatkowo użytkownik może być członkiem jednej lub wielu grup użytkowników, dzięki czemu uzyskuje dodatkowe uprawnienia, jest to szczególnie funkcjonalne, gdy w systemie istnieje wielu użytkowników o podobnych uprawnieniach.

Praca wielodostępna (III) tworzeniem nowych użytkowników, grup oraz nadawaniem uprawnień zajmuje się zwykle uprzywilejowany w systemie użytkownik – administrator, w systemach klasy Unix użytkownik ten nosi nazwę root.

3. Wielozadaniowość (I) Wielozadaniowość jest cechą systemu operacyjnego umożliwiającą wykonywanie wielu procesów (programów) na raz. Prawdziwa wielozadaniowość możliwa jest wtedy gdy system ma do dyspozycji więcej niż jeden procesor, w innym przypadku możemy jedynie mówić o quasi-wielozadaniowości. Na jednym procesorze wielozadaniowość sprowadza się do wykonywania po fragmencie każdego z programów w bardzo niewielkich odstępach czasu.

Wielozadaniowość (II) Jak widzimy na rysunku wielozadaniowość polega na wykonywaniu zadań z podziałem czasu. Dodatkowo pomiędzy poszczególnymi fazami wykonania zadań występuje tzw. czas przełączania, co wydłuża czas wykonania obu zadań łącznie. Paradoksalnie więc wykonanie zadań w quasi-wielozadaniowości trwa dłużej niż kolejne, nie równoczesne wykonywanie tych zadań.

4. Wielozadaniowość z wywłaszczaniem W tym rodzaju wielozadaniowości to system operacyjny ściśle nadzoruje czas na jaki dana aplikacja uzyskuje dostęp do zasobów i pozwolenie na wykonywanie się. Przydzielaniem czasu zajmuje się tzw. scheduler. Mechanizm ten w każdej chwili może odebrać dostęp do zasobów jednemu procesowi i przekazać go innemu. Dodatkowo każdy z procesów ma przyporządko-wany priorytet, dzięki czemu scheduler może kierować do wykonania procesy o wyższym priorytecie, a zatrzymywać procesy o niższym priorytecie.

5. Wielozadaniowość bez wywłaszczania W tym przypadku system operacyjny ma niewiele do powiedzenia, cała rola schedulera sprowadza się do przełączania pomiędzy procesami, ale dopiero wtedy, gdy aktualnie wykonujący się proces zwolni dostęp do zasobów. Innymi słowy scheduler nie ma możliwości przerywania procesów. W takim przypadku, aby uzyskać wielozadaniowość to sam programista musi pisać swoje oprogramowanie tak, aby poszczególne procesy zwalniały dostęp do zasobów co jakiś czas.

6. Wieloprogramowość Wieloprogramowość to takie planowanie zadań do wykonania, aby optymalnie wykorzystać moce obliczeniowe systemu. Niektóre z zadań mogą oczekiwać na zasoby lub wprowadzenie danych i nie mogą być aktualnie dalej wykonywane, wówczas system wieloprogramowy przechodzi po prostu do wykonania kolejnego zadania z puli zadań. Kiedy oczekujące zadanie otrzyma zasoby, wówczas system spowrotem przywróci mu stan aktywności. System musi kontrolować wieloprogramowy dostęp tak aby nie zaistniały konflikty w dostępie do zasobów np. pamięci operacyjnej, dyskowej, itp.

7. Zarządzanie pamięcią (I) Cele zarządzania pamięcią to m.in.: - zbieranie informacji o zajętych obszarach pamięci wraz z informacją na temat, który z procesów jest właścicielem tego obszaru - wybieranie tych procesów i tych struktur danych, które mają aktualnie znajdować się w pamięci, - przydzielanie i zwalnianie obszarów pamięci stosownie do aktualnych potrzeb.

Zarządzanie pamięcią (II) W zależności od dostępnej całkowitej wielkości pamięci operacyjnej częściej lub rzadziej dochodzi do wyczerpania tego zasobu, wówczas system musi sobie poradzić przenosząc część aktualnie nieużywanych danych i programów do pamięci pomocniczej (zwykle dyskowej w postaci pliku wymiany). Nazwa pliku wymiany pochodzi od tego, że dane i procesy są przesuwane (wymieniane) pomiędzy pamięcią operacyjną a dyskiem i spowrotem.

8. Model warstwowy (I) Nowoczesne systemy operacyjne posiadają budowę warstwową. Najniższą warstwę stanowi sprzęt, najwyższą jest interfejs użytkownika. Główną cechą modelu jest modularność tzn. że każda warstwa korzysta z usług warstw niższych.

Model warstwowy (II) Najniższa warstwa związana jest ze sprzętem, zawiera procedury bardzo niskiego poziomu, często wykorzystujące oprogramowanie na stałe zapisane w pamięciach stałych sprzętu. Centralną częścią modelu jest jądro zawierające właściwe mechanizmy systemowe. Mechanizmy systemowe można zwykle przydzielić do jednej z dwóch grup: 1) zarządzanie procesami i pamięcią, 2) zarządzanie systemem plików i urządzeniami.

Model warstwowy (III) Powłoka realizuje dwa główne zadania: 1) udostępnia interfejs użytkownika, 2) posiada interpreter języka powłoki umożliwiając użytkownikowi programowanie w języku wysokiego poziomu, 3) realizuje systemowe polecenia wewnętrzne (tzn. domyślnie zaimplementowane wraz z jądrem systemu).

9. System plików (I) Zadania systemu plików: - tworzenie i usuwanie plików, - zapis i odczyt plików, - zarządzanie obszarem pamięci pomocniczej (plik wymiany), - odwoływanie się do plików poprzez nazwy symboliczne, - ochrona plików przed skutkami awarii, - współużywalność plików.

System plików (II) W systemach klasy Unix znajdują się tylko pliki. Oznacza to, że również katalogi traktowane są jako pliki specjalne. Podobnie fizyczne urządzenia również identyfikowane są i można się do nich odwoływać poprzez pliki specjalne. Dysk podzielony jest na bloki: Boot block (blok systemowy) Super block (blok identyfikacyjny) tablica i-wezlow bloki danych Boot block – położony jest na początku systemu plików, zawiera dane o dysku oraz program ładujący system operacyjny

System plików (III) Super block – blok identyfikacyjny, zawiera informacje o rozmiarze systemu plików (liczbie bloków), podziale na partycje, itp. Bloki danych – bloki danych służą do bezpośredniego przechowywania danych i nie są związane z zarządzaniem systemem plików. Jeden blok może należeć tylko do jednego pliku lub być wolny. Lista i-węzłów – każdemu plikowi na dysku odpowiada i-węzeł (węzeł indeksu)

System plików (IV) Każdy z i-węzłów przechowuje następujące informacje: tryb pliku (typ pliku, prawa dostępu), rozmiar pliku w bajtach, identyfikatory właściciela UID, identyfikator grupy GID, daty i czasy: - utworzenia pliku, - ostatniej modyfikacji zawartości, - ostatniej zmiany atrybutów, adresy bloków danych: 12 adresów bezpośrednich, wskazujących bloki danych, 1 adres pośredni, wskazujący blok dyskowy zawierający właściwe adresy bloków danych, 1 adres podwójnie pośredni, zawierający dwa poziomy wskazań pośrednich bloków z adresami, 1 adres potrójnie pośredni, zawierający trzy poziomy wskazań pośrednich bloków z adresami.

System plików (V) Logiczny sposób uporządkowania plików zakłada zastosowanie struktury hierarchicznej. Szczytem struktury jest tzw. korzeń drzewa plików (root). Najważniejsze podkatalogi katalogu głównego w systemach Unix: /bin - pliki binarne używane przez programy zawarte w /usr. /sbin - narzędzia służące do administrowania systemem, /usr - większość plików i programów systemu operacyjnego. Do typowych jego podkatalogów zaliczają się /bin, /sbin oraz /lib. /etc - pliki konfiguracyjne. /var - pliki tymczasowe, kolejki wydruków oraz skrzynki pocztowe, /dev - pliki urządzeń, /tmp - pliki tymczasowe, /home - katalogi domowe użytkowników, /lib - współdzielone biblioteki, /boot  - pliki rozruchowe, /man - strony pomocy man.

10. Interpretatory poleceń Interpretatorem poleceń inaczej nazywana jest powłoka (shell). Każde polecenie wpisane z klawiatury zostaje zamienione przez powłokę na język zrozumiały dla jądra systemu, które może odpowiednio zareagować na to polecenie. Istnieje wiele różnych powłok. Najpopularniejsze z nich to: - Bourne Again Shell (bash), która jest bazowana na powłoce Bourne`a i stanowi standard w Linuxie, - powłoka C (csh), która jest bazowana na składni języka C i zawiera wiele wygodnych funkcji, - Tcsh - rozszerzona wersja csh, która w wielu dystrybucjach Linuxa występuje zamiast csh.

11. Praca w tle Praca w tle umożliwia wykonywanie kilku zadań jednocześnie, np. gdy jedno zadanie wykonuje czasochłonne obliczenia, a chcemy jednocześnie korzystać z konsoli terminala. W systemach klasy Unix, aby uruchomić zadanie w tle wystarczy w linii komend wywołać program z dodatkowym znacznikiem &, co spowoduje, że program zostanie uruchomiony w tle.

12. Niektóre polecenia Linuxa ls – wyświetlenie listy plików i katalogów z bieżącej ścieżki, cd – zmiana katalogu, mkdir – tworzenie katalogu, rmdir – usuwanie katalogu, rm – usuwanie pliku, cp – kopiowanie plików, chmod – ustalenie praw dostępu, cat – wyświetlanie plików, finger – lista aktualnie zalogowanych użytkowników, df, du – informacje na temat objętości dysków, plików, katalogów, dostępnego miejsca, itp. ps – lista uruchomionych procesów.