Zadanie 1 W systemie uruchomiono trzy procesy: A, B, C. Proces A przychodzi w czasie t=0ms i wykonuje się przez 40 ms. Proces B przychodzi w czasie t=20 ms i wykonuje się przez 20ms. Proces C przychodzi w czasie t=30 ms i wykonuje się przez 10ms. Narysuj trzy diagramy Gannt'a obrazujące wykorzystanie procesora i zakładające odpowiednio planowanie przy pomocy algorytmów FCFS, SJF (shortest job first) oraz SRTF (shortest remaining time first, zwany również SJF z wywłaszczaniem).

 

FCFS  (First Come First Serve, Procesy otrzymują procesor na zasadzie FIFO; nie ma wywłaszczenia)

A

B

C

                     0                                              40                              60                 70

SJF (Shortest Job First; bez wywłaszczenia)

A

C

B

                     0                                              40                    50                           70

SRTF (Shortest Remaining Time First; SJF z wywłaszczeniem)

A

B

C

B

A

                     0                    20               30            40                50                     70

Zadanie 2. Głowica dysku jest nad sektorem 20. W kolejce żądań do dysku znajdują się następujące sektory: 1, 14,23,18,45,68,100 Podaj kolejność obsługi żądań zakładając planowanie przy pomocy algorytmów: FCFS, SSTF (shortest seek time first) oraz C-LOOK (z przesuwem w

stronę rosnących numerów).

 

FCFS

                0  1                 14        18     20     23           45                  68                       100

 

 

 

 

 

 

 

 

 

SSTF        

                0  1                 14        18     20     23           45                  68                       100

    

 

 

 

 

 

 

C-LOOK

                0  1                 14        18     20     23           45                  68                       100

 

 

 

 

 

 

 

 

Zadanie 3 Alicja chce wysłać tajną wiadomość do Boba. Niestety Ewa weszła w posiadanie klucza prywatnego Alicji. Czy w takiej sytuacji Alicja będzie mogła przekazać tajną wiadomość Bobowi nie narażając jej na ujawnienie Ewie ? (Uzasadnienie max. 3 zdania).

Tak. Wykorzystując algorytm kryptografii asymetrycznej, gdzie jest jeden klucz szyfrujący i jeden deszyfrujący. W takim przypadku, należy ukryć klucz Alicji i użyc klucza publicznego Boba do szyfrowania wiadomości oraz klucza prywatnego Boba do deszyfrowania wiadmości.

 

 

Zadanie 4 Rozmiar strony w systemie wynosi 8KB. Obraz procesu w pamięci zajmuje 20KB. Oznacza to, że z powodu fragmentacji zewnętrznej zmarnowanych jest ...4.... KB pamięci.

 

Zadanie 5 Proces wykonuje się w dwóch wątkach A oraz B. Obydwa wątki wykonują funkcję f, a x jest zmienną lokalną w tej funkcji [deklaracja: int x;] Najpierw wątek A przypisał zmiennej x wartość 10. Następnie wątek B przypisał tej samej zmiennej wartość 5. Następnie wątek A odczytał wartość tej zmiennej uzyskując …10….

 

Zadanie 6 Spośród trzech mechanizmów transferu we/wy (A) programowane wejście-wyjście (ang.PIO) (B) wejście-wyjście sterowane przerwaniami (C) transmisja z wykorzystaniem bezpośredniego dostępu do pamięci (ang. DMA), osiągnięcie największej szybkości transmisji danych umożliwia .......C........, a drugiej co do wielkości szybkości transmisji ........A..........

 

Zadanie 7 Podaj kod dla pewnego (pojedynczego) procesu, który przy wykorzystaniu pojedynczego semafora S doprowadzi do blokady (ang. deadlock).

private object lock1 = new object();
private object lock2 = new object();

new Thread(M1).Start();
new Thread(M2).Start();

