Created by Johannes Müller
almost 6 years ago
|
||
Question | Answer |
Welche Dienste bieten Betriebssysteme an? | Operationen am Dateisystem Kommunikation • zwischen Computer (Netzwerk-Konnektivität) • zwischen Prozessen • über Shared Memory oder über Nachrichten Fehlererkennung /-behandlung • Hardware-Fehler (z.B. Platte, Netzwerk, Speicher) • Software-Fehler • à Fehlerbehandlung, Debugging Bereitstellung von Ressourcen • CPU, Speicher, Dateien, I/O Accounting • Wer hat wie viele Ressourcen genutzt Kontrollierter Zugriff auf Ressourcen (Protection) Security |
Erklären Sie die Bedeutung von API und nennen Sie ein Beispiel. | • API bedeutet Application Programming Interface. Es stellt die Schnittstelle zwischen einer Applikation und den Betriebssystemdiensten dar. Ein API-Befehl enthält mehrere System Calls. Beispiel hierfür: Java API oder POSIX API. |
Was für Betriebsarchitekturen gibt es? | - Monolithische Architektur - Monolithisch/Modulare Architektur - Hybrid-Kernel - Mikro-Kernel |
Was ist ein Kernel im Monolithischen und im Hybrid Monolithisch / Modular? | Monolithisch(Ein Kernel ist eine ausführbare Datei, die alle Komponenten/Dienste enthält) Hybrid: Monolithisch / Modular • Kernel: monolithischer Kern plus mehrere Module |
Was sind zwei wesentliche Nachteile des Monolithischen Kernel? | Bei Änderung der Hardware muss auch der Kernel geändert werden Viele Komponenten/Dienste laufen im Kernelmodus, sofern dort ein Fehler aufritt kommt es zum Systemabsturz |
Was ist ein Vorteil des Mikrokernel ? Was ein Nachteil? | Mikrokernel (/Hybrid) Stabiler: Weniger Code, weniger Fehler. Abstürze von OS-Komponenten im Userspace --> KEIN Systemabsturz • Langsamer, da viel mehr Kontextwechsel zwischen Kernelspace und Userspace |
Was passiert wenn man das OS installiert? | - Minimal-Kernel startet - Analyse der Hardware - Spezifischer Kernel und passende Module werden installiert - OS wird für die vorliegende Hardware angepasst |
Wie funktioniert ein System Call? | Auf C-Ebene: z.B. fork() oder write() usw. mit Parameter-Übergabe • Was passiert dabei wirklich? (Assembler, x86-Maschinencode) • Parameterübergabe vorbereiten • in CPU-Register, oder • als Block in Speicher, Block-Adresse in CPU-Register, oder • Push auf Stack • System Call Nummer in Register (mov eax,4 für sys_write() ) • Interrupt auslösen (int 0x80) -> Kernel übernimmt Kontrolle • Rückkehr ins Programm nach Abarbeitung des System Call |
Welche System Calls gibt es? | Prozesskontrolle Dateimanagement Geräte-Management (device management) Informationen des Betriebssystems Kommunikation Kontrollierter Zugriff (protection) |
Was sagt ihnen fork() und exec() ? | fork() vom shell-Prozess des Users -> neuer Shell-Prozess • exec() -> code des neuen Prozesses wird durch Programm-Code ersetzt |
Welche Dienste bieten Betriebssysteme dem User an? | User Interface: • Bedienung und Konfiguration des Betriebssystems • Grundsätze der Bedienung von Anwendungen • z.B. textbasiert, graphisch, Touch, Batch Starten von Anwendungen |
Wie bedient man Betriebssysteme? Schnittstelle zum Nutzer | Textbasiert (Command Line) • Shell, z.B. bash • Eingabe (Text) von Befehlen und Programmnamen • Tools Graphische Oberfläche (GUI) • Fenster, Icons usw. • Bedienung mit der Maus • Touch-Bedienung Beides (Command Line & GUI) Batch-Betrieb |
Want to create your own Flashcards for free with GoConqr? Learn more.