Podcast
Questions and Answers
Welche der folgenden Aussagen sind falsch? (Wählen Sie alle an, die zutreffen)
Welche der folgenden Aussagen sind falsch? (Wählen Sie alle an, die zutreffen)
Was ist das Hauptmerkmal des Universalrechners nach von Neumann?
Was ist das Hauptmerkmal des Universalrechners nach von Neumann?
Wofür steht die Abkürzung ”DMA“?
Wofür steht die Abkürzung ”DMA“?
Direct Memory Access
Welche beiden Arten von Scheduling gibt es für Betriebssysteme?
Welche beiden Arten von Scheduling gibt es für Betriebssysteme?
Signup and view all the answers
Was ist ein ”Interrupt“?
Was ist ein ”Interrupt“?
Signup and view all the answers
Was ist der Unterschied zwischen ”Prozess“ und ”Job“?
Was ist der Unterschied zwischen ”Prozess“ und ”Job“?
Signup and view all the answers
Was ist ein ”Mutex“?
Was ist ein ”Mutex“?
Signup and view all the answers
Dateien auf Datenträgern werden in Unix-Systemen mit einem so genannten lachem Dateisystem abgelegt.
Dateien auf Datenträgern werden in Unix-Systemen mit einem so genannten lachem Dateisystem abgelegt.
Signup and view all the answers
Wie unterscheiden sich die beiden Dateisystem-Typen ”UFS“ und ”ZFS“ von einander?
Wie unterscheiden sich die beiden Dateisystem-Typen ”UFS“ und ”ZFS“ von einander?
Signup and view all the answers
Welche Methode wird verwendet um eine komplizierte Software unter Linux leicht zu installieren?
Welche Methode wird verwendet um eine komplizierte Software unter Linux leicht zu installieren?
Signup and view all the answers
Was muss bei der Verwendung von mehreren Threads, die auf ein gemeinsames Datenarray zugreifen, unbedingt gewährleistet sein?
Was muss bei der Verwendung von mehreren Threads, die auf ein gemeinsames Datenarray zugreifen, unbedingt gewährleistet sein?
Signup and view all the answers
Was ist ein ”Deadlock“?
Was ist ein ”Deadlock“?
Signup and view all the answers
Wie kann man einen Deadlock verhindern?
Wie kann man einen Deadlock verhindern?
Signup and view all the answers
Welche zwei Möglichkeiten gibt es um sicherzustellen, dass Jobs (Kindprozesse) nach dem Beenden der Shell weiterlaufen?
Welche zwei Möglichkeiten gibt es um sicherzustellen, dass Jobs (Kindprozesse) nach dem Beenden der Shell weiterlaufen?
Signup and view all the answers
Welche der folgenden Optionen werden bei der Installation von Debian-Paketen mit 'apt' nicht benötigt?
Welche der folgenden Optionen werden bei der Installation von Debian-Paketen mit 'apt' nicht benötigt?
Signup and view all the answers
Study Notes
Systemsoftware - Lehrbrief
- Der Lehrbrief behandelt das Modul Systemsoftware des Master-Verbundstudiengangs Angewandte Künstliche Intelligenz.
- Der Autor ist Hans-Georg Eßer.
- Das Dokument stammt vom 21. Juni 2024.
Inhaltsverzeichnis
- Der Lehrbrief enthält ein detailliertes Inhaltsverzeichnis, das alle Kapitel und Abschnitte des Dokuments auflistet.
- Die Kapitelnummerierung entspricht den im Dokument angegebenen Kapiteln.
- Es gibt Abschnitte zu Grundlagen des Rechneraufbaus, Betriebssystemen, Linux-Installation, ausgewählten Standardanwendungen, Linux-Administration, Prozessen, Dateisystemen sowie Zusatzthemen wie Rechnerarithmetik und Docker.
Grundlagen Rechneraufbau, Betriebssysteme
- Lernziele: Grundlegende Begriffe, Komponenten einer Computeranlage, Aufbau von Rechnern (von Neumann & Harvard) und die Aufgaben eines Betriebssystems verstehen.
- Computer-Typen: Personal Computer (PCs), Server, Mobilgeräte, Embedded Devices und Echtzeitsysteme werden beschrieben.
- Computer-Komponenten: Hauptplatine, Prozessor, Busse (PCI, ISA und SCSI), Chipsatz (North Bridge, South Bridge), Universalrechner (von Neumann-Architektur) und Harvard-Architektur werden detailliert behandelt. CPU-Architekturen (RISC und CISC) werden diskutiert.
- Betriebssysteme: Aufgaben und Geschichte der Betriebssysteme werden erklärt. Das Konzept des Betriebssystems als Schnittstelle zwischen Anwendung und Hardware wird betont.
Linux-Installation und erste Schritte
- Lernziele: Linux-Installation, Anmeldung am System und die Ausführung grundlegender Aufgaben in der Shell (Kommandozeile).
- Beispiel Linux: Unterschied zwischen Linux-Kern und GNU/Linux als komplettes System.
- Partitionierung: MBR- und GPT-Systeme. Primäre, erweiterte und logische Partitionen werden erläutert.
- Installationsroutinen: Beschreibung der Installationsprozesse unter Linux. Der Unterschied zwischen grafischen und textbasierten Installationsprogrammen wird herausgestellt.
- Shell: Grundlagen der Shell-Nutzung (Kommandos, Arbeitsverzeichnis, Optionen, Argumente...). Praktische Anwendungen für die Navigation im Dateisystem und Datei-manipulation (mkdir, rmdir, cp, mv, rm) werden erklärt.
Ausgewählte Standard-Anwendungen
- Editoren: Einführung in Texteditoren wie Gnome Texteditor, Kate und Vim. Die besonderen Funktionen wie Syntax Highlighting und Befehlsmodus in Vim werden beleuchtet.
- Secure Shell: Erklärung von SSH und dessen Verwendung für den Fernzugriff auf andere Rechner. Dateitransfer mit scp. Die Vorteile der Verschlüsselung und die Prüfung der Identität des Servers werden erklärt.
- Software-Entwicklung: Einführung in die Konzepte des Compilers, Assemblers und Linkers. Praktische Demonstration mit einem Beispiel Makefile.
Linux-Administration
- Benutzer und Gruppen: Grundlegende Benutzerverwaltung, Gruppenverwaltung und Zugriffsrechte. Erklärung der Datei /etc/passwd.
- Zugriffsrechte: Konzepte und Befehle zur Verwaltung von Benutzern, Gruppen und Zugriffsrechten (chmod, chown, chgrp).
- Software-Verwaltung: Software-Installation, Updates und Abhängigkeiten. Beschreibung des Paketverwaltungssystems (z.B. apt). Die Begriffe Repository und dependency hell werden erläutert.
- System-Aktualisierung: Verfahren zur Installation von Updates.
Prozesse
- Lernziele: Vordergrund- und Hintergrund-Jobs unterscheiden und praktisch erzeugen. Job-Liste und Prozess-Liste verstehen. Veränderung von Prozessparametern mit Werkzeugen wie ´jobs´, ´fg´, ´bg´
- Linux-Jobs: Konzepte von Vordergrund- und Hintergrund-Jobs (mit &-Zeichen). Unterbrechung und Fortsetzung von Jobs. Die Behandlung von Jobs nach einem Shell-Abbruch.
- Linux-Prozesse: Einführung in den Prozessbegriff; Unterscheidung zwischen Prozessen und Jobs. Der Prozesskontrollblock (PCB) wird detailliert beschrieben. Die Behandlung von Interrupts.
- Speicherverwaltung: Konzept der Segmentierung. Der Ansatz der Adressübersetzung mit Seitentabellen. Paging wird erläutert.
Dateisystem
- Lernziele: Grundlagen alter und moderner Dateisysteme. Unix-basierte Dateisysteme (Dateien und Verzeichnisse) werden erklärt. Metadatenverwaltung inklusive Inodes und die Verwaltung von Datenblöcken.
- Allgemeine Dateisystem-Features: Überblick über grundlegende Konzepte wie Datenblöcke, Metadaten (z.B., Zugriffsrechte) und Formatierungen. Indirektion wird behandelt.
- Unix-Dateisysteme: Aufbau von Inodes, Link-Count, Dateigröße, Zugriffszeiten (atime, mtime, ctime) und Dateinamen werden beleuchtet. Administrationsfunktionen (mkfs, mount, umount, fsck).
- Beliebte Mount-Optionen: Bedeutung von Optionen wie ro (read-only) und rw (read-write)
- Dateisysteme fremder Betriebssysteme: Erläutert die Prinzipien und Nutzung von FUSES. Praktische Anwendung für die Einbindung von Dateisystemen fremder Betriebssysteme (Windows, HFS+, etc.).
### Zusatzthemen
- Rechnerarithmetik: Grundlagen reeller und ganzzahliger Zahlen, Fließkomma-Zahlen und Rundungsfehler im Computersystem.
- Docker Container: Containervirtualisierung (ohne Hypervisors), Konzepte, Anwendung und Vorteile von Docker.
- Synchronisation und Deadlocks: Konzepte des Threading, Synchronisationsprobleme und Deadlocks (wie im Beispiel der gemeinsamen Nutzung eines Kontos, bei mehreren Geldautomaten). Lösungskonzepte wie Mutexe und Semaphore.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Related Documents
Description
Dieser Lehrbrief behandelt das Modul Systemsoftware des Master-Verbundstudiengangs Angewandte Künstliche Intelligenz. Er umfasst Themen wie Rechneraufbau, Betriebssysteme und Linux sowie grundlegende Begriffe und Komponenten der Computertechnik.