Podcast
Questions and Answers
Całkowita liczba przerwań programowych w Linuksie jest ograniczona.
Całkowita liczba przerwań programowych w Linuksie jest ograniczona.
True (A)
Przerwania programowe są wykonywane w kontekście przerwania.
Przerwania programowe są wykonywane w kontekście przerwania.
True (A)
Tasklety są wykonywane współbieżnie na platformach wieloprocesorowych.
Tasklety są wykonywane współbieżnie na platformach wieloprocesorowych.
False (B)
Nie można określić minimalnego czasu opóźnienia wykonywania czynności w kolejkach prac.
Nie można określić minimalnego czasu opóźnienia wykonywania czynności w kolejkach prac.
Wątek ksoftirqd obsługuje przerwania programowe oraz tasklety.
Wątek ksoftirqd obsługuje przerwania programowe oraz tasklety.
Przerwania programowe są alokowane dynamicznie podczas działania systemu.
Przerwania programowe są alokowane dynamicznie podczas działania systemu.
Istnieje możliwość stworzenia kolejki prac obsługiwanej przez pojedynczy wątek roboczy na platformach wieloprocesorowych.
Istnieje możliwość stworzenia kolejki prac obsługiwanej przez pojedynczy wątek roboczy na platformach wieloprocesorowych.
Czynności w kolejkach prac są zawsze wykonywane natychmiast po upływie ustalonego czasu.
Czynności w kolejkach prac są zawsze wykonywane natychmiast po upływie ustalonego czasu.
Priorytety procesów w planisty CFS są prawie niezmienne.
Priorytety procesów w planisty CFS są prawie niezmienne.
Klasa szeregowania SCHED_BATCH jest obsługiwana za pomocą algorytmu rotacyjnego.
Klasa szeregowania SCHED_BATCH jest obsługiwana za pomocą algorytmu rotacyjnego.
Waga procesu jest odwrotnością wartości jego priorytetu.
Waga procesu jest odwrotnością wartości jego priorytetu.
Czas fizyczny w planisty CFS jest mierzony z rozdzielczością nanosekundową.
Czas fizyczny w planisty CFS jest mierzony z rozdzielczością nanosekundową.
Czas wybierania procesów przez planistę CFS jest zawsze krótszy niż dla planisty O(1).
Czas wybierania procesów przez planistę CFS jest zawsze krótszy niż dla planisty O(1).
Dla procesów z priorytetem równym 0 czas wirtualny jest równy czasowi fizycznemu.
Dla procesów z priorytetem równym 0 czas wirtualny jest równy czasowi fizycznemu.
Czas wirtualny procesu nie zależy od jego wagi.
Czas wirtualny procesu nie zależy od jego wagi.
Kolejka procesów gotowych w planisty CFS jest zaimplementowana w postaci drzewa czerwono-czarnego.
Kolejka procesów gotowych w planisty CFS jest zaimplementowana w postaci drzewa czerwono-czarnego.
Rygiel pętlowy R-W może być zajęty przez więcej niż jednego pisarza w danym momencie.
Rygiel pętlowy R-W może być zajęty przez więcej niż jednego pisarza w danym momencie.
Semafory mogą być przetrzymywane przez wątki, które już przetrzymują rygle pętlowe.
Semafory mogą być przetrzymywane przez wątki, które już przetrzymują rygle pętlowe.
Blokady sekwencyjne pozwalają ustalić, czy operacja odczytu została przepleciona z operacją zapisu.
Blokady sekwencyjne pozwalają ustalić, czy operacja odczytu została przepleciona z operacją zapisu.
Blokada BKL jest blokadą drobnoziarnistą i może być używana w kontekście procesu.
Blokada BKL jest blokadą drobnoziarnistą i może być używana w kontekście procesu.
Rygle pętlowe są wykorzystywane w systemach jednoprocesorowych, które nie wywłaszczają wątków.
Rygle pętlowe są wykorzystywane w systemach jednoprocesorowych, które nie wywłaszczają wątków.
Dodawanie nowych wywołań systemowych jest zalecane przez twórców jądra jako sposób na dodawanie nowej funkcjonalności.
Dodawanie nowych wywołań systemowych jest zalecane przez twórców jądra jako sposób na dodawanie nowej funkcjonalności.
Każde wywołanie systemowe w Linuksie 2.6 zwraca wartość typu 'long'.
Każde wywołanie systemowe w Linuksie 2.6 zwraca wartość typu 'long'.
Rygiel pętlowy R-W jest rekurencyjny, co pozwala na ponowne zajmowanie go przez tego samego czytelnika.
Rygiel pętlowy R-W jest rekurencyjny, co pozwala na ponowne zajmowanie go przez tego samego czytelnika.
Struktura bio reprezentuje operacje wejścia-wyjścia w trakcie ich trwania.
Struktura bio reprezentuje operacje wejścia-wyjścia w trakcie ich trwania.
Wątki jądra mają własną sekcję tekstu.
Wątki jądra mają własną sekcję tekstu.
Deskryptory procesów są połączone w listę jednokierunkową.
Deskryptory procesów są połączone w listę jednokierunkową.
Struktura thread_struct jest deskryptorem procesu.
Struktura thread_struct jest deskryptorem procesu.
Obiekt dentry w stanie używany trwa stale powiązany z obiektem i-węzła.
Obiekt dentry w stanie używany trwa stale powiązany z obiektem i-węzła.
Urządzenia blokowe mają dostęp sekwencyjny.
Urządzenia blokowe mają dostęp sekwencyjny.
Obiekt dentry w stanie ujemnym nie jest powiązany z żadnym obiektem i-węzła.
Obiekt dentry w stanie ujemnym nie jest powiązany z żadnym obiektem i-węzła.
W systemach zgodnych z Uniksem, urządzenia są traktowane jak zwykłe pliki.
W systemach zgodnych z Uniksem, urządzenia są traktowane jak zwykłe pliki.
Linux jest rygorystycznym systemem czasu rzeczywistego.
Linux jest rygorystycznym systemem czasu rzeczywistego.
Czerwono-czarne drzewo jest główną strukturą planisty CFS w Linuksie.
Czerwono-czarne drzewo jest główną strukturą planisty CFS w Linuksie.
Mechanizm kolejek prac zastąpił mechanizm dolnych połówek zwany 'kolejkami zadań'.
Mechanizm kolejek prac zastąpił mechanizm dolnych połówek zwany 'kolejkami zadań'.
Wszystkie czynności odroczone w ramach kolejek prac są wykonywane równocześnie w kontekście przerwania.
Wszystkie czynności odroczone w ramach kolejek prac są wykonywane równocześnie w kontekście przerwania.
Jądro systemu Linux posiada funkcję do opróżnienia domyślnej kolejki prac.
Jądro systemu Linux posiada funkcję do opróżnienia domyślnej kolejki prac.
Wysoki priorytet statyczny w Linuxie oznacza krótki kwant czasu dla procesora.
Wysoki priorytet statyczny w Linuxie oznacza krótki kwant czasu dla procesora.
Kolejki prac pozwalają na określenie czasu, po upływie którego funkcja może się rozpocząć.
Kolejki prac pozwalają na określenie czasu, po upływie którego funkcja może się rozpocząć.
Gdy w jądrze tworzona jest nowa kolejka prac, automatycznie nie jest tworzony nowy wątek roboczy.
Gdy w jądrze tworzona jest nowa kolejka prac, automatycznie nie jest tworzony nowy wątek roboczy.
Study Notes
Planista CFS
- Priorytety procesów w planisty CFS stały się prawie niezmienne, co pozwala na określenie ich wagi.
- Klasa SCHED_BATCH jest niskopriorytetowa i nie wykorzystuje algorytmu rotacyjnego.
- Waga procesu jest obliczana poprzez mnożenie lub dzielenie wartości 1024 przez potęgi liczby 1,25.
- Zegar wirtualny nie jest implementowany w jądrze Linuksa, a czas fizyczny mierzony jest z dokładnością nanosekundową.
- Czas wirtualny procesu zależy od jego wagi, a procesy z priorytetem 0 mają czas wirtualny równy czasowi fizycznemu.
- Planista CFS w porównaniu do O(1) wykonuje dłużej operacje szeregowania ze względu na budowę kolejki procesów gotowych.
Dolne Połówki w Linuksie 3.0 i Nowszych
- Całkowita liczba przerwań programowych ograniczona do 32, a są one alokowane statycznie.
- Tasklety, będące dolnymi połówkami, są wykonywane w kontekście przerwania, lecz nie są dostępne w kontekście procesu.
- Kolejki prac pozwalają na określenie minimalnego czasu działania czynności.
- Możliwość stworzenia kolejek prac, które będą obsługiwane na wieloprocesorowych platformach przez pojedynczy wątek roboczy.
Synchronizacja w Jądrach Linuksa 2.6
- Wątek przetrzymujący semafor nie może równocześnie przetrzymywać rygla pętlowego.
- Blokady sekwencyjne są stosowane do wykrywania przeplotu operacji odczytu i zapisu.
- Blokada BKL jest gruboziarnista i rekurencyjna, jednak nie jest zalecana jako stałe rozwiązanie.
- Rygle pętlowe nie są stosowane w systemach jednoprocesorowych oraz w przypadku, gdy wątki nie są wywłaszczane.
Wywołania Systemowe w Linuksie 2.6
- Dodawanie nowych wywołań systemowych nie jest zalecane; każde wywołanie zwraca wartość typu "long".
- Deskryptor procesu przechowywany w strukturze
struct thread_info
w celu zaoszczędzenia miejsca na stosie. - VFS oparty na modelu obiektowym, gdzie obiekty dentry mogą przyjmować trzy stany: używany, nieużywany i ujemny.
Struktura Bio i Urządzenia
- Struktura bio reprezentuje operacje wejścia-wyjścia w trakcie ich trwania.
- Wątki jądra nie mają własnych sekcji tekstu, a deskryptory procesów tworzą dwukierunkową listę.
- Urządzenia znakowe są obsługiwane sekwencyjnie, a nie są to zwykłe pliki, lecz pliki specjalne.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Quiz ten dotyczy struktur jądra Linuksa przed wersją 2.6. Skupia się na przechowywaniu deskryptorów procesów oraz zmianach w organizacji pamięci jądra. Wykorzystaj swoją wiedzę na temat tych kluczowych pojęć w tej dziedzinie.