From 33f186e97f1400849f54ef1c0f8b1ced85c4510c Mon Sep 17 00:00:00 2001
From: er04yjek <yannick.vollmer@payanoma.de>
Date: Thu, 1 Feb 2024 12:20:31 +0100
Subject: [PATCH] =?UTF-8?q?Fragen=20aus=20dem=20ss2021=20hinzugef=C3=BCgt,?=
 =?UTF-8?q?=20Erkl=C3=A4rungen=20teilweise=20unausf=C3=BChrlich?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ss21.q | 81 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 81 insertions(+)
 create mode 100644 ss21.q

diff --git a/ss21.q b/ss21.q
new file mode 100644
index 0000000..91ccf28
--- /dev/null
+++ b/ss21.q
@@ -0,0 +1,81 @@
+0 Welche der folgenden Aussagen über Schedulingverfahren ist richtig? (2021-07)
+- Bei kooperativem Scheduling sind Prozessumschaltungen unmöglich, wenn ein Prozess in einer Endlosschleife läuft. Selbst wenn er bei jedem Schleifendurchlauf einen Systemaufruf macht.
+Nein, laufender Prozess gibt CPU mit Systemaufruf ab.
+- Online-Schedulingverfahren sind für den Einsatz in Rechnern ohne Netzwerkschnittstelle ungeeignet.
+Nein.
++ Verdrängende Schedulingverfahren können nur mit Hilfe von Unterbrechungen realisiert werden.
+Ja.
+- Deterministische Schedulingverfahren sind nur in der Theorie relevant, da die genaue Länge der CPU-Stöße nie vorhergesagt werden kann.
+Nein.
+.
+
+0 Welche der folgenden Aussagen zum Thema Prozesse und Threads ist richtig? (2022-07)
++ Bei schwergewichtigen Prozessen ist die Schedulingstrategie durch das Betriebssystem vorgegeben.
+Ja.
+- Jeder federgewichtige Prozess (User-Thread) und jeder leichtgewichtige Prozess (Kern-Thread) hat seinen eigenen, geschützten Adressraum.
+Nein, teilen sich einen Adressraum.
+- Bei Blockade eines schwergewichtigen Prozesses werden alle anderen schwergewichtigen Prozesse, die das selbe Progamm ausführen, ebenfalls blockiert.
+Nein, schwergewichtige Prozesse sind unabhängig voneinander, d.h. sie haben einen eigenen Ausführungsfaden.
+- Unabhängig von leichtgewichtigen Prozessen (Kernel-Threads) können federgewichtige Prozesse (User-Threads) Multiprozessoren ausnutzen.
+Nein.
+.
+
+0 Welche der folgenden Aussagen zum Thema RAID ist richtig? (2022-07)
++ Bei RAID 5 werden alle im Verbund beteiligten Platten gleichmäßig beansprucht.
+Ja, da die Paritätsbits auf alle Platten aufgeteilt sind.
+- Bei RAID 0 können nach Ausfall einer der beteiligten Platten die Daten durch die Information der anderen rekonstruiert werden.
+Nein, wenn eine Platte ausfällt, fällt das System aus.
+- Der Lesedurchsatz eines RAID-Systems mit mehreren Platten ist prinzipbedingt geringer als der Lesedurchsatz einer einzelnen Platte.
+Nein.
+- Bei RAID 4 werden alle im Verbund beteiligten Platten gleichmäßig beansprucht.
+Nein, die Paritätsplatte bei RAID 4 wird mehr beansprucht als die anderen Platten.
+.
+
+0 Für lokale Variablen, Aufrufparameter usw. einer Funktion wird bei vielen Prozessoren ein Stack-Frame angelegt. Welche Aussage ist richtig? (2022-07)
+- Ein Pufferüberlauf eines lokalen Arrays wird immer zu einem Segmentation Fault führen und kann somit keine sicherheitskritischen Auswirkungen haben.
+Nein.
+- Es ist nicht möglich auf lokale automatic-Variablen zuzugreifen, die sich im Stack-Frame einer anderen Funktion befinden.
+Doch, innerhalb eines Threads kann man auf den gesamten Stack zugreifen.
+- Bei rekursiven Funktionsaufrufen kann der Speicher des Stack-Frames in jedem Fall wiederverwendet werden, weil die gleiche Funktion aufgerufen wird.
+Nein, Variablen müssen neu initialisiert werden, bei jedem Funktions-Aufruf -> Stackoverflow
++ Wenn in einem UNIX-Prozess mehrere Threads parallel laufen, benötigt jeder von ihnen einen eigenen Stack.
+Ja.
+.
+
+1 Welche der folgenden Aussagen zu UNIX/Linux-Dateideskriptoren sind korrekt? (2022-07)
+- Ein Dateideskriptor ist eine Verwaltungsstruktur, die auf der Festplatte gespeichert ist und Informationen über Größe, Zugriffsrechte, Änderungsdatum usw. einer Datei enthält.
+Nein, ist prozesslokal gespeichert.
++ Nach dem Aufruf von fork(2) teilen sich die Prozesse die den gemeinsamen Dateideskriptoren zu Grunde liegenden Kernel-Datenstrukturen.
+Ja, definiert von fork(2).
++ Ist das Flag FD_CLOEXEC eines Dateideskriptors gesetzt, dann wird dieser Dateideskriptor geschlossen, sobald der Prozess eine Funktion der exec-Familie aufruft.
+Ja, definiert von FD_CLOEXEC.
++ Ein Dateideskriptor ist eine prozesslokale Integerzahl, die der Prozess zum Zugriff auf eine Datei benutzen kann.
+Ja.
+- Ein Dateideskriptor ist eine Integerzahl, die über gemeinsamen Speicher an einen anderen Prozess übergeben werden kann und von letzterem zum Zugriff auf eine geöffnete Datei verwendet werden kann.
+Nein, ist eine prozesslokale Integerzahl.
++ Auch Netzwerkverbindungen werden über einen Dateideskriptor referenziert.
+Ja.
+- Wird ein Dateideskriptor mittels des dup(2)-Systemaufruf vervielfältigt, können die Zugriffsrechte auf dem resultierendem Deskriptor unabhängig vom ursprünglichen geändert werden.
+Nein.
+- Dateideskriptoren sind Zeiger auf Betriebssystem-interne Strukturen, die von den Systemaufrufen ausgewertet werden, um auf Dateien zuzugreifen.
+Nein, ist eine Integerzahl.
+.
+
+1 Welche der folgenden Aussagen zum Thema persistenter Datenspeicherung sind richtig? (2022-07)
+- Bei verketteter Speicherung dauert der wahlfreie Zugriff auf eine bestimmte Dateiposition immer gleich lang, wenn Cachingeffekte außer Acht gelassen werden.
+Nein, bei Zugriffen, die weiter "hinten" gespeichert sind, könnte es länger dauern.
++ Bei verketteter Speicherung mittels FAT-Ansatz kann die Verkettungsinformation redundant gespeichert werden, um die Fehleranfälligkeit zu reduzieren.
+Ja.
+- Journaling-Dateisysteme sind immun gegen defekte Plattenblöcke.
+Nein.
+- Bei indizierter Speicherung kann es prinzipbedingt nicht zu Verschnitt kommen.
+Doch, es kann zu Verschnitt kommen, da der Speicher in Blöcke unterteilt wird. (Verschnitt: manche Speicherblöcke bei Aufteilung von Daten können nur zum Teil gefüllt werden)
++ Bei kontinuierlicher Speicherung von Daten ist es unter Umständen mit enormem Aufwand verbunden, eine bestehende Datei zu vergrößern.
+Ja, dynamisches Erweitern schwierig.
+- Im Vergleich zu den anderen Verfahren ist bei indizierter Speicherung die Positionierzeit des Festplatten-Armes beim Zugriff auf alle Datenblöcke einer Datei minimal.
+Nein.
++ Journaling-Dateisysteme garantieren, dass auch nach einem Systemausfall alle Metadaten wieder in einen konsistenten Zustand gebracht werden können.
+Ja, mit Hilfe der Log-File.
++ Festplatten eignen sich besser für sequentielle als für wahlfreie Zugriffsmuster.
+Ja, wegen dem Lese-Schreib-Kopf, der Daten, die nebeneinander stehen, schneller lesen kann, als Daten, die an verschiedenen Orten gespeichert sind.
+.
\ No newline at end of file
-- 
GitLab