Computerarchitektur und Preise Quiz
40 Questions
1 Views

Computerarchitektur und Preise Quiz

Created by
@DurableEuclid

Podcast Beta

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Was war der Preis pro Gigabyte für Festplatten im Jahr 2005?

  • 850$
  • 1$ (correct)
  • 20$
  • 53$
  • John von Neumann wurde als Begründer der modernen Rechnerarchitektur angesehen.

    True

    Nennen Sie die vier Hauptkomponenten des ‚Universalrechners‘.

    Steuerwerk, Rechenwerk, Speicherwerk, Ein/Ausgabewerk

    Der __________-Bus wird zur Steuerung der Zusammenarbeit der einzelnen Baugruppen verwendet.

    <p>Steuer</p> Signup and view all the answers

    Ordnen Sie die Bustypen ihren Eigenschaften zu:

    <p>Adress-Bus = Unidirektional, zur Auswahl von Speicherzellen Daten-Bus = Bidirektional, zum Datentransport zwischen Bausteinen Steuer-Bus = Unidirektional, Steuerung der Zusammenarbeit Systembus = Verbindet CPU, Hauptspeicher und E/A Komponenten</p> Signup and view all the answers

    Was beschreibt die Von Neumann Architektur?

    <p>Den Aufbau eines Computers</p> Signup and view all the answers

    Alle Busse eines Computers sind bidirektional.

    <p>False</p> Signup and view all the answers

    Was war der Preis pro Gigabyte für RAM im Jahr 2010?

    <p>20$</p> Signup and view all the answers

    Was ist ein Hauptbestandteil der monolithischen Architektur?

    <p>Ein einzelnes Betriebsystem-Programm</p> Signup and view all the answers

    Bei einer Mikrokern Architektur werden die Systemdienste in einem einzigen Programm zusammengeführt.

    <p>False</p> Signup and view all the answers

    Nennen Sie einen Nachteil des Client-Server-Modells im Zusammenhang mit der Mikrokern Architektur.

    <p>Effizienzverlust durch zusätzlichen Aufwand</p> Signup and view all the answers

    Die _____________ isoliert die Eigenschaften einer Rechenplattform.

    <p>Hardware-Abstraktionsschicht (HAL)</p> Signup and view all the answers

    Ordnen Sie die folgenden Speicherbereiche den richtigen Beschreibungen zu:

    <p>Code = Maschinenbefehle Statische Daten = Reservierte Speicherbereiche Laufzeitstack = Dynamisch verwalteter Speicher Programmkontext = Argumente und Umgebungsvariablen</p> Signup and view all the answers

    Was macht die Funktion 'write' in Unix?

    <p>Sie überträgt Daten in den Cachebereich</p> Signup and view all the answers

    Der Laufzeitstack ist ein statisch reservierter Speicherbereich für Variablen.

    <p>False</p> Signup and view all the answers

    Welche Funktion wird im Zusammenhang mit der monolithischen Architektur verwendet, um die Bildschirmausgabe aufzurufen?

    <p>Super Visor Call (SCV) oder Trap</p> Signup and view all the answers

    Was passiert, wenn alle fünf Philosophen gleichzeitig die Stäbchen greifen wollen?

    <p>Kein Philosoph erhält zwei Stäbchen.</p> Signup and view all the answers

    Verklemmungen treten auf, wenn keine exklusiven Ressourcen mehr zur Verfügung stehen.

    <p>False</p> Signup and view all the answers

    Nenne eines der Bedingungen, die erfüllt sein müssen, damit eine Verklemmung auftritt.

    <p>Exklusivnutzung oder Reserviert und warten oder Keine Wegnahme oder Gegenseitiges Warten.</p> Signup and view all the answers

    Ein _____________ ist ein Graph, der aus Prozess- und Ressourcenknoten besteht.

    <p>Ressourcenzuordnungsgraph</p> Signup and view all the answers

    Ordne die Begriffe ihren Erklärungen zu:

    <p>Exklusivnutzung = Reserviert bis Fertigstellung Reserviert und warten = Ressourcen erst nach Nutzung freigeben Keine Wegnahme = Ressourcen können nicht entzogen werden Gegenseitiges Warten = Warten auf die Freigabe von Ressourcen</p> Signup and view all the answers

    Welcher Algorithmus wird als Vogel-Strauß-Algorithmus bezeichnet?

    <p>Ein Algorithmus, der das Verklemmungsproblem ignoriert.</p> Signup and view all the answers

    Das 'Alles oder nichts'-Verfahren erlaubt es Prozessen, Ressourcen einzeln anzufordern.

    <p>False</p> Signup and view all the answers

    Was sind die Nachteile des exklusiven Zugriffs auf Ressourcen?

    <p>schlechte Ressourcen-Nutzung und Möglichkeit des Verhungerns.</p> Signup and view all the answers

    Was geschieht bei der Übersetzungszeit?

    <p>Es werden absolute Adressen erzeugt.</p> Signup and view all the answers

    Dynamisches Laden bedeutet, dass Programmteile bei Bedarf in den Hauptspeicher geladen werden.

    <p>True</p> Signup and view all the answers

    Was ist eine Relokations-Tabelle?

    <p>Eine Tabelle, die die Positionen der relozierbaren Adressen in einem Programm vermerkt.</p> Signup and view all the answers

    Die CPU arbeitet mit __________, während der Hauptspeicher mit __________ arbeitet.

    <p>logischen Adressen, physikalischen Adressen</p> Signup and view all the answers

    Ordne die folgenden Begriffe den passenden Beschreibungen zu:

    <p>Dynamisches Binden = Binden mit Platzhaltern anstatt mehrfach übersetzter Programmteile Überlagerungen = Zerlegung eines Programms in separate Funktionen Ausführungszeit = Adressbindung erfolgt zur Laufzeit Ladezeit = Festlegung der Speicheradresse bei Programmstart</p> Signup and view all the answers

    Was ist eine wichtige Voraussetzung für die Adressbindung zur Ausführungszeit?

    <p>Spezielle Hardware wird benötigt.</p> Signup and view all the answers

    Die MMU wandelt physikalische Adressen in logische Adressen um.

    <p>False</p> Signup and view all the answers

    Was passiert, wenn ein Prozess zur Ausführungszeit im Hauptspeicher verlagert wird?

    <p>Die Adressbindung muss zur Ausführungszeit verschoben werden.</p> Signup and view all the answers

    Was ist ein Seitenfehler?

    <p>Wenn der ausführende Prozess auf eine ausgelagerte Seite zugreift.</p> Signup and view all the answers

    Die Segmente im Hauptspeicher sind immer gleich groß.

    <p>False</p> Signup and view all the answers

    Was ist die Aufgabe einer Seitentabelle?

    <p>Die Buchführung über die ausgelagerten Seiten eines Prozesses.</p> Signup and view all the answers

    Die ___________ beschreibt eine Strategie, bei der die am längsten nicht verwendete Seite ausgelagert wird.

    <p>Least recently used (LRU)</p> Signup and view all the answers

    Ordne die Auslagerungsstrategien den entsprechenden Beschreibungen zu:

    <p>FIFO = Seite, die am längsten im HS ist, wird ausgelagert. LRU = Seite, die am längsten nicht genutzt wurde, wird ausgelagert. LFU = Seite, die am wenigsten verwendet wurde, wird ausgelagert. Second Chance = Verbindet FIFO mit Referenzbit.</p> Signup and view all the answers

    Was beschreibt das Working-Set Modell?

    <p>Eine Garantie, dass jeder Prozess eine angemessene Anzahl von Seiten im Speicher hält.</p> Signup and view all the answers

    Trashing beschreibt einen Zustand, in dem der Betriebssystem ständig Seiten ein- und auslagert.

    <p>True</p> Signup and view all the answers

    Nenne eine Strategie der globalen Auslagerung.

    <p>FIFO, LRU, LFU oder Second Chance.</p> Signup and view all the answers

    Study Notes

    Technische Fortschritte

    • Die Kosten pro Gigabyte für Festplatte und RAM sind innerhalb der letzten 25 Jahre enorm gesunken.
    • Im Jahr 1990 betrugen die Kosten für 1 Gigabyte Festplattenspeicher 53.000 US-Dollar.
    • Im Jahr 2015 kostete 1 Gigabyte nur noch 0.04 US-Dollar.
    • Die Entwicklungen bei RAM zeigen ein ähnlich starkes Absinken der Kosten.

    Von Neumann Architektur

    • Die Von Neumann Architektur beschreibt den Aufbau eines Computers, der als „Universalrechner", bezeichnet wird.
    • Das Konzept wurde in den 1940er Jahren von John von Neumann, einem ungarischen Mathematiker, entwickelt und ist bis heute die Grundlage für fast alle Computer.
    • Ein „Universalrechner" besteht aus folgenden Komponenten:
      • Steuerwerk
      • Rechenwerk
      • Speicherwerk
      • Ein-/Ausgabewerk
    • Die Komponenten werden über ein Verbindungssystem (Bus) miteinander verknüpft.

    Bustypen

    • Es gibt drei Arten von Bussen:
      • Adress-Bus (A-Bus): unidirektional, zur Auswahl von Speicherzellen, Bausteinen und E/A-Registern
      • Daten-Bus (D-Bus): bidirektional, 8-64 Leitungen, zum Datentransport
      • Steuer-Bus (Control-Bus, S-Bus): verschiedene Übertragungsrichtungen, jede Leitung für sich, unidirektional, zur Steuerung der Zusammenarbeit der einzelnen Baugruppen

    Busse

    • Ein Bus ist ein System mehrerer paralleler Leitungen, wobei die „Busbreite", durch die Anzahl der Leitungen definiert ist.
    • An einen Bus können mehrere Funktionseinheiten angeschlossen werden, die über den Bus miteinander kommunizieren.
    • Der Informationsaustausch erfolgt zeitmultiplex, d.h. zu jedem Zeitpunkt sind nur zwei Einheiten, ein Sender und ein Empfänger, verbunden.

    Interne und Externe Busse

    • Eine Hierarchie unterschiedlicher Busse verbindet die verschiedenen Komponenten eines Computersystems.
    • Ein CPU-internes Bussystem verbindet die CPU-Komponenten.
    • Der Systembus verbindet die CPU, den Hauptspeicher und E/A-Komponenten.
    • Weitere Busse ermöglichen den Anschluss von Geräten die Bus-kompatibel sind, z.B. USB (Universal Serial Bus) und PCI (Peripheral Component Interconnect).

    Von Neumann Architektur

    • Die Von Neumann Architektur ermöglicht es, dass sowohl Daten als auch Befehle im gleichen Speicher abgelegt werden.
    • Der Computer kann so effizienter Daten verarbeiten.

    Aufbau eines Betriebssystems

    • Es gibt zwei Architekturmodelle für Betriebssysteme:
      • Monolithische Architektur
      • Mikrokern Architektur

    Monolithische Architektur

    • Die klassische Architektur für Betriebssysteme, bei der alle Funktionen in einem einzigen Programm zusammengefasst sind.
    • Anwender können Funktionen wie aus einer Standardbibliothek aufrufen.
    • Ein Beispiel: Ein Programm ruft eine Bildschirmausgabe-Funktion auf, welche über einen „Supervisor Call", kurz SCV oder „Trap", das Betriebssystem aufruft.
    • Der „Systemaufruf", bewirkt eine Hardware-Unterbrechung der Anwendungsausführung, die an das Betriebssystem übergeben wird.
    • Der Kernelmodus, der nun die CPU im privilegierten Modus kontrolliert, führt die Funktion aus und gibt die Kontrolle schließlich wieder an den Usermodus zurück, der keinen privilegierten Zugriff hat.

    Mikrokern Architektur

    • Ein modernerer Ansatz, bei dem Systemdienste auf mehrere Programme aufgeteilt werden.

    Vor- und Nachteile der Architekturmodelle

    • Die Modularisierung von Betriebssystemen in Richtung Mikrokern macht sie übersichtlicher, flexibler und einfacher zu verwalten.
    • Allerdings kann die Effizienz durch die zusätzlichen Aufrufe im Client-Server-Modell beeinträchtigt werden.

    Schichtmodell

    • Innerhalb von monolithischen Betriebssystemen gibt es oft mehrere, aufeinander aufbauende Schichten.
    • Die unteren Schichten sind hardwarespezifisch, während die oberen Schichten anwendungsorientiert und hardwareunabhängig sind.

    Hardware-Abstraktionsschicht HAL (Hardware Abstraction Layer)

    • Diese Schicht isoliert Funktionen und Eigenschaften des Computersystems.
    • Die HAL ermöglicht so, verschiedene Hardware-Plattformen zu unterstützen.

    Hardwaretreiber

    • Ein Hardwaretreiber ist ein Software-Modul, das zur Steuerung von spezifischen Hardware-Komponenten dient.
    • Hardwaretreiber ermöglichen dem Betriebssystem, mit der entsprechenden Hardware zu kommunizieren.

    C -- Programm

    • In einem C-Programm kann die Ansi-C-Bibliotheksfunktion „printf", für die Ausgabe verwendet werden.
    • Diese Funktion ist unabhängig vom Betriebssystem.
    • Die Funktion „write", die beispielsweise unter Unix verwendet wird, ist jedoch betriebssystemspezifisch.
    • „Write" ruft Funktionen des Dateisystems auf und überträgt Daten in einen Cache-Bereich.

    Prozesse

    • Prozesse beschreiben die Ausführung eines Programms.
    • Prozesse sind die kleinste Einheit, die Ressourcen vom Betriebssystem zugewiesen bekommt.

    Prozesse und Threads -- Programmspeicher

    • Der Programmspeicher enthält die folgenden Bereiche:
      • Code: Maschienenbefehle, die aus dem Programmquelltext erzeugt wurden
      • Statische Daten: Statisch reservierte Speicherbereiche für Variablen und Konstanten
      • Laufzeitstack: Dynamisch verwalteter Speicher, der für die Aktivierung von Unterprogrammen benötigt wird
      • „Programmkontext", oder „Enviroment": Enthält Argumente und Umgebungsvariablen

    Verklemmungen

    • Verklemmungen treten auf, wenn mehrere Prozesse gleichzeitig auf Ressourcen zugreifen wollen, die jedoch nur begrenzt verfügbar sind.
    • Jeder Prozess wartet darauf, dass ein anderer Prozess die benötigte Ressource freigibt.

    Bedingungen für Verklemmungen

    • Verklemmungen entstehen, wenn alle folgenden Kriterien erfüllt sind:
      • Ausschliesslichkeit: Eine Ressource kann nur von einem Prozess gleichzeitig genutzt werden.
      • Reservieren und Warten: Ein Prozess behält die Ressource, auch wenn er sie gerade nicht benötigt.
      • Keine Wegnahme: Ressourcen können nicht vom Betriebssystem entnommen werden.
      • Gegenseitiges Warten: Prozesse warten aufeinander, bis die benötigte Ressource frei wird.

    Ressourcenzuordnungsgraph

    • Ein Ressourcenzuordnungsgraph veranschaulicht die Zuordnung von Ressourcen zu Prozessen.
    • Wenn der Graph einen Zyklus enthält, liegt eine Verklemmungsituation vor.

    Verklemmungsverfahren

    • Es gibt verschiedene Verfahren, die Verklemmungen verhindern oder beheben sollen.
    • Der „Vogel-Strauß-Algorithmus", oder „Ostrich"-Algorithmus wird von den meisten Betriebssystemen angewendet.
    • Dieser Algorithmus verhindert Verklemmungen nicht aktiv, sondern ignoriert das Problem.

    Vermeiden von Verklemmungen

    • Um Verklemmungen zu vermeiden, sollen die Voraussetzungen für Verklemmungen nicht alle gleichzeitig erfüllt werden.

    Exclusivzugriff

    • Prozesse sollten Ressourcen, die nicht exklusiv genutzt werden, nicht blockieren.

    Reservieren und Warten

    • Ein Prozess sollte keine Ressourcen anfordern, wenn er bereits Ressourcen belegt hat.

    Alles-oder-Nichts-Prinzip

    • Ein Prozess sollte alle benötigten Ressourcen gleichzeitig anfordern.

    Nachteile des Alles-oder-Nichts-Prinzips

    • Ressourcen können unnötig lange belegt bleiben.
    • Prozesse können auf Ressourcen warten und somit „verhungern".

    Beispiel: Philosophenproblem

    • Fünf Philosophen sitzen an einem runden Tisch und benötigen zwei Stäbchen zum Essen, die sich zwischen ihnen befinden.
    • Wenn jeder Philosoph gleichzeitig das linke Stäbchen nimmt, werden nie zwei Stäbchen für einen Philosophen frei.
    • Mit einem Mutex für gegenseitigen Ausschluss kann das Problem gelöst werden.

    Programmausführung

    • Bei der Ausführung eines Programms wird der Programmspeicher initialisiert.
    • Der Programmzähler des Prozessors wird mit der Adresse der ersten Instruktion des Programms initialisiert.
    • Die Kontrolle wird dann an das Programm übergeben.

    Adresszuordnung

    • Die Adresszuordnung, oder Adressbindung, kann zu verschiedenen Zeiten erfolgen.
    • Es gibt drei Arten der Adresszuordnung:
      • Übersetzungszeit
      • Ladezeit
      • Ausführungszeit

    Übersetzungszeit

    • Wenn die Position des Programms im Hauptspeicher zur Übersetzungszeit bekannt ist, können Compiler und Binder absolute Adressen erzeugen.

    Ladezeit

    • Der Binder erzeugt relozierbare Adressen, die sich auf den Beginn des Programmspeichers beziehen.
    • Zur Ladezeit wird festgelegt, wohin das Programm plaziert wird.
    • Die relozierbaren Adressen werden in absolute Adressen konvertiert.
    • Die Programmdatei muss eine Relokationstabelle enthalten, die die Positionen der relozierbaren Adressen angibt.

    Ausführungszeit

    • Wenn ein Prozess während der Ausführungszeit im Hauptspeicher verschoben werden kann, muss die Adressbindung bis zur Ausführungszeit verzögert werden.
    • Diese Methode erfordert spezielle Hardware.

    Grundlagen

    • Dynamisches Laden: Programmteile werden erst bei Bedarf in den Hauptspeicher geladen.
    • Dynamisches Binden: Programmteile werden früher statisch gebunden, d.h. mehrfach übersetzt im Speicher. Moderne Systeme verwenden Platzhalter für Programmteile, die dynamisch gebunden werden.
    • Überlagerungen (Overlays): Der Programmierer zerlegt ein Programm in mehrere Phasen, die weitgehend separate Funktionen und Strukturen aufweisen.
    • Bei dieser Methode muss das Programm zur Ausführungszeit nicht vollständig im Hauptspeicher vorhanden sein.
    • Der Austausch erfolgt durch das Programm selbst, ohne die Unterstützung des Betriebssystems.

    Logischer und physikalischer Austausch

    • Die CPU arbeitet mit logischen Adressen, während der Hauptspeicher mit physikalischen Adressen arbeitet.
    • Die Memory Management Unit (MMU) bildet die logischen Adressen auf physikalische Adressen ab.
    • Die logischen Adressen werden auch als virtuelle Adressen bezeichnet.

    Multitasking Modelle mit speicherresistenten Programmen

    • Bei Multitasking-Systemen stehen mehrere Anwenderprogramme gleichzeitig im Hauptspeicher.
    • Das Betriebssystem organisiert die Aufteilung des Hauptspeichers und verwaltet die Umrechnung von logischen auf physikalische Adressen.
    • Dabei legt das Betriebssystem eine Rahmentabelle an, die die folgenden Informationen enthält:
      • Rahmen frei/belegt
      • Welchem Prozess der Rahmen zugeordnet ist
      • Zugriffshäufigkeit

    Paging

    • Paging erlaubt die Ausführung von Prozessen, die nicht vollständig im Hauptspeicher vorhanden sind.
    • Wenn der ausführende Prozess auf eine ausgelagerte Seite zugreift, tritt ein Seitenfehler (Page Fault) auf.
    • Die zugreifende Instruktion wird abgebrochen und die Seite wird eingelagert.
    • Anschließend wird die Instruktion wiederholt.
    • Die Buchführung über die ausgelagerten Seiten erfolgt in der Seitentabelle des Prozesses.

    Segmentierung

    • Der Hauptspeicher wird in Segmente unterschiedlicher Größe und Zwecken unterteilt:
      • Programmcode vom Programmierer
      • Laufzeitstack
      • Statisch reservierter Speicherbereich für Variablen
      • Programmcode einer dynamisch geladenen Bibliothek
      • Speicherbereich, der von zwei Prozessen gemeinsam zur Kommunikation verwendet wird
      • Speicherbereich, in den der Inhalt einer Datei eingeblendet wird
    • Bei der Segmentierung werden Adressen zweigeteilt in Segment und Distanz.
    • Es existiert auch eine Segmenttabelle des Prozesses.

    Segmentierung mit Paging

    • Ein Prozess besteht aus einigen wenigen Segmenten, jedes Segment ist in Seiten eingeteilt.
    • Es existiert eine Seitentabelle pro Segment.
    • Eine Adresse besteht aus der Segmentnummer und der (Segment-)Distanz.

    Auslagerungsstrategien

    • Es gibt zwei Arten von Auslagerungsstrategien:
      • Globale Auslagerungsstrategie
      • Prozessbezogene Auslagerungsstrategie

    Globale Auslagerungsstrategie

    • Die Wahl der auszulagernden Seiten spielt keine Rolle für die Auslagerungsstrategie.
    • Es gibt verschiedene Algorithmen für die globale Auslagerungsstrategie:
      • FIFO: „First In First Out", die Seite, die am längsten im Hauptspeicher ist, wird ausgelagert.
      • LRU: „Least Recently Used", die Seite, die am längsten nicht genutzt wurde, wird ausgelagert.
      • LFU: „Least Frequently Used", die am wenigsten benutzte Seite wird ausgelagert.
      • Second Chance: Verbindet FIFO mit einem Referenzbit.

    Prozessbezogene Auslagerungsstrategie

    • Bei der prozessbezogenen Auslagerungsstrategie wird die Prozesszugehörigkeit bei der Auswahl der auszulagernden Seiten berücksichtigt.

    Trashing

    • Trashing treten auf, wenn das Betriebssystem ständig beschäftigt ist, Daten ein- und auszulagern.

    Working-Set Modell

    • Das Working-Set Modell garantiert, dass jeder Prozess eine vernünftige Anzahl von Seiten im Speicher halten kann.

    Prozessorverwaltung: CPU-Scheduling

    • Früher gab es keine interaktiven Programme und kein Multitasking, sondern nur Stapelverarbeitungen („Batch Jobs", die hintereinander ausgeführt wurden).
    • Heute führt man in Multitasking-Systemen Programme parallel aus.

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Related Documents

    Betriebssysteme PDF

    Description

    Testen Sie Ihr Wissen über Computerarchitektur, die Von Neumann Architektur und historische Preise von Festplatten und RAM. Beantworten Sie Fragen zu den Hauptkomponenten eines Universalrechners und den Bus-Typen. Ideal für Technikbegeisterte und Studenten der Informatik.

    More Like This

    Von Neumann Architecture Quiz
    5 questions
    Computer System Components Quiz
    10 questions
    Architecture de Von Neumann et Bus de Communication
    13 questions
    Use Quizgecko on...
    Browser
    Browser