public void M1() {

lock(lock1)
lock(lock2)
..
// jakiś kod }

public void M2() {

lock(lock2)
lock(lock1)

// jakiś kod }

 

Zadanie 8 Czy znany z klasycznego Uniksa mechanizm synchronizacji jądra i handlerów przerwań, polegający na blokowaniu przerwań (np. instrukcje cli/sti w Pentium) przy wykonywaniu krytycznych sekcji kodu jądra spełniałby swoją rolę w systemie wieloprocesorowym (Uzasadnienie max. 3 zdania).

Nie. Ponieważ w systemach SMP:
- Jeżeli dwa procesy wywołuja funkcje systemowe, dwa procesory moga probowac odwolac sie do tej samej struktury danych w jadrze.

- Wyłaczenie przerwań (np. instrukcja cli) blokuje perzerwania tylko na lokalnym procesorze, przerwanie może odebrać inny procesor.

 

Zadanie 9 W systemie wieloprocesorowym ze współdzieloną pamięcią wykorzystującym współczesne procesory (A) nie występuje efekt fałszywego współdzielenia (ang. false sharing) (B) czas dostępu dowolnego procesora do dowolnej komórki pamięci zewnętrznej (np. DDR-RAM) jest stały (C) stosowanie mechanizmów synchronizacji opartych na aktywnym czekaniu (ang. spin-locks) zawsze zmniejsza wydajność. Poprawne odpowiedzi to: ...Brak poprawnej odpowiedzi.....

Zadanie 10 Planista długoterminowy jest powszechnie stosowany w (A) systemach czasu rzeczywistego typu hard real-time (B) w systemach operacyjnych dla komputerów biurkowych (np. Windows XP) (C) systemach klastrowych służących do obliczeń naukowo-inżynierskich (D) w jądrze Linuksa z serii 2.6.x. ..........C..........

Zadanie 11 W klasycznym mechanizmie wymiany przesyłane są (A) najrzadziej używane strony procesów (B) kompletne obrazy procesów (C) wybrane segmenty procesów (D) tylko segmenty kodu procesów.  B,C.

Zadanie 12 Które mechanizmy są absolutnie niezbędne do implementacji pamięci wirtualnej przy pomocy stronicowania na żądanie: (A) bit V (ang. valid) w pozycji tablicy stron określający czy odwołanie do strony jest poprawne (B) bit R (ang. referenced) automatycznie ustawiany na jeden gdy nastąpi odwołanie do strony (C) bit D (ang. dirty) automatycznie ustawiany na jeden gdy strona została zmodyfikowana (D) możliwość wznowienia instrukcji przerwanej przez wyjątek stronicowania. Odp : A,D.

Zadanie 13 Pewna firma z okolic Redmond w USA twierdzi, że, wprowadzony w najnowszych konstrukcjach Intela i AMD bit ED (ang. execute disable), pozwalający na zablokowanie praw wykonania kodu dla strony procesu w pełni i całkowicie likwiduje wszelkie możliwe naruszenia bezpieczeństwa związane z przepełnieniem bufora (ang. buffer overrun).Dlaczego firma się myli ? Firma ta myli się ponieważ istnieje możliwość ustawienia flagi ED na wszystkich stronach procesu, przez co zamieniając atak przepełnienia bufora na atak DOS.

Zadanie 14 Podaj przykład zdarzenia, które sprawia że proces będący w stanie oczekującym przechodzi do stanu zakończonego (max 3 zdania). Proces został zakończony przez inny proces (np funkcja kill w systemie UNIX)

 

Zadanie 15 Lista dostępów (ang. Access Control List - ACL)
(A) przechowuje wykaz domen mających uprawnienia do obiektu wraz uprawnieniami dla każdej z domen (B) zawiera listę obiektów dla domeny wraz z uprawnieniami do każdego z obiektów
(C) przechowuje zakodowaną kompletną macierz dostępu (D) przechowuje wyłącznie uprawnienia dla właściciela, grupy i pozostałych użytkowników.......A
.

Zadanie 16 System operacyjny stosuje planowanie procesów wykorzystujące wywłaszczanie. Planista może zostać wywołany ponieważ (A) proces zakończy się (B) proces zużyje swój kwant czasu (C) proces przejdzie w stan zablokowany oczekując na zakończenie operacji we/wy (D) zgasną światła na ulicy, (E) zostanie utworzony nowy proces. Poprawne odpowiedzi to A, B, C.

 

Zadanie 17 Jaka jest funkcja planisty krótkoterminowego w systemie operacyjnym (max 3 zdania) ?

rostrzyga problem "Któremu procesowi w stanie gotowym mam przydzielić procesor".

 

Zadanie 18 Co to jest bomba logiczna (max. 3 zdania + przykład) ?

Jest to kod umieszczony w legalnym programie, który eksploduje gdzy spełnione są pewne warunki np. Programista zostaje skreślony z listy płac firmy lub firma nie otrzyma zapłaty
.

 

Zadanie 19 Dlaczego odczyt pliku przy pomocy odwzorowania w pamięci (ang. memory mapped file) jest bardziej wydajny od klasycznego odczytu przy pomocy funkcji read (max. 4 zdania) ?

Z dwóch powodów:
- wywołanie funkcji systemowej jest o wiele wolniejsze niż zmiana adresu lokalnego programu.
- W większości systemów operacyjnych ten region pamięci jest zmapowany jest pamięcią podręczną systemu operacyjnego, co oznacza, że nie ma potrzeby tworzenia kopii pliku w pamięci operacyjnej użytkownika.

 

Zadanie 20 Która z metod alokacji bloków danych pozwoli na najszybsze odczytanie kompletnego pliku ? (A) alokacja ciągła (B) alokacja listowa (C) alokacja z wykorzystaniem tablicy FAT (D) alokacja indeksowa. Odp A.

 

Zadanie 21 C jest zmienną warunkową zadeklarowaną wewnątrz monitora. Co robi operacja C.wait() .(Możliwie najpełniejsza definicja nie więcej niż 3 zdania).

Zawiesza wykonanie procesu, i jednocześnie zwalnia monitor pozwalając

innym procesom wejść do monitora.

 

Zadanie 22 Jaka jest różnica pomiędzy wywołaniami systemowymi realizującymi odpowiednio synchroniczną i asynchroniczną operację wejścia-wyjścia ? (max. 3 zdania)

Synchroniczna :

Powrót z systemu operacyjnego po przeprowadzeniu operacji we-wy

Proces żądający operacji we-wy jest wstrzymywany na jej czas trwania

W tym czasie procesor może zostać przydzielony innemu procesowi.

Asynchroniczna:

Powrót z systemu operacyjnego po zainicjalizowaniu operacji we-wy

Proces co jakiś czas sprawdza czy operacja się zakończyła

W tym rozwiązaniu w czasie trwania operacji we-wy możliwe jest wykorzystanie

procesora przez ten sam proces.

 

Zadanie 23 Pewien bank wykorzystuje dwie kolejki do okienka. W jednej stoją zwykli klienci a w drugiej Bardzo Ważne Osoby. Pani okienku obsługuje na przemian trzy Bardzo Ważne Osoby i jednego zwykłego klienta. Czy zwykli klienci narażeni są na zagłodzenie ? (max 5zdań).  Nie ponieważ mimo faktu iż ważni klienci są uprzywilejowane to zwykli klienci również zostają obsłużeni (choć w ograniczonym stopniu).

 

Zadanie 24 Dlaczego weryfikacja poprawności poprzez testowanie ma bardzo ograniczone
zastosowanie w przypadku programów współbieżnych (kilka procesów lub wątków) (max 4 zdania) ?

Z tego powodu, że w systemach współbierznych procesy są niedeterministyczne (czyli trudno ocenić, który proces wykona się w jakiej kolejności)

 

Zadanie 25 Podaj dwa (dowolnie wybrane z trzech) warunki, które powinno spełniać poprawne rozwiązanie problemu sekcji krytycznej.

- Wzajemne wykluczanie; w danej chwili tylko jeden proces może być w sekcji krytycznej.
- Postęp; proces który nie wykonuje sekcji krytycznej nie może blokować procesów chcących wejść do sekcji.
- Ograniczone czekanie; proces nie może czekać na wejście do sekcji krytycznej w nieskończoność.

 

Zadanie 26 Dlaczego na graf opisujący strukturę katalogów w systemie pliku nakładamy wymaganie braku cykli ?

Aby uniknąć powstawania ścieżek o nieskończonej długości.

 

Zadanie 27 O dowolnym systemie wieloprogramowym możemy powiedzieć że:
(A) wiele programów przebywa jednocześnie w pamięci
(B) maksymalnie jeden program przebywa jednocześnie w pamięci
(C) wiele użytkowników może pracować interakcyjnie korzystając z wielu terminali
(D) Operacje wejścia-wyjścia jednego procesu mogą być wykonywane podczas gdy drugi proces wykonuje swój kod na procesorze. Poprawne odpowiedzi to ....A.C.D....

 

Zadanie 28 Co się stanie w typowym systemie operacyjnym (np. Windows XP, Linux), gdy proces wykonujący się w trybie użytkownika usiłuje wykonać instrukcję cli blokującą przerwania (max 4 zdania) ?

 

Zadanie 29 Podaj przykład zdarzenia, które sprawia że proces będący w stanie zablokowanym przechodzi do stanu gotowego (max 3 zdania).

Gdy zakończona została operacja wejścia/wyjścia i planista krótkoterminowy zadecydował o przesłaniu procesu do kolejki krótkoterminowej.

Zadanie 30  Dane są dwa semafory S1 oraz S2. Przez P oznaczamy wejście do semafora, a przez V opuszczenie. Podaj przykład kodu, dla dwóch procesów lub wątków (odrębnie dla każdego z nich) który może doprowadzić do blokady (ang. deadlock).


Semaphore S1,S2;


Proces P0

S1.Wait();

S2.Wait();

S2.Signal();

S1.Signal();

Proces P1

S2.Wait();

S1.Wait();

S1.Signal();

S2.Signal();


Zadanie 31

System operacyjny używa planowania procesów nie wykorzystującego wywłaszczania.
Planista może zostać wywołany gdy
(A) proces zakończy się
(B) proces zużyje swój kwant czasu
(C) proces przejdzie w stan zablokowany oczekując na zakończenie operacji we/wy
(D) proces przejdzie ze stanu zablokowanego do stanu gotowego (np. w wyniku zakończenia operacji we/wy)(E) zostanie utworzony nowy proces.
Poprawne odpowiedzi to A

 

 

Zadanie 32 Wyjaśnij, jaka jest funkcja bufora TLB (ang. translation lookaside buffer) (max 4 zdania).

Bufor zawierający tablice stron, przetrzymywany jest w szybkiej pamięci podręcznej.

Zadanie 33 Kontroler typowego dysku twardego otrzymał żądanie odczytu grupy czterech sektorów o kolejnych numerach, położonych na jednej ścieżce. Najmniejszy wpływ na czas trwania tej operacji będzie miał
(A) czas wyszukiwania (przesunięcia głowicy na właściwy cylinder)
(B) czas oczekiwania (na to, aż głowica znajdzie się nad pierwszym sektorem grupy)
(C)czas właściwej transmisji danych (z głowicy do kontrolera i do systemu)

Odpowiedź: C.

Zadanie 34 Które z poniższych metod alokacji bloków są odpowiednie dla plików o dostępie
swobodnym (z częstym wykorzystaniem operacji seek):
(A) alokacja ciągła (B) alokacja listowa (C) alokacja z wykorzystaniem tablicy FAT
(D) alokacja z wykorzystaniem bloków indeksowych.
Są to ...A....

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

WYKŁAD 1

1. System jednowsadowym

Zbiór poleceń dostarczany jest do komputera tworządc „wsad” procesor wykonuje zadania lecz użytkownik nie ma kontroli nad wykonywaniem zadania. W systemie jednowsadowym w pamięci istnieje tylko jeden program, kolejny dostarczany jest po przetworzeniu poprzedniego, co powoduje że podczas operacji we/wy procesor pozostaje bezczynny.

2. System wielowsadowym

W przeciwieństwie do jednowsadowego nw pamięci przechowywanych może być kilka programów.

3.Hard real-time

Reakcja na zdarzenie musi się zakończyć przed upływem określonego czasu.

4. Soft real-time

zadanie do obsługi w czasie rzeczywistym otrzymuje pierszeństwo nad pozostałymi zadaniami.

5. Spooling

Jest trybem zarządzania pracą pewnego urządzenia. Dane wymagające przetworzenia przez konkretne urządzenie są umieszczane w buforze na dysku lub w pamięci komputera. Po umieszczeniu, urządzenie może je pobierać i przetwarzać z dowolną prędkością. CPU nie musi nadzorować tego procesu, więc może zająć się innymi zadaniami.

WYKŁAD 2

1. Jaka jest różnica między synchroniczną a asynchroniczną operacją wyjścia (wejścia/wyjścia)?

Synchroniczna

● Powrót z systemu operacyjnego po przeprowadzeniu operacji we-wy

● Proces żądający operacji we-wy jest wstrzymywany na jej czas trwania

-        W tym czasie procesor może zostać przydzielony innemu procesowi.

 

 

 

Asynchroniczna

● Powrót z systemu operacyjnego po zainicjalizowaniu operacji we-wy

● Proces co jakiś czas sprawdza czy operacja się zakończyła

– W tym rozwiązaniu w czasie trwania operacji we-wy możliwe jest wykorzystanie

procesora przez ten sam proces.

2. Jaka jest różnica między trybem pracy jądra a trybem użytkownika?

Tryb pracy użytkownika: Proces może wywoływać kod tego programu.Może także wywoływać funkcję bibliotek współdzielonych (.so w Linuksie, biblioteki dynamiczne .dll w Windows), które formalnie nie są częścią programu.

Tryb pracy jądra: W tej sytuacji proces wykonuje kod systemu operacyjnego, a nie kod programu z którego został wczytany.

3. Która z metod komunikacji z urządzeniami zewnętrznymi:
a) metoda PIO
b) metoda DMA
c) metoda we-wy sterowanego przerywaniami
nadaje się najlepiej do komunikacji z szybkim twardym dyskiem?

