Podcast
Questions and Answers
Całkowita liczba przerwań programowych w Linuksie jest ograniczona.
Całkowita liczba przerwań programowych w Linuksie jest ograniczona.
True
Przerwania programowe są wykonywane w kontekście przerwania.
Przerwania programowe są wykonywane w kontekście przerwania.
True
Tasklety są wykonywane współbieżnie na platformach wieloprocesorowych.
Tasklety są wykonywane współbieżnie na platformach wieloprocesorowych.
False
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.
Signup and view all the answers
Wątek ksoftirqd obsługuje przerwania programowe oraz tasklety.
Wątek ksoftirqd obsługuje przerwania programowe oraz tasklety.
Signup and view all the answers
Przerwania programowe są alokowane dynamicznie podczas działania systemu.
Przerwania programowe są alokowane dynamicznie podczas działania systemu.
Signup and view all the answers
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.
Signup and view all the answers
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.
Signup and view all the answers
Priorytety procesów w planisty CFS są prawie niezmienne.
Priorytety procesów w planisty CFS są prawie niezmienne.
Signup and view all the answers
Klasa szeregowania SCHED_BATCH jest obsługiwana za pomocą algorytmu rotacyjnego.
Klasa szeregowania SCHED_BATCH jest obsługiwana za pomocą algorytmu rotacyjnego.
Signup and view all the answers
Waga procesu jest odwrotnością wartości jego priorytetu.
Waga procesu jest odwrotnością wartości jego priorytetu.
Signup and view all the answers
Czas fizyczny w planisty CFS jest mierzony z rozdzielczością nanosekundową.
Czas fizyczny w planisty CFS jest mierzony z rozdzielczością nanosekundową.
Signup and view all the answers
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).
Signup and view all the answers
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.
Signup and view all the answers
Czas wirtualny procesu nie zależy od jego wagi.
Czas wirtualny procesu nie zależy od jego wagi.
Signup and view all the answers
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.
Signup and view all the answers
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.
Signup and view all the answers
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.
Signup and view all the answers
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.
Signup and view all the answers
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.
Signup and view all the answers
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.
Signup and view all the answers
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.
Signup and view all the answers
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'.
Signup and view all the answers
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.
Signup and view all the answers
Struktura bio reprezentuje operacje wejścia-wyjścia w trakcie ich trwania.
Struktura bio reprezentuje operacje wejścia-wyjścia w trakcie ich trwania.
Signup and view all the answers
Wątki jądra mają własną sekcję tekstu.
Wątki jądra mają własną sekcję tekstu.
Signup and view all the answers
Deskryptory procesów są połączone w listę jednokierunkową.
Deskryptory procesów są połączone w listę jednokierunkową.
Signup and view all the answers
Struktura thread_struct jest deskryptorem procesu.
Struktura thread_struct jest deskryptorem procesu.
Signup and view all the answers
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.
Signup and view all the answers
Urządzenia blokowe mają dostęp sekwencyjny.
Urządzenia blokowe mają dostęp sekwencyjny.
Signup and view all the answers
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.
Signup and view all the answers
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.
Signup and view all the answers
Linux jest rygorystycznym systemem czasu rzeczywistego.
Linux jest rygorystycznym systemem czasu rzeczywistego.
Signup and view all the answers
Czerwono-czarne drzewo jest główną strukturą planisty CFS w Linuksie.
Czerwono-czarne drzewo jest główną strukturą planisty CFS w Linuksie.
Signup and view all the answers
Mechanizm kolejek prac zastąpił mechanizm dolnych połówek zwany 'kolejkami zadań'.
Mechanizm kolejek prac zastąpił mechanizm dolnych połówek zwany 'kolejkami zadań'.
Signup and view all the answers
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.
Signup and view all the answers
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.
Signup and view all the answers
Wysoki priorytet statyczny w Linuxie oznacza krótki kwant czasu dla procesora.
Wysoki priorytet statyczny w Linuxie oznacza krótki kwant czasu dla procesora.
Signup and view all the answers
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ąć.
Signup and view all the answers
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.
Signup and view all the answers
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.