Systemy operacyjne- egzamin - A
Przedstawiona lista zawiera operacje, które zazwyczaj podlegają ochronie. Określ minimalny zbiór operacji, które muszą być chronione w celu poprawnego działania systemu komputerowego oraz aby były jak najmniej uciążliwe dla użytkownika
przejście do trybu użytkownika,
przejście do trybu monitora,
czytanie z pamięci monitora,
zapisywanie w pamięci monitora,
pobieranie znaków z pamięci monitora,
włączanie czasomierza,
wyłączanie czasomierza.
Opracowanie systemu operacyjnego odpornego na działanie błędnych bądź złośliwych programów wymaga pewnych środków sprzętowych. Wymień trzy elementy sprzętu pomocne przy opracowaniu systemu operacyjnego i opisz ich użycie do ochrony systemu operacyjnego.
Rozważ system złożony z czterech zasobów tego samego typu, dzielonych przez 3 procesy, z których każdy potrzebuje co najwyżej 2 zadania. Pokaż, że taki system jest wolny od wad.
Porównaj i skontrastuj podstawowe różnice między dwoma algorytmami alokacji pamięci:
algorytm najlepszego dopasowania,
algorytm pierwszego dopasowania.
Rozważ tabelę:
|
Czas przybycia |
Cykl CPU |
A |
0 |
7 |
B |
2 |
4 |
C |
4 |
2 |
D |
7 |
3 |
Określ sumaryczny czas wykonania każdego z procesów dla FCFS oraz SRT. Który daje min. średni czas obsługi i ile on wynosi.
Rozważ ciąg odniesień do adresów logicznych z 460 bitowego programu : 10, 11, 104, 73, 309, 185, 245, 246, 434, 458, 364.
podaj ciąg odniesień do stron zakładając, że rozmiar strony wynosi 100 bajtów,
znajdź liczbę błędów stron dla ciągu odniesień z (a) przy założeniu, że programowi przydzielono 200 bajtów pamięci a do zastępowania stron stosuje się algorytm FIFO,
oblicz jaka byłaby liczba stron, gdy zastosowano tu algorytm LRU,
określ ile wynosiłaby liczba błędów stron przy zastosowaniu algorytmu optymalnego.
Nie spisałem. (były dwa programy z strefy krytycznej i trzeba było odpowiedzieć czy spełnione są warunki ochrony strefy krytycznej).
Systemy operacyjne- egzamin - B
Które z poniższych rozkazów można zaliczyć do uprzywilejowanych :
ustaw wartość zegara
odczytaj stan zegara
zeruj pamięć
wyłącz wykrywanie przerwań,
przełącz z trybu użytkownika na tryb monitora
Segmentacja pamięci jest jedynym ze sposobów realizacji idei pamięci wirtualnej. Na podstawie posiadanej wiedzy :
krótko opisz schemat segmentacji alokacji pamięci,
omów, jakie korzyści wypływają zastosowania segmentacji zamiast stronicowania.
jedną ze struktur stosowanych w segmentowym zarządzaniu pamięcią jest tablica segmentów; wyjaśnij, jakie informacje powinny być przechowywane w tej tablicy i w jaki sposób odbywa się odwzorowanie adresu przy użyciu segmentacji?
Rozważ tablicę przestawioną tablicę. Określ sumaryczny czas wykonywania każdego z procesów (od rozpoczęcia do definitywnego zakończenia) w przypadku zastosowania (FCFS) oraz algorytmu rotacyjnego (Round Robin) z kwantem czasu równym 2 jednostki czasu. W przypadku tego ostatniego algorytmu załóż, że jeśli przybywa nowy proces, to umieszczany jest na czele kolejki procesów gotowych. Jeśli proces przybywa w chwili, której jednocześnie powinno nastąpić przełączenie kontekstu, nowy proces zostanie najpierw umieszczony na czele kolejki procesów gotowych, a dopiero potem następuje przełączenie. Przedstaw swoje obliczenia w formie diagramu Gantt. Któryalgorytm daje minimum średni czas obsługi i ile on wynosi?
Proces ID |
Czas przybycia |
Cykl CPU |
A |
0 |
7 |
B |
2 |
4 |
C |
4 |
2 |
D |
7 |
3 |
E |
8 |
2 |
Omów pojęcie semafora i podstawowe operacje na nim. Wykorzystaj semafor do rozwiązania problemu wzajemnego wykluczania się w wersji dla n procesów.
Załóżmy, że mamy plik, który początkowo składa się ze 100 bloków. Załóżmy, że blok kontrolny pliku (i blok indeksowy w przypadku przydziału indeksowego) znajduje się już w pamięci operacyjnej. Oblicz, ile dyskowych operacji wejścia-wyjścia wymaga każda ze strategii przydziału: ciągła, listowa i indeksowa (jednopoziomowa), jeśli dla jednego bloku trzeba wykonać każdą z poniższych operacji. W przypadku przydziału ciągłego zakładamy, że nie ma więcej miejsca do rozrastania się pliku na początku, ale jest wolne miejsce na jego końcu. Zakładamy też, że blok informacji, która ma zostać dodana do pliku jest przechowywana w pamięci operacyjnej:
blok ma być dodany na początku pliku, d) blok ma być usunięty z początku pliku,
blok ma być dodany w środku pliku, e) blok ma być usunięty ze środka pliku,
blok ma być dodany na końcu pliku, f) blok ma być usunięty z końca pliku,
Rozważmy przestrzeń adresów logicznych składających się z ośmiu stron po 1024 bajtów każda, odwzorowaną na pamięć fizyczną, składająca się z 32 ramek. Z ilu bitów składa się adres fizyczny?
Załóżmy, że dane są dwa procesy P1 i P2, które wykonują się współbieżnie. Przeanalizuj ich kod i odpowiedz, czy ich implementacja spełnia wszystkie warunki rozwiązania problemu sekcji krytycznej. Odpowiedź uzasadnij.
// Proces P1 shared int i=1; int process P1 (void) { … for ( ; ;) { while ( i=1); { wykonujSekjaKryt1(); i=1; wykonujCzescLok1(); } } } |
// Proces P1
int process P2 (void) { … for ( ; ;) { while ( i=1); { wykonujSekjaKryt2(); i=2; wykonujCzescLok2(); } } } |