1/21
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai |
|---|
No analytics yet
Send a link to your students to track their progress
Jednoprogramowy: Jedno zadanie w pamięci.
Wieloprogramowy: Wiele zadań naraz w pamięci, a system operacyjny przełącza procesor między nimi, gdy aktualne zadanie czeka np. na powolne urządzenie we-wy.
< 0: Błąd systemowy (nowy proces potomny nie powstał).
= 0: Kod wykonuje się wewnątrz nowo utworzonego procesu potomnego (dziecka).
> 0: Kod wykonuje się w procesie rodzicielskim, a zwrócona wartość to unikalny numer PID potomka.
Blokująca: Zawiesza działanie procesu do momentu, gdy komunikat fizycznie pojawi się w buforze odbiorczym.
Nieblokująca: Zwraca kontrolę do procesu natychmiast – albo z pobranym komunikatem, albo z informacją (kodem błędu) o jego braku.
FIFO: Bezwzględnie usuwa stronę, która najdłużej przebywa w pamięci RAM.
Druga szansa: Sprawdza bit odniesienia R najstarszej strony – jeśli wynosi 1, zeruje go i daje stronie kolejną szansę, przesuwając ją na koniec kolejki.
Bit R (Reference): Ustawiany przy każdym odwołaniu do strony (odczyt/zapis) i służy algorytmom zastępowania stron.
Bit D (Dirty): Ustawiany wyłącznie przy operacji zapisu i informuje system, że zawartość strony została zmodyfikowana i musi zostać zrzucona na dysk przed jej usunięciem z RAM.
Problem polega na zsynchronizowaniu dostępu do bazy danych tak, aby wielu czytelników mogło z niej korzystać jednocześnie, ale pisarz wprowadzający modyfikacje miał zapewnioną całkowitą, bezpieczną wyłączność bez ryzyka zagłodzenia którejkolwiek ze stron.
Omów, jak działa atak wykorzystujący przepełnienie bufora (buffer overflow)
Polega na zapisaniu w buforze większej liczby danych niż wynosi jego zadeklarowany rozmiar. Nadmiarowe dane zalewają pamięć i nadpisują sąsiadujący adres powrotu z funkcji wskaźnikiem skierowanym na wstrzyknięty złośliwy kod.