TESTOWE (Odpowiedzi poprawione 12.09.2009)

Transkrypt

TESTOWE (Odpowiedzi poprawione 12.09.2009)
TESTOWE
(Odpowiedzi poprawione 12.09.2009)
1. System operacyjny pełni w systemie komputerowym role:
a) zarządzania zasobami systemu komputerowego
b) zarządza relacyjnymi bazami
c) tworzenie abstrakcji
d) kompilacja i uruchamianie programów
e) tworzenie środowiska współdzielonego
2. Mikrojądro systemu operacyjnego pełni następującą rolę:
a) Uruchamia programy
b) Odbiera przerwania i skierowuje je do odpowiednich kierowców i innych warstw systemu
c) Synchronizuje procesy
d) Zlicza pewne zdarzenia systemowe potrzebne do rozliczenia użytkowników
3. System jednoprogramowy to taki, który z zasady
a) Pozwala przechowywać tylko jeden program w pamięci masowej
b) Pozwala przechowywać tylko jeden program w pamięci operacyjnej
c) Wymaga relokacji
d) Wymaga relokacji statycznej (raczej nie, bo programy od razu mogą być pisane z adresami jakie będą
rzeczywiście użyte w pamięci)
e) Nie pozwala usuwać programu z pamięci ( używa pamięci stałej )
f) Jest uruchamiany na komputerze jedno procesorowym
4. System wieloprogramowy:
a) pozwala przechowywać wiele programów w pamięci masowej (raczej dzięki temu, że jest wiele programów w
pamięci masowej to system może być wieloprogramowy, a nie odwrotnie)
b) pozwala przechowywać wiele programów w pamięci operacyjnej
c) wymaga relokacji dynamicznej
d) wymaga relokacji statycznej
e) pozwala uruchomić tylko jeden program po drugim
f) pozwala pracować więcej niż jednemu programowi jednocześnie
5. System współbieżny to taki, który z zasady:
a) Jest uruchamiany na komputerze wieloprocesorowym
b) Wymaga użycia przerwań zegarowych
c) Musi być wieloprogramowy
d) Pozwala biec procesom / wątkom jednocześnie
e) Pozwala biec procesom / wątkom jednocześnie lub pozornie jednocześnie
6. System wielodostępowy to taki, który z zasady:
a) Wymaga podziału czasu procesora ( 100% prawidłowe, a niby jak inaczej obsługiwać kilku
użytkowników)
b) Wymaga użycia przerwań zegarowych
c) Musi być wielowątkowy (nie musi być, aplikacje nie muszę być wielowątkowe, a mogą
pochodzić od wielu użytkowników)
d) Pozwala wielu procesom pracować rzeczywiście jednocześnie
e) Musi być współbieżny ( 100% od WBD )
7. W wieloprocesorowym systemie operacyjnym:
a) Do zabezpieczenia mikrojądra przed równoczesnym wykonaniem jego procedur wystarczy blokowanie przerwań
b) Do ochrony mikrojądra przed równoczesnym wykonaniem jego procedur nie wystarczy blokowanie przerwań
8. Użycie przerwań zegarowych jest wymagane:
a) w systemie wieloprogramowym (np. przetwarzanie wsadowe może pozwalać na przebywanie w pamięci wielu
programów a nie wymaga przerwań zegarowych)
b) w systemie współbieżnym
c) w systemie wielowątkowym
d) w systemie rzeczywistym (np. może być w takim systemie tylko jeden proces, więc nie potrzeba
przerwań zegarowych)
9. Użycie przerwań systemowych jest niezbędne:
a) w systemach wieloprogramowych
b) w systemach współbieżnych
c) w systemach wielodostępnych (100% i tylko ten, ale ktoś mógł by to jeszcze potwierdzić)
d) w systemach czasu rzeczywistego
10. W skład wielopoziomowego układu przerwań wchodzą:
a) Rejestr zgłoszeń przerwań
b) Indywidualna maska przerwań
c) Układ priorytetów
d) Rejestr wykonywalnych obsług przerwań
e) Zbiorcza maska przerwań
11. Warstwa zarządcy programów pełni w systemie operacyjnym role:
a) Przyjmuje wszystkie wywołania systemowe programów i skierowuje je do odpowiednich warstw
b) Zajmuje się uruchamianiem programów
c) Zajmuje się buforowaniem danych pisanych i czytanych z pamięci masowych
d) Zajmuje się gospodarką pamięci operacyjnej ( przydział pamięci programom )
12. Zasobami sprzętowymi systemu komputerowego są:
a) Czas procesora
b) Pamięć wirtualna
c) Pamięć operacyjna
d) Okna na ekranie
e) Urządzenia zewnętrzne
f) Inne komputery widoczne w sieci
13. Zasobami programowymi systemu komputerowego są:
a) bufory
b) semafory
c) pamięć operacyjna
d) pamięć wirtualna
e) procedury realizujące funkcje systemowe
f) pliki
Od TJ Kruka ze slajdów: „zasoby programowe to: pliki, bufory, semafory, tablice systemowe”
14. W skład środowiska w którym realizowany jest proces wchodzą:
a) przestrzeń adresowa
b) zawartość rejestrów
c) zawartość jednostki zarządzania pamięcią
d) otwarte pliki
e) zawartość rejestru zgłoszeń przerwań
f) zbiór zmiennych środowiska
15. Proces przechodzi ze stanu "użytkownik" do stanu "system" w wyniku:
a) przerwania programowego wywołującego funkcje systemową
b) zawieszania procesu
c) pułapki debuggera
d) przerwania sprzętowego
16. Relokacja statyczna:
a) pozwala zlikwidować fragmentacje zewnętrzną
b) wymaga wsparcia sprzętowego w postaci rejestru bazy
c) wymaga wsparcia sprzętowego w postaci rejestru limitu
d) wymaga zaadresowania odwołań względnych w czasie ładowania programu do pamięci
WBD slajdy: „Relokacja statyczna – dodawanie rejestru bazy w czasie ładowania do pamięci”
17. Relokacja dynamiczna:
a) Pozwala chwilowo zlikwidować fragmentację zewnętrzną
b) Wymaga wsparcia sprzętowego w postaci rejestru bazy
c) Wymaga wsparcia sprzętowego w postaci rejestru limitu
d) Wymaga zaadresowania odwołań względnych w czasie ładowania programu do pamięci
18. Wynik współpracy procesów współbieżnych:
a) Jest zawsze deterministyczny
b) Może być niedeterministyczny
c) Może zależeć od sposobu szeregowania
19. Wątki w systemie operacyjnym:
a) Współdzielą cały kontekst
b) Współdzielą kontekst z wyjątkiem stosu
c) Współdzielą kontekst z wyjątkiem rejestrów i stosu
20. Klonowanie procesu operacją fork() powoduje:
a) Powielanie segmentów kodu, danych i stosu
b) Powielenie segmentów kodu, zainicjowanie nowych segmentów danych i stosu
c) Powielenie segmentów danych i stosu
21. Wywołanie programu operacją exec() powoduje:
a) Załadowanie z dysku segmentu kodu, powielenie segmentu danych procesu wywołującego
b) Załadowanie z dysku segmentu kodu, powielenie segmentów danych i stosu procesu wywołującego
c) Załadowanie z dysku segmentów kodu i danych, zainicjowanie nowego segmentu stosu
22. Mechanizmy sprzętowe wspomagające stronicowanie ( ale nie niezbędne )
a) Bity użycia i modyfikacji stron, pamięć asocjacyjna, wielopoziomowe tablice indeksowe
b) Bity użycia i modyfikacji stron, pamięć asocjacyjna, tablice indeksowe
c) Bity użycia i modyfikacji stron, pamięć asocjacyjna, wielopoziomowe tablice indeksowe, procedury
ładujące strony do pamięci
23. Mechanizm translacji adresu:
a) Zestawia ze sobą numer ramki i numer strony
b) Dodaje numer ramki do numeru strony
c) Zestawia ze sobą numer ramki i przesunięcie na stronie
d) Zestawia ze sobą numer strony i przesunięcie na stronie (delikatna różnica – numer strony to coś wirtualnego)
24. Bity użycia i modyfikacji stron służą do:
a) Wykrycia lokalności odwołań
b) Zliczania odwołań w celu optymalizacji wymiany (WBD – „to dobra odp, kiedyś służyły do zliczania” )
c) Wspomagania translacji adresu
d) Stwierdzenia czy ramka jest pusta czy zawiera stronę
25. Wielopoziomowe tabele indeksowe stron:
a) Przyśpieszają translacje adresu
b) Spowalniają translacje adresu (więcej cykli procesora potrzebne do „przejścia” )
c) Optymalizują czas ładowania tabel indeksowych stron (ale nie musimy ładować ogromnej tabeli, a jedynie część )
d) Optymalizują czas ściągania do pamięci brakujących stron
26. Translacja adresu polega na:
a) Zamianie adresu wirtualnego na fizyczny
b) Zamianie adresu fizycznego na wirtualny
c) Wykrywaniu zjawiska lokalności odwołań
d) Generowania przerwania "błąd ramki", gdy strony nie ma w pamięci
27. Przy wielopoziomowych tabelach indeksowych stron:
a) Zawartość elementu tabeli 1 poziomu jest dodawana do zawartości elementu tabeli 2 poziomu
b) Zawartość elementu tabeli 1 poziomu jest indeksem tabeli 2 poziomu
c) Zawartość elementu tabeli 1 poziomu wskazuje na tabelę 2 poziomu
d) Zawartość elementu tabeli 1 poziomu jest zestawiania z zawartością elementu tabeli 2 poziomu
28. Przerwanie "błąd ramki" służy do:
a) Ściągnięcia do pamięci żądanej strony ( 100% akredytacja WBD )
b) Wykrycia próby zapisu poza przestrzenią adresową ramki
c) Wykrycia próby dostępu z ramki nieprzydzielonej programowi
d) Stwierdzeniu czy ramka jest pusta czy zawiera stronę (stwierdzenie tego powoduje powstanie przerwania „błąd
ramki”)
29. Połączenie stronicowania z segmentacją polega na:
a) Podziale stron na segmenty
b) Potraktowaniu segmentacji jako dodatkowego poziomu stronicowania
c) Utożsamieniu segmentów ze stronami
d) Generowaniu przerwania "błąd ramki", gdy ramka zawierająca stronę nie należy do bieżącego segmentu
30. Fragmentacja wewnętrzna polega na:
a) Nieciągłej alokacji plików na dysku
b) Niewykorzystaniu przez program całości przydzielonej mu pamięci
c) Podziale pamięci przydzielonej programowi na obszar danych i kodu
d) Niewykorzystaniu bloków pamięci pomiędzy przydzielonymi blokami
31. Mechanizm wymiatania polega na:
a) Wczytywaniu stron do pamięci operacyjnej i odsyłaniu ich na dysk
b) Wczytywaniu segmentów do pamięci operacyjnej i odsyłaniu ich na dysk
c) Przesuwaniu programów w pamięci w celu zlikwidowania fragmentacji
d) Scaleniu sąsiadujących wolnych bloków pamięci
32. Do kryteriów wymiatania zaliczamy:
a) Priorytety
b) Stan programu
c) Częstotliwość odwoływania się do segmentów
d) Analizę historii wykonania programu
33. W mechanizmie wymiatania program powinien być załadowany do pamięci gdy:
a) Zakończyła się transmisja danych na drukarkę
b) Użytkownik nacisnął klawisz
c) Warunek programowy kontynuacji programu został spełniony przez inny program
d) Urządzenie na które czekał program zwolniło się
e) Minęła godzina o której program miał zostać "obudzony"
34. Migotanie stron jest to:
a) Naprzemienne wczytywanie i wymiatanie stron
d) Wczytywanie strony, która to dopiero została wyrzucona
35. Proces może pojawić się w puli procesów podlegających szeregowaniu w wyniku:
a) Uruchomienia nowego procesu
b) Zakończenia operacji we/wy
c) Wykonania operacji P na semaforze
d) Wykonania operacji V na semaforze
36. Podział pamięci na bloki dowolnej wielkości:
a) Implikuje fragmentacje wewnętrzną
b) Implikuje fragmentacje zewnętrzną
37. Algorytm cebuli:
a) Powoduje fragmentacje wewnętrzną
b) Powoduje fragmentacje zewnętrzną ( WBD )
38. Algorytm bliźniaków:
a) Powoduje fragmentacje wewnętrzną
b) Powoduje fragmentacje zewnętrzną
c) Powoduje mniejszą fragmentacje od podziału na stałe bloki
39. Algorytm "LRU" polega na:
a) Wyrzuceniu z pamięci strony najrzadziej używanej
b) Wyrzuceniu z pamięci strony najdawniej używanej
c) Ściągnięciu do pamięci strony, która będzie najszybciej potrzebna
d) Ściągnięciu do pamięci strony, która będzie najczęściej potrzebna
40. Algorytm WORST-FIT ( wszystkie poprawne )
a) Wymaga malejącego posortowania listy wolnych bloków (100%)
b) Wymaga wsortowania odciętej części do listy wolnych bloków (100%)
c) Pozwala na szybkie stwierdzenie czy istnieje wolny blok o wymaganej wielkości (100%)
d) Zmniejsza fragmentację wewnętrzną (100% - został zaprojektowany do tego)
41. Algorytm FIRST-FIT ( nic nie zaznaczać )
a) wolne bloki muszą byś uporządkowane(100% nieprawda – nie muszą być)
chyba żadna odpowiedź jakie były możliwe nie pasowała
42. Algorytm BEST-FIT:
a) Wymaga malejącego posortowania listy wolnych bloków
b) Pozwala na szybkie stwierdzenie czy istnieje wolny blok o wymaganej wielkości
c) Pozwala unikać fragmentacji zewnętrznej
d) Wymaga wsortowania odciętej części do listy wolnych bloków
43. Fragmentacja występuje:
a) Wewnętrzna przy stronicowaniu
b) Zewnętrzna przy segmentacji (nie na 100% - podział na segmenty to trochę inny poziom abstrakcji)
c) Wewnętrzna przy podziale na skwantowane bloki
d) Zewnętrzna przy zwalnianiu bloków w kolejności innej niż odwrotna do przydziału
44. Które z poniższych zdań są prawdziwe?
a) Stronicowanie implikuje fragmentacje wewnętrzną
b) Stronicowanie implikuje fragmentacje zewnętrzną
c) Segmentacje implikuje fragmentacje wewnętrzną
d) Segmentacje implikuje fragmentacje zewnętrzną
45. Fragmentacja zewnętrzna jest wywoływana przez:
a) Zmianę wielkości przydzielonych bloków ( np. program zrzeka się trochę pamięci i tworzy się „dziura” )
b) Podział bloków pamięci o dowolnej wielkości
c) Podział bloków pamięci o skwantowanej wielkości
d) Zwalnianie bloków pamięci w kolejności przydziału
e) Zwalnianie bloków w kolejności innej niż odwrotna do przydziału
46. Fragmentacji zewnętrznej można uniknąć przez:
a) Przydział statycznych bloków pamięci o stałej wielkości
b) Zastosowanie algorytmu cebuli
c) Zwalnianie bloków w kolejności przydziału
d) Zwalnianie bloków w kolejności odwrotnej do przydziału
47. Wykorzystanie instrukcji Badaj-i-Modyfikuj ( TestAndSet ) w synchronizacji:
a) Wymaga od procesorów aktywnego oczekiwania
b) Wymaga zorganizowania nieaktywnego oczekiwania
c) Zatrzymuje procesor, jeżeli zostanie odczytane 0
48. Semafor ogólny:
a) jest zmienną współdzieloną
b) może przyjmować tylko wartości niezerowe
c) wykonuje się na nim tylko niepodzielne operacje
d) wymaga stosowania aktywnej fazy oczekiwania
49. Dwukrotne kolejne wykonanie w jednym procesie operacji V na opuszczonym semaforze:
a) Nic nie zmienia
b) Powoduje podniesienie semafora (jak by były trzy oczekujące to i tak zostanie zamknięty sem)
c) Zwiększa wartość semafora o 2
d) Jeżeli semafor pilnuje sekcji krytycznej to może doprowadzić do wpuszczenia do SK dwóch procesów
e) Podniesienie semafora, jeżeli żaden proces nie był na nim zawieszony
50. Dwukrotne kolejne wykonanie w jednym procesie operacji P na podniesionym semaforze binarnym:
a) Nic nie zmienia
b) Powoduje opuszczenie semafora
c) Zmniejsza wartość semafora o dwa
d) Jeżeli semafor pilnuje regionu krytycznego to prowadzi to do zakleszczenia
51. Z definicji zakleszczenie to stan w którym:
a) Dokładnie jeden proces oczekuje na spełnienie warunku, który nie może zostać spełniony
b) Co najmniej dwa procesy oczekuje na spełnienie warunku, które nie mogą zostać spełnione
c) Dowolna większa od zera liczba procesów oczekuje na spełnienie warunków, które nie mogą zostać spełnione
52. Zmiennych warunkowych jest z definicji w monitorze:
a) Jedna
b) Dwie
c) Tyle ile jest różnych warunków kontynuacji procesów
d) Tyle ile jest różnych warunków kontynuacji procesów plus jedna służąca wzajemnego wykluczaniu (wzajemne
wykluczanie jest już z góry zrealizowane i nie potrzeba dodatkowej zmiennej dla niego)
53. Zasada bezpośredniego wznowienia oznacza że:
a) Proces wznawiający traci region krytyczny
b) Proces wznawiany otrzymuje SK po wyjściu procesu wznawiającego z niej
c) Proces wznawiający ubiega się o region krytyczny tak jak procesy na wejściu monitora
54. Zmienne warunkowe w monitorze:
a) Pilnują dostępu do regionu krytycznego monitora
b) Służą do zawieszania procesów, które nie mogą działać z powodu niespełnienia warunków kich kontynuacji
c) Służą do sprawdzania spełnienia warunków kontynuacji procesów
55. Następujące relacje ważności procesów są właściwe w szeregowaniu procesów:
a) Procesy konwersacyjne są ważniejsze od procesów uwarunkowanych czasowo
b) Procesy konwersacyjne są ważniejsze od procesów realizujących transakcje bazy danych
c) Procesy konwersacyjne są ważniejsze od procesów realizujących kompilacje programów
d) Procesy realizujące kompilacje programów są ważniejsze od procesów obliczeniowych
e) Procesy obliczeniowe są ważniejsze od procesów składujących zawartość dysku
uwarunkowane czasowo → konwersacyjne(chyba) → …(i tu nie wiem) → obliczeniowe
56. Optymalizacja dostępu do dysku polega na:
a) Wstrzymaniu transmisji do czasu uzyskania kilku zgłoszeń, spośród których jest wybierane zgłoszenie, które może
zostać wykonane najszybciej
b) Wykonywaniu operacji odczyty natychmiast, a operacji zapisu dopiero, gdy już nie będzie do wykonania żadnych
operacji odczytu
c) Wyborze spośród kilku oczekujących transmisji takiej, przy której średni czas wykonania transmisji będzie
najmniejszy
57. Warstwa systemu plików pełni w systemie operacyjnym następujące rolę:
a) Realizuje operacje otwarcia i zamknięcia pliku
b) Realizuje usługi katalogowe w zakresie hierarchii plików dyskowych
c) Zajmuje się uruchamianiem programów przechowywanych w plikach
d) Kontroluje prawa dostępu do plików
58. W systemie opartym o FAT element tabeli alokacji może mieć następujące wartości:
a) wolny
b) zajęty i ostatni w łańcuchu
c) zajęty i nie ostatni w łańcuchu
d) zablokowany do wyłącznego dostępu
e) uszkodzony
WB Daszczuk slajdy: „pozycja FAT: wolna, zajęta i nie ostatnia, zajęta i ostatnia, zajęta i wskaźnik na kolejną,
zarezerwowana, uszkodzona” Wykład 7 – Pamięci Masowe slajd „Alokacja z listą połączeń II (w FAT)”
59. W systemie UNIX na dysku znajdują się obszary:
a) super block
b) tabela I-nodów
c) obszar katalogów
d) dane plików
60. W systemie UNIX wielkość pliku ograniczona jest przez:
a) wielkość I-nodów
b) wielkość jednostki alokacji
c) liczbę bitów adresu dyskowego
d) liczbę bitów pola opisującego wielkość pliku
e) wielkość obszaru przeznaczonego na pliki
61. W systemie UNIX następujące elementy są umieszczone w danych systemowych procesu:
a) Tabela otwartych plików procesu
b) Zmienne środowiska
c) Wskaźniki bieżącego elementu w otwartych plikach
d) Bieżący katalog
62. Po wykonaniu moun(/dev/hd5 , /usr/x/bin/hd5 ) do pliku /usr/z/a
a) /usr/x/bin/dev/hd5/usr/z/a
b) /usr/x/bin/hd5/z/a
c) /dev/hd5/usr/z/a
63. Funkcje kierowców urządzeń:
a) Realizują elementarne operacje wyjścia / wejścia
b) Realizują przydział urządzeń procesom
c) Synchronizują procesy z urządzeniami
d) Unifikują dostęp do urządzeń różnych typów
e) Śledzą stan urządzeń
f) Zliczają transmisje w celu rozliczenia użytkowników
64. Maksymalna liczna plików w Unixie zależy od:
a) rozmiaru tablicy I-nodów
b) rozmiaru obszaru danych
Te są potwierdzone mogły być jeszcze jakieś inne prawidłowe
65. Maksymalna liczba plików w systemie plików FAT zależy od:
a) rozmiaru tablicy FAT
b) rozmiaru obszaru danych
Te są potwierdzone mogły być jeszcze jakieś inne prawidłowe
66. Atrybuty są określone dla:
a) Indywidualnie dla pliku
b) Zbiorcze dla katalogów
c) Zbiorcze dla grupy użytkowników
d) Zbiorcze dla plików
OTWARTE:
1. Podać definicje:
System operacyjny: zbiór programów i procedur spełniający dwie podstawowe funkcje:
- zarządza zasobami systemu komputerowego
- tworzy maszynę wirtualną
Procesem nazywamy wykonuj¡cy si¦ program wraz z jego środowiskiem
obliczeniowym. Proces stanowi podstawowy obiekt dynamiczny w systemie
operacyjnym.
Sekcja Krytyczna jest to fragment programu w którym występują instrukcje do zasobów dzielonych. Instrukcje
tworzące sekcje krytyczne muszą być poprzedzone i zakończone operacjami realizującymi wzajemne wykluczanie.
Warunki implementacji:
- w sekcji krytycznej może przebywać tylko jeden proces
- proces poza sekcją krytyczną nie może blokować do niej dostępu innym procesom
- każdy proces powinien doczekać się dostępu do SK w rozsądnym czasie
Semafor jest to współdzielona zmienna s o wartościach całkowitych nieujemnych, na której są dostępne dwie
niepodzielne operacje:
P - zmniejszenie o 1 jeżeli możliwe, w przeciwnym wypadku operacja lub proces opóźniany
V - zwiększenie o 1 lub wznowienie zawieszonego procesu
2. Funkcje systemu w zakresie zarządzania zasobami
- śledzenie zasobów systemu
- narzucanie strategii, która określa "konsumenta", rodzaj zasobu, moment przydziału i ilość zasobów
- przydział zasobów
- odzyskiwanie zasobów
3. Sytuacja w której jest tworzony nowy proces
- inicjowania systemu
- zlecenie użytkownika
- wywołania z programu
- uruchomienia zadania wsadowego
- przyjęcia przerwania
4. Cechy dobrego szeregowania
- sprawiedliwość - każdy kiedyś doczeka się (nie: każdemu po równo),
- zgodność z polityką - praca wedle założeń makroskopowych, uzyskanie określonego sposobu zachowania się całego
systemu,
- efektywność - polepszanie wykorzystania poszczególnych elementów systemu.
- (systemy interaktywne) minimalizacja czasu odpowiedzi
- (systemy interaktywne) proporcjonalność - każdy użytkownik jest traktowany nie gorzej od innych.
- (systemy czasu rzeczywistego) spełnianie wymagań - spełnianie ograniczeń czasowych (twardych lub miękkich),
- (systemy czasu rzeczywistego) przewidywalność - zapewnione określone zachowanie makroskopowe, np. unikanie
spadku jakości w przekazie multimediów: muzyka, film itp.
- (systemy wsadowe) przepustowość - maksymalizacja liczby prac w czasie,
- (systemy wsadowe) czas w systemie - minimalizacja czasu przebywania pracy w systemie
- (systemy wsadowe) optymalizacja wykorzystania procesora - minimalizacja przerw w pracy procesora
5. Jakie elementy są niezbędne, a jakie wspomagają stronicowanie:
Niezbędne:
- obsługa przez system przerwania "chybienie strony" ( page fault ), sygnalizującego brak w pamięci strony do której
usiłowano się odwołać
- mechanizm translacji adresów
- podział pamięci na rami, a programu na strony
Wspomagające:
- bity odwołań i protekcji
- pamięć asocjacyjna
- wielopoziomowe tabele indeksowe stron
- przerwanie przy zapisie
6. Wyliczyć stany ( podział prosty ) w jakich mogą znajdować się procesy:
- aktywny - program aktualnie wykonywany
- wstrzymany - nie może wykonywać pracy do momentu wystąpienia jakiegoś zdarzenia
- gotowy - gotowy do wykonania, ale wstrzymany w oczekiwaniu na czas procesora
7. Podać klasyfikację metod szeregowania procesów. Scharakteryzować jednym zdaniem każdą metodę.
Ze względu na wywłaszczanie:
- pobłażające (ang. nonpreemptive scheduling) – decyzja szeregująca podejmowana przy najbliższej okazji
(wynikającej z innych cech metody szeregowania, np. wyczerpania się przyznanego czasu)
- z wywłaszczaniem (ang. preemptive scheduling) – decyzja szeregująca podejmowana natychmiast po zmianie
warunków szeregowania (np. pojawienie się nowego procesu, zmiana priorytetu).
Ze względu na „ważność” procesów:
- bez-priorytetowe – najpierw ważność procesu ustalona przy pomocy liczby:
- składowa statyczna - przyznana na stałe lub na długi okres czasu
- składowa dynamiczna - przyznana chwilowo na podstawie zachowania się procesu i warunków środowiska
- priorytetowe - procesy traktowane jednakowo, każdy proces może być pierwszy (ale który będzie - może wynikać z
zasad sprawiedliwości).
Ze względu na przydział czasu:
- ograniczające czas – zmiana wykonywania procesu co przerwanie zegarowe (może być również co któreś przerwanie)
- nie ograniczające czasu – brak ograniczeń czasowych przy wykonywaniu procesów
8. Narysować graf stanów procesu korzystającego z semafora chroniącego sekcję krytyczną.
9. Narysować graf stanów procesu korzystającego z monitora chroniącego sekcję krytyczną
10. Wymienić i scharakteryzować metody podziału pamięci operacyjnej.
- brak podziału, cała przestrzeń adresowa wolna w danej chwili jest przydzielana jednemu procesowi użytkowemu
(DOS). Wieloprogramowanie można realizować np. przez wymiatanie (ang. swapping);
- statyczny podział pamięci na bloki, wolna przestrzeń adresowa jest na stałe podzielona na części przydzielane
poszczególnym procesom użytkowym, bloki mogą być jednakowej wielkości lub różnej; powinniśmy dobrze znać
wielkość uruchamianych programów; wykorzystana również w stronicowaniu;
- podział dynamiczny, przydzielanie według potrzeb.
cele:
- lepsze wykorzystanie elementów sprzętowych systemu, głównie procesora i pamięci,
- utrzymanie w pamięci programów wielokrotnie ładowanych,
- umożliwienie szybkiego przełączania kontekstu
11. Wymienić funkcje spełniane przez mikrojądro systemu operacyjnego.
- zarządzanie wątkami,
- komunikacja międzyprocesowa
- obsługa przerwań i wyjątków.
12. Wymienić i scharakteryzować metody szeregowania procoesów
- FCFS, kolejka FIFO, (ang. First-Come First-Served), „sprawiedliwość” – ten który przyjdzie jako pierwszy jest
obsługiwany jako pierwszy i tak dalej
- SJF, najszybciej najkrótsza praca (ang. Shortest Job First), minimalizacja czasu przetwarzania pracy – najpierw
wykonywane procesy o najkrótszym czasie wykonania
- SRTN, (ang. Shortest Remaining Time Next ) ), minimalizacja czasu przetwarzania pracy – jeżeli w systemie pojawi
się proces którego wykonanie zajmuje mniej czasu niż obecnie wykonywanego procesu proces wykonywany jest wtedy
wywłaszczony (chyba jakos tak?)
13. Wymienić i scharakteryzować metody przydziału wolnych bloków pamięci operacyjnej
- pierwsza zgodność (ang. First Fit), wybór pierwszego pasującego bloku, lista nieuporządkowana, konieczność
przejrzenia średnio 1/2 listy ale szybkie zwalnianie.
- następna zgodność (ang. Next Fit), j.w., ale zaczynamy od miejsca gdzie ostatnio zakończono przeszukiwanie:
nie tworzy się długa lista małych bloków na początku.
- najlepsza zgodność (ang. Best Fit), wybór najmniejszego wystarczającego bloku: lista uporządkowana rosnąco,
potencjalnie krótsze szukanie, konieczność sortowania pozostałej części, sortowanie przy zwalnianiu.
- najgorsza zgodność (ang. Worst Fit), wybór największego bloku: unikanie małych resztówek (zmniejszenie
fragmentacji zewnętrznej), lista uporządkowana malejąco, nie trzeba szukać, konieczność sortowania pozostałej części,
sortowanie przy zwalnianiu.
- algorytm bliźniaków (ang. Buddies), podział pamięci w stały stosunku (np. 1:1, 1:2, 1:Ö2) na dwa bliźniacze bloki aż
do uzyskania bloku o minimalnej długości spełniającej zapotrzebowanie.
- algorytm cebuli (ang. Onion), przydział segmentów kodu i danych po przeciwnych stronach dostępnej pamięci.
14. Wymienić kryteria wymiatania segmentów z pamięci i kryteria ich powrotu do pamięci.
- Otoczenie: ilość pamięci operacyjnej, cechy procesów oczekujących na powrót
- Cechy wymagań pamięciowych programu:wielkość segmentów prywatnych, wielkość segmentów współdzielonych
- Cechy segmentów: segmenty kodu/danych, segmenty prywatne/współdzielone
- Cechy programu: czy komplet segmentów w pamięci
- Cechy procesu: stan wejścia/wyjścia, stan, składowa dynamiczna priorytetu
- Historia wykonania: gęstość wejścia/wyjścia, historia wymiatania, historia rozszerzeń dostępnej pamięci, czas
przebywania w pamięci
15. Wymień algorytmy wymiany stron.
- algorytm optymalny,
- algorytm NRU (ang. Not recently used) (bity R I M),
- algorytm FIFO,
- algorytm drugiej szansy,
- algorytm zegarowy,
- algorytm LRU (ang. Least recently used).
- algorytm LFU (ang. Least frequently used).
16. Podaj funkcje kierowcy urządzeń zewnętrznych.
- realizacja elementarnych transmisji wejścia/wyjścia lub ciągów transmisji,
- ukrycie cech specyficznych dla urządzenia, unifikacja dostępu do urządzenia i nazewnictwa urządzeń,
- nadanie urządzeniu cech wirtualnych,
- organizacja dostępu do urządzenia,
- synchronizacja procesów z urządzeniem,
- buforowanie, rozsynchronizowanie oprogramowania i urządzenia,
- śledzenie stanu urządzenia, reakcja na sytuacje alarmowe,
- optymalizacja dostępu do urządzenia.
17. Tryby przetwarzania ( tylko wyliczyć )
- wsadowy - nie wymaga obecności użytkownika (+ duża przepustowość systemu, -możliwy długi okres oczekiwania
na wyniki, ograniczone możliwości szeregowania, niemożność bieżącej kontroli procesu wykonania)
- interaktywny - konwersacyjne współdziałanie użytkownika z systemem komputerowym z wykorzystaniem terminala
komputera. (+ szybka reakcja systemu, możliwość kontroli przebiegu procesu wykonania, -mniejsze wykorzystanie
zasobów systemu komputerowego)
- czasu rzeczywistego - system, którego użytkownikiem jest proces technologiczny narzucający pewne wymagania
czasowe. Ograniczenia czasu reakcji: Twarde - maksymalny czas odpowiedzi, Miękkie- średni czas odpowiedzi
18. Dane opisywane przez deskryptor procesu:
- dane opisujące czym proces różni się od innych procesów,
- dane pozwalające przerwać i wznowić wykonanie procesu,
- relacje z innymi procesami (synchronizacja, hierarchia),
- buchalteria,
- status i szeregowanie,
- wiele innych.
19. Funkcje systemu operacyjnego w kontekście zarządzania pamięcią.
- zagospodarowanie przestrzeni adresowej poprzez wykorzystanie mechanizmów translacji adresów,
- ochrona zawartości pamięci,
- organizacja dostępu do obszarów współdzielonych,
- efektywna organizacja pamięci operacyjnej.
21. Zakończenie pracy procesu może być rezultatem:
- zakończenia działania programu, potwierdzonego odpowiednim wywołaniem systemowym,
- stwierdzenia przez program wystąpienia błędu krytycznego (również odpowiednie wywołanie systemowe),
- wykonania niedozwolonej operacji (zakończenie wymuszone), zazwyczaj wykonywane jako wywołanie sytuacji
wyjątkowej w której proces wywołuje system jak
poprzednio,
- żądania innego procesu (zakończenie wymuszone,
realizowane jak wyżej)
22. Opisać działanie układu translacji adresu (można
dodatkowo zilustrować rysunkiem)
Każdy wygenerowany przez procesor adres dzieli się na
dwie części: numer strony (page number) i odległość na
stronie (page offset). Numer strony jest używany jako indeks
w tablicy stron (page table). Tablica stron zawiera adresy
bazowe wszystkich stron w pamięci operacyjnej. W połączeniu z odległością na stronie adres bazowy definiuje adres
fizyczny pamięci, posyłany do jednostki pamięci. Rozmiar strony jest określany przez sprzęt.

Podobne dokumenty