cabs
Teil 1: Multiple Choice & Wahr/Falsch Fragen zur Speicherarchitektur
Fragen zur dargestellten Pyramide für Speichersysteme
Frage: CPU Register sind laut der Pyramide die schnellsten Speicher in einem Computersystem.
Antwort: Richtig.Frage: Die Höhe, in welcher die Ebenen dargestellt werden, läßt einen Rückschluss auf die Geschwindigkeit des Speichers zu.
Antwort: Richtig.Frage: Die Stufen in der Pyramide stellen auch die Nähe des Speichers zur CPU dar.
Antwort: Richtig.Frage: Zusammenhang: Je breiter die Ebene, desto entfernter von der CPU.
Antwort: Richtig.
Fragen zur Speicherverwaltung
Frage: Die Speicherverwaltung ist eine zentrale Aufgabe des Betriebssystems.
Antwort: Richtig.Frage: Es muss sichergestellt werden, dass Zugriffe auf zugeordnete Prozess-Speicherbereiche untereinander geschützt werden.
Antwort: Richtig.Frage: Es wird sichergestellt, dass so viele unabhängige Programme/Prozesse im Speicher gehalten werden wie notwendig.
Antwort: Richtig.Frage: Managed das Auslagern und Einlagern von Prozessdaten/Prozesscode zwischen Hauptspeicher und Hintergrundspeicher.
Antwort: Richtig.Frage: Eine Anforderung an die Speicherverwaltung ist die effektive Aufteilung und Nutzung des Speichers für das Betriebssystem und Programme/Prozesse.
Antwort: Richtig.Frage: Zur Nutzung für den Speicher werden im Computer Adressen und Adressräume verwendet.
Antwort: Richtig.
Teil 2: Partitionierung und Fragmentierung
Fragen zur Fragmentierung
Frage: Externe Fragmentierung entsteht bei der Zuteilung von Speicherblöcken zu einem Prozess oder Programm.
Antwort: Richtig.Frage: Interne Fragmentierung entsteht bei der Zuteilung von Speicherblöcken zu einem Prozess oder Programm.
Antwort: Richtig.Frage: Durch das stete Starten und Beenden von Programmen wird der Speicher (de)fragmentiert - man spricht auch von einer sogenannten externen (De)fragmentierung.
Antwort: Richtig.Frage: Der Einsatz von dynamischer Partitionierung führt nie zu einer internen Fragmentierung, da die Speicherblöcke auf die Speicheranforderung optimiert sind.
Antwort: Richtig (Die Blöcke passen exakt, dafür entsteht externe Fragmentierung zwischen den Blöcken).Frage: Die Methodik „Next Fit“ ist im Vergleich zu den anderen Methodiken die schnellste, hat aber den Nachteil, dass der Speicherblock am Ende des Speichers schnell fragmentiert.
Antwort: Richtig.Frage: Bei der dynamischen Partitionierung handelt es sich um ein Verfahren, dass komplex und schwierig in der Verwaltung ist.
Antwort: Richtig.
Virtueller Speicher
Frage: Die MMU (Memory Management Unit) unterstützt die CPU bei der Verwaltung von logischem und physischem Speicher.
Antwort: Richtig.Frage: Der Logische Adressraum umfasst alle Speichereinheiten, die im physischen (RAM) und virtuellen (HGS) Speicher gespeichert werden können.
Antwort: Richtig.Frage: Der logische Adressraum ist immer kleiner als der physische Adressraum.
Antwort: Falsch (Der logische Adressraum ist in der Regel viel größer als der physisch verbaute Speicher).Frage: Beim Paging handelt es sich um eine Technik zur Speicherverwaltung, die ein effizientes Relocaten des Prozess-Speichers unterstützt.
Antwort: Richtig.Frage: Pages (Seiten) sind kleine, feste Blöcke an Speicher, die leicht zwischen Hauptspeicher (HS) und Hintergrundspeicher (HGS) herumgeschoben werden können.
Antwort: Richtig.
Teil 2: Offene Fragen zur Speicherverwaltung
Adressen und Adressräume
Frage: Erklären Sie was eine Adresse und ein Adressraum ist? Warum braucht der Computer Adressen?
Antwort: Eine Adresse ist eine eindeutige Identifikationsnummer für eine Speicherstelle (meist ein Byte), während der Adressraum die Gesamtheit aller ansprechbaren Adressen darstellt. Der Computer braucht sie, damit die CPU Daten fehlerfrei finden, abrufen und speichern kann.
Adressen im realen Leben
Frage: Stellen Sie einen Bezug zum realen Leben her – wo benutzen wir noch Adressen und warum?
Antwort: Ähnlich wie bei Hausnummern in einer Stadt nutzen wir Adressen, damit die Post (oder im Computer: die Daten) exakt und ohne Verwechslung beim richtigen Empfänger ankommt.
Hauptaufgaben der Speicherverwaltung
Frage: Was sind die Hauptaufgaben der Speicherverwaltung in modernen PCs? Ist die Speicherverwaltung eine Erfindung der Moderne bei PCs?
Antwort: Sie verwaltet die Zuteilung von Arbeitsspeicher, schützt Programme voreinander und lagert Daten bei Bedarf auf die Festplatte aus. Nein, sie ist keine moderne Erfindung, da schon früher der Bedarf nach mehr Speicher bestand, als physisch vorhanden war.
Bedeutung der Speicherverwaltung
Frage: Wozu benötigt man Speicherverwaltung und was wird im Speicher abgelegt?
Antwort: Sie ermöglicht den sicheren und effizienten Mehrprogrammbetrieb (Multitasking). Im Speicher werden sowohl Benutzerprogramme (Code und Daten) als auch das Betriebssystem abgelegt.
Anforderungen an die Speicherverwaltung
Frage: Welche Anforderungen werden an eine moderne Speicherverwaltung gestellt?
Antwort: Die Kernanforderungen sind Relocation, Protection (Schutz), Sharing (Teilen), Logical Organization und Physical Organization.Frage: Erklären Sie 4 Anforderungen an eine modernen Speicherverwaltung im Detail?
Antwort: Relocation übersetzt logische in physische Adressen; Protection blockiert unerlaubte Zugriffe fremder Prozesse. Sharing erlaubt Prozessen die gemeinsame Nutzung von Code, und Physical Organization übernimmt den Datenaustausch zwischen RAM und Festplatte.
Unterschiede zwischen physikalischer und logischer Organisation
Frage: Worin liegen die Unterschiede zwischen der Physikalischen und Logischen Organisation im Speicher?
Antwort: Die physische Organisation regelt den linearen Datenfluss zwischen dem schnellen RAM und dem langsamen Hintergrundspeicher. Die logische Organisation strukturiert Programme modular in Segmente, wie Code oder Daten, was dem Betriebssystem eine bessere Verwaltung ermöglicht.
Adressraumaufteilung
Frage: Wie wird der Adressraum bei der Belegung aufgeteilt? Welche Bereiche werden angelegt?
Antwort: Der Adressraum eines Programms wird in Bereiche für den ausführbaren Code, Konstanten, Daten (initialisiert/uninitialisiert) sowie in dynamische Bereiche wie Stack und Heap aufgeteilt.
Stack und Heap
Frage: Was ist ein Stack? Was ist ein Heap? Warum wachsen und schrumpfen diese Bereiche?
Antwort: Der Stack speichert lokale Variablen und Rücksprungadressen für Funktionsaufrufe, während der Heap Speicherplatz für dynamisch zur Laufzeit erzeugte Daten bereitstellt. Beide Bereiche wachsen und schrumpfen, weil sich der Speicherbedarf eines Programms während der Ausführung ständig ändert.
Arten der Speicherpartitionierung
Frage: Welche Arten von Speicherpartitionierung können Sie benennen und beschreiben?
Antwort: Bei der statischen Partitionierung wird der Speicher in feste Blöcke unterteilt, bei der dynamischen Partitionierung erhalten Prozesse exakt zugeschnittene Blöcke. Das Buddy-System kombiniert beides, indem es den Speicher schrittweise in Zweierpotenzen aufteilt.
Detailierte Erklärung der statischen Speicherverwaltung
Frage: Erklären Sie im Detail die statische Speicherverwaltung? Erklären Sie auch anhand eines Realweltbeispiels?
Antwort: Der Speicher wird vorab in Blöcke festgelegter Größe geteilt, in die Programme geladen werden, was bei kleinen Programmen zu ungenutztem Platz im Block führt. Beispiel: Ein fest zugewiesener LKW-Parkplatz wird von einem kleinen Smart belegt, wodurch der restliche Platz ungenutzt bleibt.
Methoden der dynamischen Speicherverwaltung
Frage: Erklären Sie mögliche Verfahren, wie bei der dynamischen Speicherverwaltung Speicher zugewiesen wird.
Antwort: Bei First Fit wird die erste ausreichend große Lücke im Speicher belegt, bei Next Fit wird ab der letzten Speicherzuweisung gesucht. Best Fit durchsucht den gesamten Speicher nach der kleinsten passenden Lücke, um möglichst wenig Restplatz zu hinterlassen.
Fragmentierung
Frage: Was bedeutet Fragmentierung im Bezug auf den Speicher? Welche Arten von Fragmentierung gibt es?
Antwort: Fragmentierung bezeichnet Speicherplatz, der verschwendet wird und nicht mehr effektiv genutzt werden kann. Man unterscheidet interne Fragmentierung (ungenutzter Platz innerhalb eines zugeteilten Blocks) und externe Fragmentierung (unnutzbare Lücken zwischen den belegten Blöcken).
Memory Management Unit (MMU)
Frage: Welche Komponente unterstützt uns bei der Speicherverwaltung?
Antwort: Die Memory Management Unit (MMU) ist eine Hardwarekomponente, die die CPU bei der Adressübersetzung und dem Speicherschutz unterstützt.
Bedeutung der Speicherverwaltung
Frage: Warum brauchen wir die Speicherverwaltung? Erklären Sie dieses in Bezug auf den physischen und logischen Adressraum?
Antwort: Da Programme oft einen logischen Adressraum anfordern, der größer als der physisch vorhandene Arbeitsspeicher (RAM) ist, muss die Speicherverwaltung die angeforderten Adressen intelligent auf den physischen Speicher oder Auslagerungsdateien abbilden.
Paging
Frage: Erklären Sie den Begriff "Paging", "Paging Area", "Page" oder "Auslagerungsdatei"?
Antwort: Paging zerteilt den Speicher in gleich große Blöcke ("Pages"), die bei Nichtgebrauch aus dem Arbeitsspeicher auf die Festplatte in die sogenannte "Paging Area" (Auslagerungsdatei) verschoben werden.
Paging-Verfahren
Frage: Welche Verfahren gibt es beim Paging?
Antwort: Es gibt Demand Paging (Seiten werden nur bei Bedarf geladen), Demand Prepaging (Seiten werden vorausschauend in Gruppen geladen) und Look-Ahead-Paging (Erkennung von Mustern beim Seitenabruf).
Ersetzungsstrategien
Frage: Warum benötigt man Ersetzungsstrategien bei der Speicherverwaltung und kennen sie eine Strategie?
Antwort: Wenn der Hauptspeicher voll ist, müssen Ersetzungsstrategien entscheiden, welche Daten auf die Festplatte ausgelagert werden, um Platz für neue Prozesse zu schaffen. Bekannte Strategien sind FIFO (First In First Out) und LRU (Least Recently Used).
Teil 3: Geräteverwaltung und Festplatten
Fragen zu Geräteverwaltung
Frage: Nennen und beschreiben Sie drei Arten von Geräten, welche durch das Betriebssystem verwaltet werden?
Antwort: Zeichenorientierte Geräte (Tastatur, Maus) übertragen Daten zeichenweise, blockorientierte Geräte (Festplatten) lesen/schreiben Daten in festen Blöcken, und sonstige Geräte (Systemuhren) haben spezielle Systemfunktionen ohne reinen Datenstrom.Frage: Welche Aufgabe hat der Gerätetreiber?
Antwort: Er übersetzt die allgemeinen Befehle des Betriebssystems in die spezifischen Steuerbefehle der Hardware. Zudem initialisiert er das Gerät und verarbeitet dessen Fehlermeldungen sowie Interrupts.Frage: Was ist der Unterschied zwischen Polling und Interrupt?
Antwort: Beim Polling fragt die CPU kontinuierlich den Status des Geräts ab und wird dadurch blockiert, während bei einem Interrupt das Gerät die CPU aktiv benachrichtigt, sobald es bereit ist.Frage: Was war der Grund für die Entwicklung von DMA Controllern? Welchen Nutzen haben wir als Benutzer daraus gezogen/gehabt?
Antwort: DMA-Controller wurden entwickelt, um große Datenmengen direkt zwischen Hardware und Arbeitsspeicher zu kopieren, ohne die CPU damit zu belasten. Als Benutzer profitieren wir davon, dass das System auch während großer Dateiübertragungen flüssig und reaktionsschnell bleibt.Frage: Erklären Sie, wie Daten auf einer Festplatte organisiert sind?
Antwort: Die rotierenden Scheiben einer Magnetfestplatte sind in konzentrische Spuren (Tracks) unterteilt, die wiederum in adressierbare Sektoren (Blöcke) und übergreifende Zylinder gegliedert sind.Frage: Warum sollte man bei Solid State Speichermedien von einer Defragmentierung der Daten absehen?
Antwort: Im Gegensatz zu HDDs mit mechanischem Lesekopf greifen SSDs auf alle Speicherzellen elektronisch gleich schnell zu, weshalb Defragmentieren keinen Tempovorteil bringt. Stattdessen schadet es der SSD, da die unnötigen Schreibvorgänge die Lebensdauer der Flash-Zellen verkürzen.
Clustergröße
Frage: Bei unseren Festplatten - speziell bei den mechanischen – müssen wir uns beim Formatieren entscheiden, wie groß die Clustergröße sein soll. Warum muss/kann ich als Benutzer dies beeinflussen? Was für Vor- oder Nachteile habe ich, wenn ich die Clustergröße reduziere oder steigere? Was hat dies mit der Fragmentierung von Festplatten zu tun?
Antwort: Eine kleine Clustergröße spart Platz bei vielen kleinen Dateien, da weniger interner Verschnitt entsteht, während große Cluster das Einlesen großer Dateien auf HDDs beschleunigen, weil der Lesekopf seltener neu positionieren muss. Ist der Cluster jedoch zu groß für die Datei, bleibt der restliche Platz im Cluster ungenutzt (interne Fragmentierung).
Festplattenteilen
Frage: Wie ist eine Festplatte aufgeteilt? Welche Bereiche findet man auf der Festplatte?
Antwort: Eine Festplatte ist typischerweise in einen Bootblock, eine Metadaten-Tabelle, eine BAM (Block Availability Map) und den freien Speicherplatz für Dateien und Verzeichnisse aufgeteilt.Frage: Beschreiben Sie grob, wie eine Festplatte aufgeteilt wird. / Wie ändert sich die Aufteilung bei der Erstellung von Partitionen?
Antwort: Beim Partitionieren wird die Festplatte in logisch getrennte Bereiche (Partitionen) unterteilt, und jede dieser Partitionen erhält eine eigene Metadaten-Tabelle und BAM, geführt von einer zentralen Partitionstabelle im Master Boot Record.Frage: Was ist eine Partition auf einer Festplatte? Welchen Einsatzzweck hat eine Partition auf einer Festplatte?
Antwort: Eine Partition ist ein abgetrennter logischer Bereich auf einer Festplatte, der sich wie ein eigenständiges Laufwerk verhält. Sie wird genutzt, um z.B. das Betriebssystem sicher von privaten Nutzerdaten zu trennen oder verschiedene Dateisysteme auf einer Platte zu betreiben.
Unterschiede zwischen Dateien und Verzeichnissen
Frage: Was ist der Unterschied zwischen Dateien und Verzeichnissen? Warum benötigt es Verzeichnisse?
Antwort: Eine Datei beinhaltet die eigentlichen Nutzerdaten, während ein Verzeichnis eine spezielle Struktur ist, die für den Menschen lesbare Dateinamen mit den physischen Speicheradressen verknüpft. Wir benötigen Verzeichnisse, um unsere Daten logisch, hierarchisch und übersichtlich organisieren zu können.
Block Availability Map (BAM)
Frage: Was beschreibt der BAM?
Antwort: Die Block Availability Map (BAM) ist eine Tabelle, in der für jeden Cluster der Festplatte mithilfe eines Bits gespeichert ist, ob dieser Bereich gerade frei oder belegt ist.
Metadaten-Tabelle
Frage: Was genau macht die Metadaten Tabelle?
Antwort: Die Metadaten-Tabelle speichert alle wichtigen Informationen über eine Datei, wie etwa die Dateigröße, Zugriffsrechte und die exakten Speicheradressen der dazugehörigen Datencluster.
Formatieren einer Festplatte
Frage: Was passiert beim Formatieren einer Festplatte? Nennen Sie 3 bekannte Dateisysteme, die man beim Formatieren verwenden kann? Worin liegt der Unterschied der Dateisysteme?
Antwort: Beim Formatieren wird die Festplatte mit einer leeren Struktur (wie BAM und Metadatentabelle) versehen, um sie für das Speichern von Dateien vorzubereiten. Drei bekannte Dateisysteme sind NTFS (standard bei Windows), ext4 (standard bei Linux) und FAT32 (universell, aber limitiert auf 4GB pro Datei).
Teil 4: RAID Systeme
Fragen zu RAID-Systemen
Frage: Was ist ein RAID System? Für was steht der Begriff RAID?
Antwort: RAID steht für "Redundant Array of Independent Disks" und ist ein Verbund aus mehreren physischen Festplatten, die zu einem logischen Laufwerk zusammengefasst werden.Frage: Für welchen Einsatzzweck wurde das RAID System erdacht?
Antwort: Es wurde entwickelt, um die Ausfallsicherheit (Redundanz) zu erhöhen und/oder den Datendurchsatz beim Lesen und Schreiben durch parallele Zugriffe zu steigern.Frage: Beschreiben Sie den Unterschied zwischen HW und SW RAID Systemen?
Antwort: Ein Hardware-RAID nutzt einen eigenen Controller-Chip, was sehr schnell ist und die CPU entlastet, aber teurer ist. Ein Software-RAID wird komplett vom Betriebssystem gesteuert, was kostengünstig ist, aber die Leistung des Hauptprozessors beeinträchtigen kann.Frage: Erklären Sie eines der folgenden RAID Systeme: RAID 0, 1, 5, 10?
Antwort: Bei RAID 1 (Mirroring) werden alle Daten exakt gespiegelt auf mindestens zwei Festplatten geschrieben; fällt eine Platte aus, bleiben alle Daten auf der zweiten erhalten.Frage: Wann würden Sie welches RAID einsetzen?
Antwort: Für Papas wichtige Buchhaltungsdaten würde ich RAID 1 (Spiegelung) einsetzen, da maximale Datensicherheit gewährleistet ist. Für den zentralen Dateiserver der Firma mit vielen Daten empfehle ich RAID 5, da es eine gute Kombination aus hoher Geschwindigkeit, Ausfallsicherheit und effizienter Speichernutzung bietet.