06_Pr_senztag_part1_Z Flashcards

1
Q

Was bieten Betriebssysteme in Form von System Calls an?

A

Betriebssysteme bieten verschiedene Funktionen und Konzepte in Form von System Calls an. Diese sind meist in C implementiert und werden in Programmbibliotheken gekapselt, um die Nutzung zu vereinfachen. Andere Programmiersprachen können diese Dienste über sogenannte Language Bindings nutzen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Was ist ein Language Binding?

A

Ein Language Binding ist eine API, die es einer Programmiersprache erlaubt, eine fremde Bibliothek oder einen Betriebssystemdienst zu nutzen. Zum Beispiel verwendet Python das Modul subprocess, um auf Systemprozesse zuzugreifen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Wie werden Prozesse und Threads in Python erstellt?

A
  • Prozesse: Mit dem subprocess Modul. - Threads: Mit dem threading Modul.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Wie werden Prozesse und Threads in C++ erstellt?

A
  • Prozesse: Mit fork() und exec(). - Threads: Mit der std::thread Klasse (seit C++11).
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Welche Synchronisationsmechanismen bietet Python?

A
  • Mutex: threading.Lock. - Condition Variable: threading.Condition. - Semaphore: threading.Semaphore. - Barrier: threading.Barrier. - Shared Memory: multiprocessing.shared_memory.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Welche Synchronisationsmechanismen bietet C++?

A
  • Mutex: std::mutex Klasse. - Condition Variable: std::condition_variable Klasse. - Semaphore: std::counting_semaphore (seit C++20). - Barrier: std::barrier (seit C++20).
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Was ist der Unterschied zwischen einem monolithischen Kernel und einem modularen Kernel?

A
  • Monolithischer Kernel: Alle Gerätetreiber und Dateisysteme sind in einem einzigen Kernelimage enthalten. Vorteil: Performant, da keine Kontextwechsel nötig sind. Nachteil: Fehleranfällig, da ein Fehler zum Absturz des gesamten Systems führen kann. - Modularer Kernel: Kernelbestandteile und Treiber sind als separate Module verfügbar, die zur Laufzeit geladen werden können. Vorteile: Geringerer Hauptspeicherbedarf und verbesserte Konfigurierbarkeit.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Wo werden Kernelmodule gespeichert und welche Befehle sind relevant für deren Verwaltung?

A

Kernelmodule werden in /lib/modules/ gespeichert. Relevante Befehle sind: - lsmod: Listet alle geladenen Module auf. - insmod/modprobe: Lädt ein Modul. - rmmod/modprobe -r: Entfernt ein Modul. - modinfo: Zeigt Informationen über ein Modul an. - depmod: Analysiert Abhängigkeiten zwischen Modulen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Was bedeutet das UNIX Paradigma “Everything is a file”?

A

Das UNIX Paradigma “Everything is a file” bedeutet, dass Hardware-Geräte als Dateien abstrahiert werden. Gerätedateien befinden sich normalerweise im Verzeichnis /dev und es gibt eine Unterscheidung in blockorientierte Geräte (z.B. Festplatten) und zeichenorientierte Geräte (z.B. Webcam).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Wie werden Gerätedateien unter UNIX erstellt?

A

Gerätedateien werden nicht automatisch erzeugt und müssen vom Benutzer (häufig durch Skripte wie udev) erstellt werden. Der Befehl zur Erstellung lautet: mknod [OPTION]... NAME TYPE [MAJOR MINOR].

How well did you know this?
1
Not at all
2
3
4
5
Perfectly