To tylko jedna z 9 stron tej notatki. Zaloguj się aby zobaczyć ten dokument.
Zobacz
całą notatkę
Systemy operacyjne / wykład 1 1 Systemy operacyjne Plan wykładu 1. Wprowadzenie 1.1. Podstawowe definicje 1.2. Model i implementacja procesów 1.3. Tryby przetwarzania 1.4. Historia rozwoju SO 2. Programowanie w j ę zyku powłoki sh 2.1 Wprowadzenie 2.2 Zmienne powłoki 2.3 Metaznaki i rozpoznawanie wzorców 2.4 Zasady substytucji 2.5. Przeadresowywanie we - wy 2.6. Procedury powłoki 3. Koncepcje i struktury SO 3.1. Struktura monolityczna 3.2. Struktura warstwowa 3.3. Maszyny wirtualne Systemy operacyjne / wykład 1 2 3.4. Model klient-serwer 3.5. Windows NT 4. J ą dro hipotetycznego SO - system MINIX 4.1. Struktura systemu MINIX 4.2. Graf stanów procesu 4.2. Warstwy systemu MINIX 5. System plików 5.1. Wprowadzenie 5.2. Charakterystyka systemu plików 5.3. Sposoby implementacji systemu plików 6. Komunikacja mi ę dzy procesami 6.1. Warunki wyścigu 6.2. Sekcje krytyczne i wzajemne wykluczanie 6.3. Przegląd implementacji wzajemnego wykluczania 6.4. Semafory 6.5. Monitory 6.6. Komunikaty Systemy operacyjne / wykład 1 3 7. Algorytmy szeregowania 7.1. Klasyfikacja algorytmów szeregowania 7.2. Informacje wykorzystywane w algorytmach szeregowania 7.3. Kryteria szeregowania 7.4. Zdarzenia powodujące ponowne szeregowanie 7.5. Przegląd algorytmów szeregowania 8. Zarz ą dzanie pami ę ci ą 8.1. Wprowadzenie 8.2. Pamięć dzielona 8.3. Algorytmy alokacji 8.4. Pamięć wirtualna 8.5. Stronicowanie 8.6. Algorytmy wymiany 8.7. Efektywność funkcjonowania pamięci wirtualnej 8.8. Segmentacja 9. Zarz ą dzanie urz ą dzeniami zewn ę trznymi 9.1. Wprowadzenie Systemy operacyjne / wykład 1 4 9.2. Programy obsługi UZ 9.3. Przykładowe realizacje 10. Blokady 10.1 Model systemu 10.2 Warunki konieczne istnienia blokady 10.3 Graf przydziału zasobów 10.4 Metody postępowania z blokadami 11. Wprowadzenie do rozproszonych systemów operacyjnych 11.1. Definicja i właściwości rozproszonego systemu operacyjnego 11.2. Rozproszony system opracyjny jako maszyna wirtualna 11.3. Problemy implementacyjne 11.4. Rozproszony system operacyjny Amoeba Systemy operacyjne / wykład 1 5 Wprowadzenie Podstawowe definicje Def. System Operacyjny SO jest to zbiór programów i procedur spełniających dwie podstawowe funkcje: 1. zarządzanie zasobami systemu komputerowego , 2. tworzenie maszyny wirtualnej . Zasobem systemu jest kaŜdy jego element
(…)
… danych:
• pozycja w tablicy procesów (process table)
• u-obszar (u-area) zawierający prywatne dane.
Def.
Proces stanowi podstawowy obiekt dynamiczny w systemie i rozumieć go będziemy
jako wykonujący się program wraz z jego środowiskiem obliczeniowym tzn.
• przestrzenią adresową procesu,
• zawartością rejestrów,
• otwartymi plikami,
• zbiórem zmiennych widocznych w otoczeniu procesu, np. $HOME, $PATH itd.
W systemie Unix przestrzeń adresowa procesu składa się z:
• segmentu kodu programu (text segment)
• segmentu danych (data segment)
• segmentu stosu (stack segment)
• segmentu dzielonego (shared segment)
Systemy operacyjne / wykład 1
• róŜne liczniki rejestrujące czas wykonania
zasobów jądra.
12
procesu oraz wykorzystania
Struktura ta cały czas pozostaje w pamięci głównej, natomiast U-obszar jest
wymiatany…
…
zmiennych globalnych i struktur danych uŜytkownika, wartości uŜywanych przez
niego rejestrów komputera, wartości zapamiętane w odpowiadającej mu pozycji w
tablicy procesów i u-obszarze oraz zawartość związanych z nim stosów uŜytkownika
i jądra. Instrukcje SO i jego globalne struktury danych są dzielone przez wszystkie
procesy, lecz nie stanowią części konteksu Ŝadnego z nich.
14
Systemy operacyjne / wykład…
…. KaŜdy z
potomków moŜe z koleji tworzyć nowe procesy, w wyniku czego powstaje w
systemie struktura hierarchiczna procesów.
16
Systemy operacyjne / wykład 1
Wywołanie systemowe fork
Wywołanie fork tworzy nowy proces potomny, który stanowi obraz procesu
macierzystego. Obraz ten zawiera następujące elementy:
• wspólny ( bądź nie) kod programu (shared text)
• dane (data)
• stos uŜytkownika (user stack…
… operacyjne / wykład 1
17
18
• proces macierzysty kontynuuje działanie współbieŜne ze swoimi potomkami
• proces macierzysty oczekuje, dopóki wszystkie jego procesy potomne nie
zakończą pracy.
Wywołanie fork jest bezargumentowe i zwraca 3 wartości:
• w przypadku błędu zwraca -1
• w trybie normalnym:
0 - proces potomny
> 0 - proces macierzysty
Procesy wykonywane w SO mogą być niezaleŜne…
… Integrator and Computer ( elektroniczne urządzenie
numeryczne całkujące i liczące) - zbudowany na Uniwersytecie Pensylwania przez
J. Eckerta. i J. Mauchly.
•
•
•
•
•
•
zbudowany w latach 1943-1946,
wykorzystywany do 1955,
30 ton, 1400 m2, 18 tys. lamp próŜniowych, 140 kW,
5000 operacji dodawania na sekundę,
20 rejestrów na 10-cyfrowe liczby dziesiętne,
główna wada – programowanie przez ustawianie przełączników i wtykanie i
wyjmowanie kabli.
28
Systemy operacyjne / wykład 1
Struktura maszyny von Neumanna
Wśród twórców komputerów pierwszej generacji na szczególną uwagę zasługuje
John Von Neumann.
W 1944 John Von Neumann sformułował następujące załoŜenia:
1. Współczesny komputer powinien posiadać:
• pamięć złoŜoną z elementów przyjmujących stany 0 lub 1,
• arytmometr, który wykonuje działania arytmetyczne…
... zobacz całą notatkę
Komentarze użytkowników (0)