Odp: metoda DMA, bo do przesłania bloku danych nie angażuje procesora

WYKŁAD 3

1. Planista długoterminowy:

Procedura systemu operacyjnego dokonująca wyboru zadań do wykonania z puli zadań przechowywanych w pamięci zewnętrznej systemu komputerowego. Kolejność wykonywania zadań może zależeć od ich pilności, rozmiarów.

2. Planista średnioterminowy:

Procedura systemu operacyjnego podejmująca decyzję o wymianie procesu. W razie konieczności zwolnienia znacznej części pamięci operacyjnej, lepszego doboru procesów lub zmniejszenia stopnia wieloprogramowości planista średniotermonowy usuwa któryś z procesów na dysk, przechowując go tam wraz ze wszystkimi informacjami niezbędnymi do późniejszego wznowienia.

 

 

3. Opisz sytuację, w której proces przechodzi ze stanu A w stan B (gdzie A, B wybrane przejścia)

Przejście ze stanu gotowości do zakończenia procesu może nastapić przy wywolaniu funkcji kill (Unix).

4. Różnica między procesem a wątkiem.

Procesy są od siebie odizolowane,  wątki nie.

5. Pewien serwer www obsługuje każde żądanie przez tworzenie nowego wątku. Podaj jedną wadę i jedną zaletę tego rozwiązania w porównaniu z rozwiązaniem, w którym każde żądanie jest obsługiwane przez tworzenie nowego procesu

