Podcast
Questions and Answers
Welche der folgenden Aussagen über das Betriebssystem MS-DOS ist korrekt?
Welche der folgenden Aussagen über das Betriebssystem MS-DOS ist korrekt?
Welche der folgenden Aussagen über Netzwerkbetriebssysteme (NOS) ist falsch?
Welche der folgenden Aussagen über Netzwerkbetriebssysteme (NOS) ist falsch?
Welche der folgenden Merkmale sind charakteristisch für Rechner der 5. Generation?
Welche der folgenden Merkmale sind charakteristisch für Rechner der 5. Generation?
Welche der folgenden Aussagen über die Java-Plattform ist korrekt?
Welche der folgenden Aussagen über die Java-Plattform ist korrekt?
Signup and view all the answers
Welches der folgenden Betriebssysteme ist kein Beispiel für ein Linux-basiertes Betriebssystem?
Welches der folgenden Betriebssysteme ist kein Beispiel für ein Linux-basiertes Betriebssystem?
Signup and view all the answers
Welche der folgenden Aussagen über die IBM Lochkarte sind korrekt? (Mehrere Antworten möglich)
Welche der folgenden Aussagen über die IBM Lochkarte sind korrekt? (Mehrere Antworten möglich)
Signup and view all the answers
Was war eine der wichtigsten Innovationen der von-Neumann-Architektur?
Was war eine der wichtigsten Innovationen der von-Neumann-Architektur?
Signup and view all the answers
Welches Problem wurde durch Mini-Computer gelöst?
Welches Problem wurde durch Mini-Computer gelöst?
Signup and view all the answers
Was ist die Bedeutung von CTSS und MULTICS im Kontext von Mini-Computern?
Was ist die Bedeutung von CTSS und MULTICS im Kontext von Mini-Computern?
Signup and view all the answers
Welche der folgenden Eigenschaften trifft auf UNIX zu?
Welche der folgenden Eigenschaften trifft auf UNIX zu?
Signup and view all the answers
Was war der Hauptgrund für die Entwicklung von UNIX?
Was war der Hauptgrund für die Entwicklung von UNIX?
Signup and view all the answers
Welche der folgenden Aussagen über die Entwicklung von UNIX ist korrekt?
Welche der folgenden Aussagen über die Entwicklung von UNIX ist korrekt?
Signup and view all the answers
Was ist POSIX und welche Bedeutung hat es für die Entwicklung von Betriebssystemen?
Was ist POSIX und welche Bedeutung hat es für die Entwicklung von Betriebssystemen?
Signup and view all the answers
Welche Aussage über den Datentransfer zwischen CPU und Zentralspeicher ist korrekt?
Welche Aussage über den Datentransfer zwischen CPU und Zentralspeicher ist korrekt?
Signup and view all the answers
Welches Feature sorgt dafür, dass ein Betriebssystem den Eindruck von Multi-Tasking vermittelt, obwohl nur ein Prozess gleichzeitig ausgeführt werden kann?
Welches Feature sorgt dafür, dass ein Betriebssystem den Eindruck von Multi-Tasking vermittelt, obwohl nur ein Prozess gleichzeitig ausgeführt werden kann?
Signup and view all the answers
Was ist ein wesentlicher Unterschied zwischen synchronen und asynchronen Ein-/Ausgabemethoden?
Was ist ein wesentlicher Unterschied zwischen synchronen und asynchronen Ein-/Ausgabemethoden?
Signup and view all the answers
Welche Aussage über das Unix-Betriebssystem stimmt?
Welche Aussage über das Unix-Betriebssystem stimmt?
Signup and view all the answers
Was ist der Hauptvorteil eines Mikrokerns wie Mach?
Was ist der Hauptvorteil eines Mikrokerns wie Mach?
Signup and view all the answers
Welchen Zweck hat der Interrupt-Handler im Betriebssystem?
Welchen Zweck hat der Interrupt-Handler im Betriebssystem?
Signup and view all the answers
Welche der folgenden Aussagen beschreibt die Funktionsweise des Kernel-Modes im Betriebssystem?
Welche der folgenden Aussagen beschreibt die Funktionsweise des Kernel-Modes im Betriebssystem?
Signup and view all the answers
Was ist kein Merkmal eines Von-Neumann-Rechners?
Was ist kein Merkmal eines Von-Neumann-Rechners?
Signup and view all the answers
Welches der folgenden ist kein Merkmal von Betriebssystemen?
Welches der folgenden ist kein Merkmal von Betriebssystemen?
Signup and view all the answers
Welche der folgenden Aussagen über das Betriebssystem Android ist falsch?
Welche der folgenden Aussagen über das Betriebssystem Android ist falsch?
Signup and view all the answers
Welche Aufgabe hat die JVM im Zusammenhang mit Java-Programmen?
Welche Aufgabe hat die JVM im Zusammenhang mit Java-Programmen?
Signup and view all the answers
Welches der folgenden Merkmale eines Betriebssystems ist der wichtigste Faktor für seine Zuverlässigkeit?
Welches der folgenden Merkmale eines Betriebssystems ist der wichtigste Faktor für seine Zuverlässigkeit?
Signup and view all the answers
Welche der folgenden Aussagen über die Komponenten eines Computer-Systems ist richtig?
Welche der folgenden Aussagen über die Komponenten eines Computer-Systems ist richtig?
Signup and view all the answers
Welcher der folgenden Punkte ist kein typischer OS-Dienst?
Welcher der folgenden Punkte ist kein typischer OS-Dienst?
Signup and view all the answers
Welche der folgenden Aussagen über die Portabilität eines Betriebssystems ist richtig?
Welche der folgenden Aussagen über die Portabilität eines Betriebssystems ist richtig?
Signup and view all the answers
Welche der folgenden Aussagen über Anwendungsprogramme ist falsch?
Welche der folgenden Aussagen über Anwendungsprogramme ist falsch?
Signup and view all the answers
Signup and view all the answers
Study Notes
IBM Lochkarte
- 96 Spalten
- 6-Bit-Code BCD (binär codierte Dezimalwerte)
- 3 Reihen mit je 32 Spalten
- ODER im 8-Bit-Code ECDIC
CPU
- Central Processing Unit (CPU)
- Steuert die Datenmanipulation
- ALU (Arithmetic Logic Unit): führt Operationen mit Daten durch
- CU (Control Unit): koordiniert die CPU-Aktivitäten
- Register: kleine Datenspeicher (temporär)
Von-Neumann Architektur
- Theoretische Grundlage für Rechenautomaten
- Steuernde Programme: Kette logischer Binär-Entscheidungen
- Umstellung vom Dezimal- zum Binärsystem
Computerprogramme und Daten
- Programme und zu verarbeitende Daten werden im selben Speicher abgelegt
- Strikte Trennung zwischen CPU und Hauptspeicher
- Trennung zwischen Eingabe, Speicher und Ausgabe
Erste Generation (1945-1955)
- Mechanische Relais (elektromagnetische Schaltvorgänge, Zeitverzögerung in Sekunden)
- Röhrenrechner
- Programmierung in Binärcode und Steckkarten
- Standard-Abläufe auf Lochkarten
- Programme mussten Zeitabschnitte reservieren
Zweite Generation (1955-1965)
- Transistoren statt Vakuumröhren (kleiner, schneller, energiesparender)
- Neue Berufe (Entwickler, Hersteller, Operator, Programmierer, Wartungspersonal)
- Größere Computersysteme (Mainframes)
- Programme auf Papier und Lochkarten
- Stapelverarbeitung (Batch-Processing): Programme wurden zusammengefasst und gleichzeitig ausgeführt
Integrated Circuit (IC)
- Chips
- Entwicklung des Transistors
- Enthält: Transistoren, Dioden, weitere aktive/passive Bauelemente
Mini-Computer
- Dialogbetrieb per Terminals
- Timesharing, mehrere Benutzer gleichzeitig
- CTSS: Compatible Time Sharing System
- MULTICS: MULTiplexed Information and Computing System
- Erste Mini-Computer: DEC PDP-1 (4K 18Bit Worte)
- Darauf wurde UNIX realisiert
UNIX
- Erste Entwicklung auf dem PDP-7 Mini-Computer
- Mehrbenutzersystem
- Alternative zu MULTICS
- Grundlage für viele moderne Betriebssysteme (OS)
- Kostenlose Lizenzen für Universitäten
- Weitverbreitetest Betriebssystem (OS)
- Entwicklung von Schnittstellen (AT&T, BSD, IEEE POSIX)
- POSIX ist heute noch gültig (z.B. Linux)
Entwicklung des Personal Computer
- XEROX: erster PC mit grafischer Benutzeroberfläche (GUI) und Maus
- IBM suchte ein Betriebssystem für PCs, Digital Research hatte kein Interesse
- Zusammenarbeit mit Seattle Computer Products führte zu MS-DOS
- PCs der 1980er Jahre (Sinclair, Commodore)
- Apple Macintosh, ATARI
Raspberry Pi
- Einplatinencomputer
- Günstig
- Für DIY-Zwecke
- RAM zwischen 512 MB und 8 GB
- Linux-basiertes Betriebssystem (OS)
- Unterstützt diverse Programmiersprachen
Netzwerk
- Netzwerkbetriebssysteme (NOS): Software, die Netzwerke verwaltet und koordiniert
- Spezielle Software zur Verwaltung und Koordination von Netzwerkressourcen
- Benutzer wissen von mehreren beteiligten Rechnern
- Beispiele: Novell, Windows, Unix, Linux-basierte Betriebssysteme
- Verteilte Betriebssysteme (distributed): Ressourcenverwaltung, Transparenz
Rechner der 5. Generation
- Computer = Netzwerk (Cluster, Cloud, Grid, P2P-Computing)
- Virtualisierung
- Open-Source Software
- Kommunikation überall durch mobile Systeme
- Web-Services
- Ressourcenbedarf On-Demand
- KI
- Quantencomputer
Java Plattform
- Java™ 2 Plattform
- Interpretierter Bytecode
- Sandbox-Sicherheit
- Digitale Signaturen
- Rollenverteilung
- Plattformunabhängigkeit
Android
- Linux-basiert
- Verwendet viele Java-Bibliotheken
- Plattformunabhängig
- Objektorientiert
- Entwicklungsumgebung (Ecosystem)
Apps und mobile computing generell
- Handset-Allianz für Innovationen
- Android: Open-source Betriebssystem
- Lizenzen für Hersteller sind nicht nötig
- Betriebssystem Definition: Programme die Eigenschaften der Hardware nutzen und Programme steuern/überwachen
- Aufgaben: Umgang zwischen Hardware und Benutzer
- Ziel: Benutzerprogramme ausführen, Computer komfortabel verwenden, Effiziente Hardware-Nutzung, Fehlerkorrektur
- Kern: Ein laufendes Programm
- Effizienz: geringer Energieverbrauch, gute Performance, effektive Nutzung des Rechners
Betriebssystem Grundlagen
- Definition: Programme eines digitalen Rechensystems, die neben den Hardwareigenschaften einen Teil der möglichen Betriebsarten definieren und die Ausführung von Programmen steuern.
- Aufgaben: Kommunikation und Verwaltung zwischen Benutzer und Hardware, Steuerung der Programme, Verteilung von Ressourcen, Fehlerbehandlung.
OS-Dienste
- Auftragsverwaltung (Job Management)
- Auftragsablaufsteuerung (Prozessverwaltung und Synchronisierung)
- Arbeitsspeicher/ Prozessadressraumverwaltung
- Katalog-Management (Objektverwaltung)
- Datenmanagement
- Eingabe/Ausgabemanagement
- Zeitverwaltung
- Kommunikationsmanagement
- Wartungsmanagement
- Systemadministration
Computer-System Organisation
- Hardware (CPU, Speicher, E/A-Geräte)
- Betriebssystem (Steuerung und Koordination)
- Anwendungsprogramme (Nutzeranwendung)
- Benutzer (Menschen, Maschinen, andere Computer)
Computer-System-Operationen
- Ein/Ausgabe-Geräte und CPU können gleichzeitig funktionieren
- Controller steuert einen Gerätetyp
- CPU verschiebt Daten zwischen Speicher und Geräten
- Geräte informierte die CPU über den Beendigung ihres Betriebs über einen Interrupt
Interrupt
- Betriebssysteme sind Interrupt-gesteuert
- Interrupt: ein Signal von einem Gerät oder aus Software für das BS.
- Der Computer führt nur einen Prozess gleichzeitig aus
- Interrupts simulieren Multitasking
Interrupt-Handler
- Bedient Interrupt-Signale
- Priorisiert Interrupts
- Setzt die Interrupts auf den Stack
User- und Kernel-Mode
- Bei Wechsel in Kernel erhöht Zugriffsrecht und deaktiviert Schutzmechanismen
- Meist Hardware-basiert und vom Benutzer nicht manipulierbar
- Systemrufe: Speichern von Parametern im Stack und lösen eines Softwareinterrupts aus
- Benutzer-Modus: Benutzer-Shell, Anwendungen
- Kernel-Modus: Schnittstellen, Verwaltung von Speicher, Prozessen
Synchrone vs. Asynchrone I/O-Methoden
- Synchrone: Anfordernder Prozess muss warten
- Asynchrone: Prozess läuft weiter, während Übertragung stattfindet
Unix und Posix
- Strukturen von Unix können unterschiedlich sein
- Unterschiede in den Systemrufen
- Posix: Portabilität und Standardisierung von Systemrufen
- Ziel: Systemunterschiede abstrahieren (hidden)
- Mach (Nachfolger von Unix): Mikrokern-System, alle Systemdienste auf Benutzerebene
Von-Neumann und Universalrechner
- Idee und Aufbau eines Universalrechners
- Daten und Programme in binärem Code, im gemeinsamen Speicher
- CPU besteht aus: Rechenwerk (ALU), Steuerwerk, Adressbus, Datenbus, Steuerbus
- Datenbus: Austausch zwischen CPU, Speicher und Peripherie
- CPU-Registergröße (Anzahl an Bit): Größe des Arbeitsregisters im Rechenwerk
Speicherhierarchie
- Register
- Interner Cache
- Externer Cache
- Hauptspeicher
- SSD/CompactFlash
- Festplatten
- Optische Laufwerke (CD/DVD)
- Magnetoptische Laufwerke
- Magnetbänder
User Interfaces
- CLI (Command Line Interface): Direkte Kommandoeingabe
- Shells (z.B. bash)
- GUI (Graphical User Interface): grafische Oberfläche
- Desktop und diverse Anwendungen
System Calls
- Programmierte Schnittstellen zwischen OS und Programmen
- In C/C++ geschrieben
- API-basiert
Kernelarchitekturen (Monolithisch)
- Großteil des BS ist im Kernel
- Moduläre Organisation
- Vorteil: schneller, wenig Kontextwechsel
- Nachteil: Komplexitätswachstum und schwierige Korrektur von Fehlern
Kernelarchitekturen (Mikrokern)
- Nur grundlegende Funktionen im Kernel
- Vorteile: Stabilität, Sicherheit und Flexibilität
- Nachteile: Komplexer zu erstellen, langsamere Prozesse
Makrokernel
- Eine Mischform von Monolithischen und Mikrokern
- Vorteile: Gute Performance
- Nachteile: Komplexität
Scheduling
- Multitasking: Prozesse gleichzeitig ausführen
- Dispatcher: Umschalten zwischen Prozessen
- Dispatch Overhead: Zeit für Umschaltung
- Scheduler: Zeitpunk und Reihenfolge des Wechsels
- CPU Burst: Zeit, die ein Prozess in Folge kontinuierlich die CPU benutzt
- CPU-Nutzung: Messung der Prozessorbenutzung
- Durchsatz: Anzahl der pro Zeiteinheit beendeten Prozesse
- Turnaround-Zeit: Gesamtzeit für einen Prozess
- Wartezeit: Zeit, die ein Prozess zum Warten braucht
- Antwortzeit: Zeit bis zur ersten Antwort
- Fairness: Prozesse werden nach bestimmten Kriterien berücksichtigt
FCFS (First Come, First Served)
- Vorteile: Einfach zu implementieren, geringe Verwaltungskosten, Fair
- Nachteile: Kurze Prozesse müssen lange warten, Konvoi-effekt
Priority Scheduling
- Einteilung der Prozesse in Prioritätsklassen
- Vorteil: Wichtige Prozesse werden schnell bearbeitet
- Nachteil: Prioritätsassignierung ist unklar (unfair)
Round Robin (RR)
- Prozessen wird ein Zeitquantum zugewiesen
- Vorteil: akzeptable Reaktionszeiten für kurze Prozesse und geringe Verwaltungsaufwand
- Nachteil: Overhead aufgrund der Kontextwechsel
Multi-Level Queue Scheduling
- Prozesse werden in verschiedene Klassen eingeteilt (Vordergrund, Hintergrund)
- Unterschiedliche Scheduling-Algorithmen pro Klasse
Real-Time Scheduling
- Hard Real-time: Kritische Aufgabe muss innerhalb einer vorgegebenen Zeit ausgeführt werden
- Soft Real-time: Kritische Prozesse erhalten höhere Priorität
Threads
- Leichtgewichtige Prozesse
- Im selben Adressraum wie der Prozess
- Können auf die Ressourcen des Prozesses zugreifen
- Mehrere Threads können ein Programm gleichzeitig ausführen
Speichermedien
- Bitmaps vs. Verkettete Liste: unterschiedliche Dateisysteme und Strategien für Speichermanagement.
- Bitmaps: kompakte Darstellung für einfache Verwaltung und geeignet für kleine Speicherblöcke; Nachteil: Lineare Suche
- Verkettete Listen: flexibles Speichermanagement für große Speichersegmente und effiziente Verwaltung von Speicherblöcken; Nachteil: hoher Speicherbedarf
- First Fit, Next Fit, Best Fit, Worst Fit Algorithmen
Paging
- Virtual/physische Adressierung
- Schnelle Adressübersetzung
- Virtuelle Adressen werden in Logische Seiten und Offset aufgeteilt;
- Seiten werden in physische Frames übertragen (physische Adresse)
- Umsetzungstabelle (Page Table): Verbindung virtueller und physischer Adressen
- Paging als Hauptspeicherverwaltung; Verwaltung von Pages;
- Seitentabelle: Tabelle die die Verbindung von virtual- und physischen Adressen hält;
Speicherverwaltung
- Speicherverwaltung, Speicherstrukturen, Bitmaps, Verkettete Listen
- Flexible Partitionen, feste Partitionen
- Paging (Systeme mit virtuellem Speicher)
- Segmentierung, Virtueller Speicher, Unterstützungssoftware für den Speicher
Prozessbaum
- Darstellung von Prozessen und deren Elternprozessbeziehung
- Prozess-Baumstruktur und Eltern-Kind-Prozess
- Fork(), Exec()
Zombie-Prozesse
- Kindsprozesse, die gestorben sind aber deren Status nicht vom Elternprozess verarbeitet wurde
Kritische Abschnitte
- Code, der auf gemeinsam genutzte Ressourcen zugreift
- Problem: race condition
- Lösungsmöglichkeiten: Mutual Exclusion, Semaphoren, Lock-Mechanismen
Synchronisation von Prozessen
- Datenabhängige Prozesse
- Lost Update
- Dirty read
- Inconsistent read
Interprozesskommunikation (IPC)
- Shared memory: Prozesse teilen sich einen gemeinsamen Speicherbereich
- Message Passing: Prozesse tauschen Nachrichten über einen Message Queue aus
Zwei IPC-Modelle
- Shared Memory
- Message Passing
Multithreading
- Viele Prozesse gleichzeitig ausgeführt (parallel)
- Prozess-Management, Prozess-Status, Kommunikation
Mehrprogrammbetrieb
- Mehrere Programme gleichzeitig im Hauptspeicher
- Partitionierung
- Flexible Partitionierung
RAID
- Redundant Array of Independent Disks
- Verschlüsselte Datenredundanz
- Verteilte Datenredundanz
- RAID 0, 1, 5, 10
- Datenverlustvermeidung
Dateisysteme
- Abstraktion physikalischer Speichermedien
- Verwaltung von Dateinamen, Metadaten und Dateigröße
- Partitionierung
- Formatierung (auf einer Festplatte)
Datei-Zugriffsarten
- Sequentiell
- Relativ
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Testen Sie Ihr Wissen über verschiedene Betriebssysteme wie MS-DOS, UNIX und Mini-Computer. Beantworten Sie Fragen zur Entwicklung, wichtigen Innovationen und charakteristischen Merkmalen dieser Systeme. Ideal für Studierende der Informatik oder Technikinteressierte.