Domanda |
Risposta |
|
inizia ad imparare
|
|
jest pośrednikiem między użytkownikiem a sprzętem komputerowym
|
|
|
|
inizia ad imparare
|
|
komunikuje się z komputerem poprzez sterowniki urządzeń i wykonyje kolejkowanie zadań, obsługę pamięci
|
|
|
|
inizia ad imparare
|
|
polecenia systemowe nie zawarte w jądrze
|
|
|
|
inizia ad imparare
|
|
Interrupt service routine
|
|
|
|
inizia ad imparare
|
|
Aktualnie wykonywany program
|
|
|
Jakie są główne cele systemu operacyjnego? inizia ad imparare
|
|
Wygoda użytkowania oraz wydajna eksploatacja sprzętu.
|
|
|
Jakie są główne składniki systemu operacyjnego? inizia ad imparare
|
|
Jądro, powłoka (shell), programy systemowe.
|
|
|
Czym jest system wsadowy? inizia ad imparare
|
|
System wykonujący zadania kolejno, bez interakcji z użytkownikiem
|
|
|
Co to jest system z podziałem czasu? inizia ad imparare
|
|
System dzielący czas procesora między wielu użytkowników/procesy.
|
|
|
Co oznacza system wieloprogramowy? inizia ad imparare
|
|
System wykonujący wiele programów „jednocześnie” przez przełączanie kontekstu.
|
|
|
|
inizia ad imparare
|
|
Program w trakcie wykonywania wraz z przypisanymi zasobami.
|
|
|
Jakie są podstawowe stany procesu? inizia ad imparare
|
|
Nowy, gotowy, wykonywany, oczekujący, zakończony.
|
|
|
|
inizia ad imparare
|
|
Lekka jednostka wykonawcza wewnątrz procesu.
|
|
|
Jaka jest różnica między procesem a wątkiem? inizia ad imparare
|
|
Wątki współdzielą pamięć procesu, procesy nie.
|
|
|
|
inizia ad imparare
|
|
Szybsze przełączanie, mniejsze zużycie zasobów, lepsza responsywność.
|
|
|
Jakie są tryby pracy procesora? inizia ad imparare
|
|
Tryb użytkownika i tryb jądra.
|
|
|
Dlaczego istnieje tryb jądra? inizia ad imparare
|
|
Aby chronić system przed nieautoryzowanym dostępem do zasobów.
|
|
|
|
inizia ad imparare
|
|
Bezpośredni dostęp do pamięci z pominięciem procesora.
|
|
|
|
inizia ad imparare
|
|
Sygnał powodujący chwilowe przerwanie pracy CPU w celu obsługi zdarzenia.
|
|
|
|
inizia ad imparare
|
|
Procedura obsługi przerwania (Interrupt Service Routine).
|
|
|
Czym różni się wyjątek od przerwania? inizia ad imparare
|
|
Wyjątek pochodzi z CPU (np. błąd), przerwanie zwykle z urządzeń.
|
|
|
Jakie są podstawowe operacje na plikach? inizia ad imparare
|
|
Otwórz, zamknij, czytaj, zapisz, usuń.
|
|
|
Co to jest asynchroniczne I/O? inizia ad imparare
|
|
Operacje wejścia/wyjścia niewstrzymujące wykonywania programu.
|
|
|
Do czego służy io_uring w Linuksie? inizia ad imparare
|
|
Do wydajnej, asynchronicznej obsługi I/O.
|
|
|
Czym są wywołania systemowe? inizia ad imparare
|
|
Interfejs umożliwiający programom dostęp do usług jądra.
|
|
|
Podaj przykład wywołania systemowego. inizia ad imparare
|
|
read(), write(), fork(), open().
|
|
|
Kiedy procesy nazywamy współpracującymi? inizia ad imparare
|
|
Gdy mogą na siebie wpływać (np. współdzielą dane lub komunikują się).
|
|
|
Jakie są zalety procesów współpracujących? inizia ad imparare
|
|
Dzielenie zasobów, przyspieszenie obliczeń, modularność, wygoda.
|
|
|
Jakie są dwa główne modele komunikacji międzyprocesowej (IPC)? inizia ad imparare
|
|
Pamięć współdzielona i komunikaty (message passing).
|
|
|
Na czym polega komunikacja przez pamięć współdzieloną? inizia ad imparare
|
|
Procesy mają dostęp do wspólnego obszaru pamięci.
|
|
|
Jaki problem pojawia się przy pamięci współdzielonej? inizia ad imparare
|
|
Synchronizacja dostępu do danych (race condition).
|
|
|
Co to jest bufor ograniczony? inizia ad imparare
|
|
Wspólny bufor o skończonym rozmiarze używany np. w problemie producent–konsument.
|
|
|
Na czym polega problem producent–konsument? inizia ad imparare
|
|
Producent wytwarza dane, konsument je pobiera z bufora.
|
|
|
Jakie są zagrożenia w tym problemie? inizia ad imparare
|
|
Przepełnienie bufora lub odczyt pustego bufora.
|
|
|
Na czym polega komunikacja przez komunikaty? inizia ad imparare
|
|
Procesy wysyłają i odbierają komunikaty.
|
|
|
Jakie są dwa tryby komunikacji komunikatów? inizia ad imparare
|
|
Bezpośrednia i pośrednia (przez skrzynki/porty).
|
|
|
Co to jest komunikacja synchroniczna? inizia ad imparare
|
|
Nadawca lub odbiorca czeka na drugą stronę.
|
|
|
Co to jest komunikacja asynchroniczna? inizia ad imparare
|
|
Nadawca nie czeka na odbiorcę.
|
|
|
Czym jest planowanie przydziału procesora? inizia ad imparare
|
|
Decydowanie, który proces i na jak długo dostaje CPU.
|
|
|
Jakie są trzy poziomy planowania? inizia ad imparare
|
|
Długoterminowy, średnioterminowy, krótkoterminowy.
|
|
|
Czym zajmuje się dispatcher? inizia ad imparare
|
|
Przełącza kontekst i uruchamia wybrany proces.
|
|
|
Jakie są cele dobrego algorytmu planowania? inizia ad imparare
|
|
Maksymalne wykorzystanie CPU, minimalny czas oczekiwania i odpowiedzi.
|
|
|
|
inizia ad imparare
|
|
Procesy wykonywane w kolejności zgłoszeń.
|
|
|
|
inizia ad imparare
|
|
Efekt konwoju (długie procesy blokują krótkie).
|
|
|
|
inizia ad imparare
|
|
Najpierw wykonywany jest proces o najkrótszym czasie CPU.
|
|
|
|
inizia ad imparare
|
|
Trudność w oszacowaniu czasu wykonania, możliwość zagłodzenia.
|
|
|
Na czym polega planowanie priorytetowe? inizia ad imparare
|
|
Proces z najwyższym priorytetem dostaje CPU.
|
|
|
Jaki problem może wystąpić? inizia ad imparare
|
|
Zagłodzenie procesów o niskim priorytecie.
|
|
|
Na czym polega Round Robin (RR)? inizia ad imparare
|
|
Każdy proces dostaje CPU na kwant czasu.
|
|
|
Co wpływa na działanie RR? inizia ad imparare
|
|
|
|
|
Co to jest race condition? inizia ad imparare
|
|
Błąd wynikający z jednoczesnego dostępu do danych.
|
|
|
Co to jest sekcja krytyczna? inizia ad imparare
|
|
Fragment kodu wymagający wyłącznego dostępu do zasobu.
|
|
|
Jakie warunki musi spełniać poprawne rozwiązanie sekcji krytycznej? inizia ad imparare
|
|
Wzajemne wykluczanie, postęp, ograniczone czekanie.
|
|
|
|
inizia ad imparare
|
|
Zmienna synchronizacyjna kontrolująca dostęp do zasobu.
|
|
|
Jakie są podstawowe operacje na semaforze? inizia ad imparare
|
|
|
|
|
Jaka jest różnica między semaforem binarnym a licznikowym? inizia ad imparare
|
|
Binarny ma wartości 0/1, licznikowy ≥ 0.
|
|
|
|
inizia ad imparare
|
|
Mechanizm synchronizacji w Linuksie łączący przestrzeń użytkownika i jądra.
|
|
|
Do czego służy bariera pamięci? inizia ad imparare
|
|
Zapewnia poprawną kolejność operacji pamięci.
|
|
|
Na czym polega zarządzanie pamięcią? inizia ad imparare
|
|
Przydzielanie, zwalnianie i ochrona pamięci procesów.
|
|
|
Dlaczego pamięć musi być zarządzana przez OS? inizia ad imparare
|
|
Aby zapobiec konfliktom, zapewnić ochronę i efektywne wykorzystanie RAM.
|
|
|
Co to jest adres logiczny? inizia ad imparare
|
|
Adres generowany przez proces.
|
|
|
Co to jest adres fizyczny? inizia ad imparare
|
|
Rzeczywisty adres w pamięci RAM.
|
|
|
Jaka jednostka tłumaczy adres logiczny na fizyczny? inizia ad imparare
|
|
MMU (Memory Management Unit).
|
|
|
Jakie są dwa podstawowe sposoby przydziału pamięci? inizia ad imparare
|
|
|
|
|
|
inizia ad imparare
|
|
Zmiana mapowania adresów logicznych na fizyczne.
|
|
|
Co to jest fragmentacja zewnętrzna? inizia ad imparare
|
|
Wolna pamięć istnieje, ale w rozproszonych blokach.
|
|
|
Co to jest fragmentacja wewnętrzna? inizia ad imparare
|
|
Niewykorzystana pamięć wewnątrz przydzielonego bloku.
|
|
|
|
inizia ad imparare
|
|
Stały fragment pamięci logicznej.
|
|
|
|
inizia ad imparare
|
|
Stały fragment pamięci fizycznej.
|
|
|
Co zawiera tablica stron? inizia ad imparare
|
|
Mapowanie stron logicznych na ramki fizyczne.
|
|
|
Jakie są zalety stronicowania? inizia ad imparare
|
|
Brak fragmentacji zewnętrznej.
|
|
|
Od czego zależy efektywny czas dostępu do pamięci? inizia ad imparare
|
|
Od liczby poziomów tablic stron i użycia TLB.
|
|
|
|
inizia ad imparare
|
|
Pamięć podręczna mapowań stron → ramek.
|
|
|
Dlaczego stosuje się tablice wielopoziomowe? inizia ad imparare
|
|
Aby zmniejszyć zużycie pamięci na tablice stron.
|
|
|
Jaka jest wada stronicowania wielopoziomowego? inizia ad imparare
|
|
Więcej dostępów do pamięci.
|
|
|
|
inizia ad imparare
|
|
Logiczna część programu (kod, dane, stos).
|
|
|
Co zawiera tablica segmentów? inizia ad imparare
|
|
Bazę segmentu i jego limit.
|
|
|
Jaka jest wada segmentacji? inizia ad imparare
|
|
|
|
|
Po co łączy się segmentację ze stronicowaniem? inizia ad imparare
|
|
Łączy logikę segmentów z brakiem fragmentacji zewnętrznej.
|
|
|
Czym jest pamięć wirtualna? inizia ad imparare
|
|
Iluzja dużej pamięci logicznej niezależnej od RAM.
|
|
|
Co to jest strona na żądanie? inizia ad imparare
|
|
Strona ładowana do RAM dopiero przy użyciu.
|
|
|
Co powoduje brak strony (page fault)? inizia ad imparare
|
|
Odwołanie do strony nieobecnej w pamięci RAM.
|
|
|
Jakie są kroki obsługi page fault? inizia ad imparare
|
|
Przerwanie → załadowanie strony → aktualizacja tablic → wznowienie procesu.
|
|
|
Dlaczego page fault jest kosztowny? inizia ad imparare
|
|
|
|
|
Kiedy potrzebny jest algorytm zastępowania stron? inizia ad imparare
|
|
Gdy brak wolnych ramek w RAM.
|
|
|
Co to jest algorytm optymalny (OPT)? inizia ad imparare
|
|
Usuwa stronę, która będzie użyta najpóźniej (teoretyczny).
|
|
|
|
inizia ad imparare
|
|
Usuwa stronę najdawniej używaną.
|
|
|
|
inizia ad imparare
|
|
Usuwa najstarszą załadowaną stronę.
|
|
|
Co to jest lokalny przydział ramek? inizia ad imparare
|
|
Proces korzysta tylko z własnych ramek.
|
|
|
Co to jest globalny przydział ramek? inizia ad imparare
|
|
Procesy konkurują o wspólną pulę ramek.
|
|
|
Czym jest szamotanie? (trashing) inizia ad imparare
|
|
System większość czasu spędza na obsłudze page fault.
|
|
|
Co jest przyczyną szamotania? inizia ad imparare
|
|
Zbyt mała liczba ramek na proces.
|
|
|
Jaki problem pamięciowy występuje przy wirtualizacji? inizia ad imparare
|
|
Wielopoziomowe tłumaczenie adresów.
|
|
|