Podcast
Questions and Answers
Jakie zadania wykonuje jądro systemu w Linuxie?
Jakie zadania wykonuje jądro systemu w Linuxie?
- Uruchamia aplikacje użytkownika.
- Synchronizuje dane między pamięcią RAM a kartą SD.
- Zarządza procesami i zabezpiecza dostęp do sprzętu. (correct)
- Zarządza plikami tymczasowymi.
Co znajduje się w katalogu /data w systemie Android?
Co znajduje się w katalogu /data w systemie Android?
- Aplikacje systemowe.
- Pliki tymczasowe.
- Pliki konfiguracyjne systemu.
- Dane i pliki konfiguracyjne użytkownika. (correct)
W której wersji Androida wprowadzono hibernację aplikacji?
W której wersji Androida wprowadzono hibernację aplikacji?
- W wersji 12. (correct)
- W wersji 10.
- W wersji 11.
- W wersji 9.
Jakie uprawnienia wprowadzono w Androidzie wersji 11?
Jakie uprawnienia wprowadzono w Androidzie wersji 11?
Jakie informacje zawiera i-węzeł obiektu zapisanego w systemie plików?
Jakie informacje zawiera i-węzeł obiektu zapisanego w systemie plików?
Jakie metody journallingu są dostępne w systemie ext3?
Jakie metody journallingu są dostępne w systemie ext3?
Który z systemów plików umożliwia operowanie na większej liczbie bloków, co zwiększa wydajność operacji dyskowych?
Który z systemów plików umożliwia operowanie na większej liczbie bloków, co zwiększa wydajność operacji dyskowych?
Jakie jest maksymalne rozmiar pliku w systemie ext4?
Jakie jest maksymalne rozmiar pliku w systemie ext4?
Jakie elementy zawiera zapisany katalog w systemie plików?
Jakie elementy zawiera zapisany katalog w systemie plików?
Co się dzieje z rekordami w katalogach, gdy krótkie wpisy są usuwane?
Co się dzieje z rekordami w katalogach, gdy krótkie wpisy są usuwane?
Jakie pliki konfiguracyjne są używane do montowania systemów plików w Linuxie?
Jakie pliki konfiguracyjne są używane do montowania systemów plików w Linuxie?
Który z systemów plików ma najwyższą zredukowaną fragmentację?
Który z systemów plików ma najwyższą zredukowaną fragmentację?
Jakie jest typowe zakończenie zadania w systemie hard real-time?
Jakie jest typowe zakończenie zadania w systemie hard real-time?
Który z poniższych systemów jest przykładem desktop lub serwer RTOS?
Który z poniższych systemów jest przykładem desktop lub serwer RTOS?
Jaką główną funkcję pełni planista w systemie operacyjnym?
Jaką główną funkcję pełni planista w systemie operacyjnym?
Jakie są wady systemu blokowalnych zadań?
Jakie są wady systemu blokowalnych zadań?
Co dzieje się w systemie nieblokowalnych zadań, gdy pojawia się zadanie o wyższym priorytecie?
Co dzieje się w systemie nieblokowalnych zadań, gdy pojawia się zadanie o wyższym priorytecie?
Jakie kryteria są stosowane do priorytetyzacji zadań w systemach czasu rzeczywistego?
Jakie kryteria są stosowane do priorytetyzacji zadań w systemach czasu rzeczywistego?
Jakie zadania mogą przerwać wykonanie zadania o niskim priorytecie w systemach blokowalnych?
Jakie zadania mogą przerwać wykonanie zadania o niskim priorytecie w systemach blokowalnych?
Jakie zadania realizuje mikrojądro w systemie operacyjnym?
Jakie zadania realizuje mikrojądro w systemie operacyjnym?
Które z poniższych stwierdzeń na temat zalet mikrojądra jest prawdziwe?
Które z poniższych stwierdzeń na temat zalet mikrojądra jest prawdziwe?
Co się dzieje, gdy proces przechodzi z trybu jądra do trybu użytkownika?
Co się dzieje, gdy proces przechodzi z trybu jądra do trybu użytkownika?
Jakie są główne wady jądra monolitycznego?
Jakie są główne wady jądra monolitycznego?
W jakim stanie znajduje się proces, który został utworzony, ale jeszcze nie rozpoczął działania?
W jakim stanie znajduje się proces, który został utworzony, ale jeszcze nie rozpoczął działania?
Czym zajmują się serwery w architekturze mikrojądra?
Czym zajmują się serwery w architekturze mikrojądra?
Jakie ryzyko związane jest z działaniem sterowników w trybie jądra?
Jakie ryzyko związane jest z działaniem sterowników w trybie jądra?
Jakie sygnały są używane do zamykania procesu?
Jakie sygnały są używane do zamykania procesu?
Jakie funkcje komunikacyjne zapewnia mechanizm IPC w mikrojądrze?
Jakie funkcje komunikacyjne zapewnia mechanizm IPC w mikrojądrze?
Co reprezentuje każde urządzenie w systemie Linux?
Co reprezentuje każde urządzenie w systemie Linux?
Jakie są korzyści z modularnej architektury mikrojądra?
Jakie są korzyści z modularnej architektury mikrojądra?
Gdzie można zmieniać parametry sterowników urządzeń w systemie Linux?
Gdzie można zmieniać parametry sterowników urządzeń w systemie Linux?
Jak mikrojądro wpływa na bezpieczeństwo systemu operacyjnego?
Jak mikrojądro wpływa na bezpieczeństwo systemu operacyjnego?
Jakie dane z myszki są przekazywane przez podsystem wejścia?
Jakie dane z myszki są przekazywane przez podsystem wejścia?
Który z wymienionych sygnałów nie jest używany do kończenia działania procesu?
Który z wymienionych sygnałów nie jest używany do kończenia działania procesu?
W którym katalogu znajdują się urządzenia blokowe w systemie Linux?
W którym katalogu znajdują się urządzenia blokowe w systemie Linux?
Czym różni się obsługa przerwań od pełnego multitaskingu?
Czym różni się obsługa przerwań od pełnego multitaskingu?
Jakie problemy mogą wystąpić, gdy event-handler się zawiesi w systemach wbudowanych bez preempcji?
Jakie problemy mogą wystąpić, gdy event-handler się zawiesi w systemach wbudowanych bez preempcji?
Co może zapobiec głodzeniu innych zadań w systemie obsługującym przerwania?
Co może zapobiec głodzeniu innych zadań w systemie obsługującym przerwania?
Jakie konsekwencje niesie za sobą przepełnienie stosu w systemach wbudowanych?
Jakie konsekwencje niesie za sobą przepełnienie stosu w systemach wbudowanych?
Jak można zminimalizować ilość pracy wykonywanej w obsłudze przerwań?
Jak można zminimalizować ilość pracy wykonywanej w obsłudze przerwań?
Jakie zjawisko występuje, gdy przerwanie o niskim priorytecie się zawiesi w systemach z preempcją?
Jakie zjawisko występuje, gdy przerwanie o niskim priorytecie się zawiesi w systemach z preempcją?
Jakie działania można podjąć, aby poprawić obsługę przerwań?
Jakie działania można podjąć, aby poprawić obsługę przerwań?
Jakie są skutki działania pętli nieskończonej w event-handlerze?
Jakie są skutki działania pętli nieskończonej w event-handlerze?
Flashcards
Multitasking a przerwania
Multitasking a przerwania
Mechanizm, który pozwala na wykonywanie różnych zadań w sposób sekwencyjny, gdy jedno zadanie jest wykonywane w całości, zanim rozpocznie się kolejne.
Przerwanie
Przerwanie
Zdarzenie, które wywołuje wykonanie funkcji obsługi, np. osiągnięcie wartości przez zegar.
Obsługa przerwania
Obsługa przerwania
Funkcja, która jest wywoływana przez przerwanie, aby wykonać specjalne działania.
Zawieszenie
Zawieszenie
Stan systemu lub programu, gdy procesor nie może prawidłowo wykonywać swoich zadań.
Signup and view all the flashcards
Brak preempcji
Brak preempcji
Przerwania nie mogą przerywać siebie nawzajem. Przerwanie trwa do zakończenia, zanim inne przerwanie zostanie obsłużone.
Signup and view all the flashcards
Preempcja
Preempcja
Przerwania o wyższym priorytecie mogą przerywać przerwania o niższym priorytecie.
Signup and view all the flashcards
Stos (stack)
Stos (stack)
Ilość dostępnej pamięci na stosie.
Signup and view all the flashcards
Przepełnienie stosu
Przepełnienie stosu
Brak wystarczającej pamięci na stosie, co może prowadzić do awarii.
Signup and view all the flashcards
Wbudowane RTOS
Wbudowane RTOS
Systemy czasu rzeczywistego wbudowane w urządzenia, np. w samochodach czy maszynach. Charakteryzują się szybkim czasem odpowiedzi, mniejszym zapotrzebowaniem na zasoby i są często odpowiedzialne za bezpieczeństwo.
Signup and view all the flashcards
Desktop lub serwer RTOS
Desktop lub serwer RTOS
Systemy czasu rzeczywistego wykorzystujące komputery stacjonarne lub serwery. Zazwyczaj nie wymagają tak szybkiego czasu odpowiedzi, jak systemy wbudowane.
Signup and view all the flashcards
Planista (task scheduler)
Planista (task scheduler)
Element systemu operacyjnego odpowiedzialny za decydowanie o tym, które zadanie ma być wykonywane w danej chwili.
Signup and view all the flashcards
Zadanie (ang. Task)
Zadanie (ang. Task)
Zdarzenie, z którego składa się program. Przykładem są sygnały wejściowe/wyjściowe, odliczanie zegara lub wykonywanie poleceń.
Signup and view all the flashcards
Algorytm szeregowania (scheduling algorithm)
Algorytm szeregowania (scheduling algorithm)
Algorytm, na którym działa planista, decydujący o kolejności wykonywania zadań.
Signup and view all the flashcards
Podział czasu procesora (time-sharing)
Podział czasu procesora (time-sharing)
Proces przydzielania czasu procesora do różnych zadań.
Signup and view all the flashcards
Priorytetyzacja (scheduling algorithm)
Priorytetyzacja (scheduling algorithm)
Przydzielanie priorytetu zadaniom, dzięki czemu ważne zadania są realizowane szybciej.
Signup and view all the flashcards
System nieblokowalnych zadań
System nieblokowalnych zadań
System, w którym zadanie o wyższym priorytecie może natychmiast przerwać zadanie o niższym priorytecie.
Signup and view all the flashcards
System blokowalnych zadań
System blokowalnych zadań
System, w którym zadanie o wyższym priorytecie musi poczekać, aż zadanie o niższym priorytecie zakończy aktualnie wykonywany fragment.
Signup and view all the flashcards
Prostota jądra monolitycznego
Prostota jądra monolitycznego
Prostota implementacji wynika z jednorodnego kodu jądra, co ułatwia tworzenie podstawowych funkcji systemowych.
Signup and view all the flashcards
Szeroka kompatybilność jądra monolitycznego
Szeroka kompatybilność jądra monolitycznego
Większość sterowników działa w przestrzeni jądra, co usprawnia interakcję z urządzeniami.
Signup and view all the flashcards
Brak izolacji w jądrze monolitycznym
Brak izolacji w jądrze monolitycznym
Błędy w sterownikach mogą prowadzić do awarii całego systemu, ponieważ nie ma izolacji między komponentami jądra.
Signup and view all the flashcards
Trudność w modyfikacji jądra monolitycznego
Trudność w modyfikacji jądra monolitycznego
Każda zmiana w jądrze wymaga rekompilacji całego kodu jądra, co ogranicza elastyczność.
Signup and view all the flashcards
Zagrożenie stabilności w jądrze monolitycznym
Zagrożenie stabilności w jądrze monolitycznym
Sterowniki działające w jądrze mogą być źródłem problemów, jeśli są niepoprawnie zaimplementowane, co wpływa na stabilność systemu.
Signup and view all the flashcards
Mikrojądro - definicja
Mikrojądro - definicja
Mikrojądro realizuje tylko podstawowe funkcje systemowe w trybie jądra, a resztę funkcji, np. obsługę urządzeń, obsługuje w trybie użytkownika za pomocą serwerów.
Signup and view all the flashcards
Serwery w mikrojądrze
Serwery w mikrojądrze
Serwery, działające w trybie użytkownika, rozszerzają funkcjonalność mikrojądra poprzez obsługę zadań takich jak zarządzanie plikami czy obsługa urządzeń.
Signup and view all the flashcards
Komunikacja w mikrojądrze (IPC)
Komunikacja w mikrojądrze (IPC)
Komunikacja między procesami (IPC) jest kluczowym mechanizmem komunikacji w mikrojądrze, umożliwiającym wymianę danych między serwerami, aplikacjami i mikrojądrem.
Signup and view all the flashcards
Jądro Linuxa
Jądro Linuxa
Jądro systemu Linux, które odpowiada za komunikację ze sprzętem, zarządzanie procesami i zabezpieczenie dostępu do poszczególnych części systemu.
Signup and view all the flashcards
Biblioteki
Biblioteki
Programy, które są niezbędne do prawidłowego działania systemu Linux i Androida.
Signup and view all the flashcards
Dalvik
Dalvik
Wirtualna maszyna używana w Androidzie. Zapewnia jednolite API dla programów i dostęp do sprzętu i usług.
Signup and view all the flashcards
Partycja /system
Partycja /system
Pierwsza partycja w Androidzie, która zawiera system operacyjny, pliki konfiguracyjne i część aplikacji.
Signup and view all the flashcards
Katalog /data
Katalog /data
Katalog w Androidzie, który przechowuje wszystkie ustawienia aplikacji i dane użytkownika. Zawsze dostępny do odczytu i zapisu.
Signup and view all the flashcards
Przełączanie trybu jądra (kernel mode) na tryb użytkownika (user mode)
Przełączanie trybu jądra (kernel mode) na tryb użytkownika (user mode)
Proces przechodzi z trybu jądra (kernel mode) do trybu użytkownika (user mode) po zakończeniu wywołania systemowego.
Signup and view all the flashcards
Stan "Created"
Stan "Created"
Proces został utworzony, ale jeszcze nie rozpoczął działania. Jest w fazie inicjalizacji.
Signup and view all the flashcards
Stan "Zombie"
Stan "Zombie"
Proces zakończył działanie, ale jego wpis w tablicy procesów wciąż istnieje, ponieważ rodzic jeszcze nie odebrał statusu zakończenia procesu. Proces zombie nie zużywa zasobów systemowych (oprócz wpisu w tablicy procesów).
Signup and view all the flashcards
Sygnał SIGKILL
Sygnał SIGKILL
Zamyka proces.
Signup and view all the flashcards
Sygnał SIGHUP
Sygnał SIGHUP
Zawieszenie procesu (kończenie działania procesu).
Signup and view all the flashcards
Sygnał SIGTERM
Sygnał SIGTERM
Zakończenie działania programu. Proces otrzymuje szansę na uporządkowane zakończenie.
Signup and view all the flashcards
Sygnał SIGSTOP
Sygnał SIGSTOP
Zatrzymuje proces - podobnie jak SIGKILL.
Signup and view all the flashcards
Sygnał SIGCONT
Sygnał SIGCONT
Uruchamia (restartuje) proces.
Signup and view all the flashcards
I-węzeł
I-węzeł
Przechowuje atrybuty pliku, takie jak prawa dostępu, właściciel, data modyfikacji, rozmiar i dowiązania. Numer i-węzła identyfikuje plik w systemie plików.
Signup and view all the flashcards
Katalogi
Katalogi
Pliki rekordów zmiennej długości, organizujące pliki i katalogi w systemie. Zawierają nazwę pliku i numer jego i-węzła, umożliwiając nawigację po systemie plików.
Signup and view all the flashcards
Dziennik (journal) - ext3 i ext4
Dziennik (journal) - ext3 i ext4
Główny mechanizm używany w systemach plików ext3 i ext4 do zapewnienia integralności danych. Zapamiętuje zmiany, które są wykonywane w systemie plików, gwarantując, że system może odzyskać swoje dane, nawet w przypadku awarii.
Signup and view all the flashcards
Extents - ext4
Extents - ext4
Metoda zarządzania przestrzenią dyskową w systemie plików ext4, która pozwala na przydzielanie większych bloków danych, zwiększając wydajność operacji dyskowych.
Signup and view all the flashcards
Opóźnione alokowanie - ext4
Opóźnione alokowanie - ext4
Funkcja systemu plików ext4, która pozwala na opóźnienie przydzielania przestrzeni dyskowej do momentu, kiedy będzie rzeczywiście potrzebna. Zwiększa wydajność i oszczędza miejsce na dysku.
Signup and view all the flashcards
Plik /etc/fstab
Plik /etc/fstab
Plik konfiguracyjny, który definiuje sposób montowania systemów plików w systemie Linux. Zawiera informacje o lokalizacji urządzenia, punkcie montowania, typie systemu plików i opcjach montowania.
Signup and view all the flashcards
Plik /etc/mtab
Plik /etc/mtab
Plik zawierający listę aktualnie zamontowanych systemów plików w systemie Linux. Jest aktualizowany automatycznie i zawiera informacje o zamontowanych systemach plików.
Signup and view all the flashcards
Montowanie FS w Linuksie
Montowanie FS w Linuksie
Proces łączenia systemu plików z systemem operacyjnym. Umożliwia dostęp do danych na dysku.
Signup and view all the flashcardsStudy Notes
Systemy Operacyjne - Podstawy
- System operacyjny to warstwa abstrakcji między użytkownikiem a sprzętem komputera.
- System operacyjny zarządza zasobami komputera (CPU, pamięć, urządzenia zewnętrzne).
- System operacyjny pozwala na współbieżne wykonywanie wielu programów.
- System operacyjny podnosi efektywność programowania poprzez biblioteki.
- Najwcześniejsze systemy operacyjne były dedykowane pojedynczemu użytkownikowi.
- Współczesne systemy operacyjne pozwalają na używanie komputera przez wielu użytkowników.
- Systemy operacyjne są używane niemal w każdym urządzeniu elektronicznym (np. smartfony, komputery, serwery).
Systemy Operacyjne - Rodzaje
- Superkomputery, mainframe'y i systemy rozproszone: obliczenia naukowe, modelowanie numeryczne
- Serwery: usługi internetowe, bazy danych, DNS, VPN
- Desktopy: komputery osobiste z interfejsem graficznym (GUI)
- Urządzenia przenośne (smartfony, tablety, ...) : systemy operacyjne energooszczędne
- Systemy czasu rzeczywistego: reakcja w określonym czasie (np. sterowanie pojazdami, urządzenia medyczne)
- Systemy wbudowane: integralna część urządzenia (np. ATM, samochody)
Systemy Operacyjne - Jądra
- Jądro monolityczne: wszystkie funkcje w jednym module jądra (np. Linux, niektóre wersje Unix) -Wysoka wydajność, ale trudności w modernizacji i rozwijaniu nowych funkcji.
- Mikrojądro: podstawowe funkcje w jądrze, pozostałe w oddzielnych procesach (np. niektóre RTOS) -Większa stabilność, ale potencjalnie mniejszą wydajność.
- Jądro hybrydowe: łączy cechy monolitycznego i mikrojądra (np. niektóre wersje Windows) -Wykorzystuje silne strony obu modeli.
Systemy Operacyjne - Multitasking
- Kooperacyjny multitasking: zadania decydują kiedy oddać procesor (mniej niezawodny).
- Wymuszony multitasking: system operacyjny decyduje kiedy przenieść kontrolę nad procesorem.
- Możliwość współbieżności, nawet na systemach z jednym rdzeniem procesora.
Systemy Operacyjne - Czas Rzeczywisty (Real-time Systems)
- Hard real-time: reakcja musi nastąpić przed określonym terminem, w przeciwnym razie skutki mogą być katastrofalne (np. sterowanie pojazdami)
- Firm real-time: reakcja musi nastąpić przed określonym terminem, ale brak reakcji nie jest śmiertelny dla systemu (np. systemy transakcji giełdowych)
- Soft real-time: czasowa niepewność jest akceptowalna, ale pogorszenie jakości jest możliwe (np. gry komputerowe).
System Operacyjny Linux - Plikowe Systemy
- System plików (filesystem): hierarchiczny układ plików i katalogów na dysku twardym.
- FAT: prosty, ale mniej wydajny system plików.
- NTFS: bardziej zaawansowany system plików z funkcjami bezpieczeństwa.
- ext4: popularny system plików w Linuksie, bardziej efektywny od wcześniejszych systemów ext2, ext3.
- Zawierają informacje o nazwach plików, ich atrybutach, lokacjach na dysku.
System Operacyjny Android
- Zbudowany na jądrze Linuxa, z wieloma modyfikacjami.
- Główna role odgrywa wirtualna maszyna Dalvik (dawniej), a obecnie ART.
- Aplikacje pisane w Javie/Kotlinie, a niektóre warstwy w C++.
- Małe API (Application Programming Interface) → łatwiejsze tworzenie aplikacji.
- Wydajny system zarządzania pamięcią i zasobami z wykorzystaniem procesów.
Obsługa Urządzeń w Linuxie
- Linux traktuje wszystkie urządzenia jako pliki w katalogu /dev.
- Za pomocą podstawowych funkcji systemu plików (np. open, read, write, close) można uzyskać dostęp do urządzeń.
- /dev/input/eventX – dostęp do zdarzeń klawiatury, myszki.
Shell w Linuxie
- Interpretator poleceń, służący do komunikacji z systemem operacyjnym.
- Typy (np. bash, zsh, fish).
- Przekierowywanie wejścia/wyjścia.
- Aliasy i funkcje.
- Komendy i pliki konfiguracyjne.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.