Zestawy rozmówBlog

Twoja wymarzona praca? Lets Git IT.
Interaktywna platforma przygotowująca do rozmów technicznych dla nowoczesnych programistów.

XGitHub

Platforma

  • Kategorie

Zasoby

  • Blog
  • O aplikacji
  • FAQ
  • Sugestie

Prawne

  • Polityka prywatności
  • Regulamin

© 2026 LetsGit.IT. Wszelkie prawa zastrzeżone.

LetsGit.IT/Kategorie/Systemy operacyjne
Systemy operacyjnemedium

Wyjaśnij wirtualną pamięć i stronicowanie.

Tagi
#virtual-memory#paging#performance
Wróć do kategoriiPrzejdź do quizu

Odpowiedź

Pamięć wirtualna daje procesowi własną przestrzeń adresową mapowaną na pamięć fizyczną. Stronicowanie przenosi strony między RAM a dyskiem, zapewniając izolację i możliwość większej pamięci niż RAM.

Odpowiedź zaawansowana

Głębiej

VM daje izolację i elastyczność:

  • Tablice stron mapują adresy wirtualne na fizyczne.
  • Page fault występuje, gdy strony nie ma w RAM.
  • OS stosuje polityki wymiany (np. przybliżenia LRU).
  • Zbyt dużo faultów powoduje thrashing i duże spowolnienie.

Przykłady

Przebieg page fault:

Dostęp do strony -> fault -> odczyt z dysku -> aktualizacja tablicy -> wznowienie

Typowe pułapki

  • Traktowanie swap jako „darmowej pamięci”.
  • Ignorowanie working set (thrashing).
  • Overcommit pamięci bez monitoringu.

Pytania uzupełniające na rozmowie

  • Czym jest working set procesu?
  • Jak copy-on-write wykorzystuje paging?
  • Jak huge pages wpływają na wydajność?

Powiązane pytania

Systemy operacyjne
Czym jest context switching i dlaczego jest kosztowny?
#context-switch#scheduler#performance
JavaScript
Czym są debounce i throttle i kiedy ich używać?
#performance#debounce#throttle
MongoDB
Indeksy tekstowe: kiedy ich użyć i jakie mają ograniczenie?
#mongo#text-index
#search
MongoDB
`$lookup`: co robi i jaka jest typowa pułapka?
#mongo#lookup#aggregation
PostgreSQL
Materialized view vs view: jaka jest różnica?
#postgres#views#materialized-view