odp: wada-mniejsza stabilność, zaleta: większa wydajność

WYKŁAD 4

1. Podaj definicję blokady (zakleszczenia).

 Zbiór procesów jest w stanie blokady, kiedy każdy z nich czeka na zdarzenie, które może zostać spowodowane wyłącznie przez jakiś inny proces  z tego zbioru.

2. Podaj definicję zagłodzenia.

Proces  czeka w nieskończoność, pomimo że zdarzenie na które czeka występuje. (Na zdarzenie reagują inne procesy).

3. Jaka jest wada metody synchronizacji opartych na aktywnym czekaniu?.

Marnowany jest czas procesora.

4. Podaj 2 z 3 warunków, które powinno spełniać rozwiązanie problemu sekcji krytycznej.

● Wzajemne wykluczanie.

– W danej chwili tylko jeden proces może być w sekcji krytycznej.

● Postęp

– Proces który nie wykonuje sekcji krytycznej nie może blokować procesów

chcących wejść do sekcji.

● Ograniczone czekanie

-        Proces nie może czekać na wejście do sekcji krytycznej w nieskończoność

 

5.      Podaj rozwiązanie problemu sekcji krytycznej wykorzystujące semafor.
● Wyłącz przerwania
– Nie działa w systemach wieloprocesorowych

– Problematyczne w systemach z ochroną

– Wykorzystywane do synchronizacji w obrębie jądra (zakładając jeden procesor
● Rozwiązania z czekaniem aktywny

6. Kiedy mówimy o wyścigu?

O warunku wyścigu mówimy gdy wynik zależy od kolejności wykonywania instrukcji procesów.

WYKŁAD 5

1. jaka jest różnica między semantyką Hoare'a i semantyką Mesa?

Semantyka Mesa - Proces który wywołał operacje signal (Q) kontynuuje pierwszy. Proces P może wznowić działanie, gdy Q opuści monitor.

Semantyka Hoare'a - Proces odblokowany (P) kontynuuje jako pierwszy. Może ułatwiać pisanie poprawnych programów. W przypadku semantyki Mesa nie  mamy gwarancji, że warunek, na jaki czekał P jest nadal spełniony (P powinien raz jeszcze sprawdzić warunek).

2. jakie są wady semaforów w porównaniu z monitorami?

·        Duża podatność na błędy, trudno wykazać poprawność programu

·        Mechanizm niskiego poziomu

3. jakie dwie operacje wykonuje metoda wait monitora?

Zawiesza wykonanie procesu, i jednocześnie zwalnia monitor pozwalając innym procesom wejść do monitora.

4. różnica między metodą signal monitora a  metodą signal semafora.

Po zasygnalizowaniu warunku proces  (który wykonał operację signal) przechodzi do kolejki urgent queue.

 

 

 

 

WYKŁAD 6

1. Czy w systemie stosującym planowanie bez wywłaszczenia proces, który się zawiesił, zawiesi cały system? (+uzasadnienie)

Tak, ponieważ w systemie bez wywłaszczenia prcesowi nie można odebrać procesora, chyba że sam go zwolni.

2. Co to jest wywłaszczenie?

Technika używana w środowiskach wielowątkowych, w której algorytm szeregujący może wstrzymać aktualnie wykonywane zadanie (np. proces lub wątek), aby umożliwić działanie innemu.

WYKŁAD 7

● Fragmentacja wewnętrzna.

– Obszar pamięci przydzielony dla procesu jest większy niż niezbędny.

– Poważny problem przy partycjach o stałych rozmiarach.

● Fragmentacja zewnętrzna.

– Całkowita pojemność wolnej pamięci jest wystarczająca na zaspokojenie żądania

procesu, ale wolna pamięć nie stanowi ciągłego bloku

2. Podaj przyczynę dla której przełączanie między procesami jest wolniejsze niż te między wątkami tego samego procesu?
Odp: Podczas przełączania między procesami następuje przełączanie kontekstu co wymaga opróżnienia bufora TLB.

WYKŁAD 8

● Anomalia Belady'ego: większa liczba ramek niekoniecznie zmniejsza liczbę błędów stron.

1. Ciąg odwołań: umieć zasymulować algorytmy z wykładu: FIFO (First In First Out), Algorytm drugiej szansy, Algorytm optymalny, Algorytm LRU (Least recently used).

Algorytm drugiej szansy:

W algorytmie drugiej szansy sprawdzany jest bit odniesienia R.

– Jeżeli R==0 (brak odniesienia) to strona jest wybierana na ofiarę.

– Jeżeli (R==1) (odniesienie) to:

● R ustawiany jest na zero

● Strona przesunięta jest na koniec kolejki (“otrzymała drugą szansę”).

● Przechodzimy do kolejnej strony w kolejce.

Algorytm optymalny : Zastąp stronę, do której nie będziemy się odwoływać przez najdłuższy cza

Algorytm LRU: Zastąp tę stronę, która nie była najdłużej używana. Zakładamy, że ta strona nie będzie dalej potrzebna

WYKŁAD 10

1. Dlaczego trudno znaleźć system plików, w którym blok ma 128 MB?

Ponieważ stosując:

·       alokację indeksową możemy uzyskać 256KB

·       indeksowanie pośrednie – 256KB*256KB = 64MB

·       indeksowanie pośrednie podwójne – 256KB*256KB*256KB = 16GB

2. Która metoda alokacji oferuje najmniejszą/największą wydajność przy wykonywaniu seek?

·        Największa: Alokacja ciągła

·        Najmniejsza: Alokacja listowa

3. Na czym polega przewaga odczytu z pamięci nad read?

Plik staje się częścią przestrzeni adresowej procesu;  Unikamy podwójnego kopiowania danyc;  Implementacja na ogół wykorzystuje mechanizm pamięci wirtualne.

 

 

 

 

 

WYKŁAD 11

 

1. Co to jest macierz dostępu?

abstrakcja ochrony obiektów w systemie operacyjnym: macierz, której wiersze reprezentują domeny ochrony, a kolumny — chronione obiekty. Każdy element takiej macierzy zawiera zbiór praw dostępu.

2. Jak działa bit suid?

Plik posiadający flagę suid wykonuje się z uprawnieniami właściciela.

WYKŁAD 12

Dlaczego bit zakazu nie rozwiązuje wszystkich problemów związanych z przepełnieniem bufora?

Zamieniamy możliwość włamania się do systemu na atak DoS (usługa spowoduje błąd stronicowania i przestaje działać).

WYKŁAD 13

1. Czy proces w trybie użytkownika może zostać wywłaszczony w Uniksie?

 TAK
2. Czy proces w trybie jądra może zostać wywłaszczony w Uniksie?

NIE

3. Czym jest fałszywe współdzielenie?


Jeśli procesor A cyklicznie odczytuje zmienną x, a procesor B cyklicznie zapisuje zmienną y formalnie wpsółdzielenia nie ma, ale pamięć podręczna operuje wierszami o typowym rozmiarze 64 bajtów. Dwie sąsiednie zmienne prawie na pewno znajdują się w tym samym wierszu, a jest on współdzielony. Aby tego uniknąć pomiędzy zmienną x a y należy wstawić odstęp równy długości wiersza pamięci podręcznej.

 

 


4. Kiedy sytuacja z wykorzystaniem aktywnego czekania jest preferowana, a kiedy nie ma sensu?

Preferowana:

·        gdy chcemy zsynchronizować  kod wywołania systemowego z handlerem przerwania;

·        oczekiwany koszt czekania aktywnego jest mniejszy od kosztu przełączania kontekstu;

Nie ma sensu:

·        w systemie jednoprocesorowym.


5. Na jakie kategorie możemy podzielić systemy wieloprocesorowe?

·        System z przesyłaniem komunikatów;

·        System ze wspólną pamięcią;

WYKŁAD 14


1. Przykład maszyny z planistą długoterminowym. (system wsadowy)

2. Definicja systemu hard real-time.

System, w ktorym poprawność zależy nie tylko od poprawności wynikow, ale rownież od dostarczenia tych wynikow przed upływem nieprzekraczalnego terminu.


3. Czy Windows i Linux są systemami hard real-time?

Nie

4. Algorytmy szeregowania w systemach czasu rzeczywistego.(nie wiem czy trzeba opisywać każdy z nich....)

·        RMS

·        EDF