Systemnahe Programmierung unter Linux

Dieser Kurs wird seit März 2020 als online-Schulung durchgeführt. Weitere Infos!


Unter UNIX gilt seit jeher der Leitsatz "Everything is a file" - das ist umso mehr wahr unter Linux. In diesem Kurs wird Anwendungsprogrammierung auf unterster Ebene gezeigt, wo sich die Schönheit am des Systems ehesten offenbart (manche sind hier anderer Meinung - die werden aber eines besseren belehrt). Der Kurs soll ein Verständnis für die grundlegenden Konzepte vermitteln und somit helfen, die Effizienz und Eleganz von Linux optimal zu nutzen.


Teilnehmerkreis:
Der Kurs wendet sich an Anwendungsprogrammierer, die vor der Aufgabe stehen, systemnahe Software für Linux neu zu entwickeln oder von einem anderen Betriebssystem nach Linux zu portieren. Die Teilnehmer sollten fundierte Kenntnisse in C mitbringen; Kenntnisse von Betriebssystemen sind von Vorteil.

Folgende Themen sind Bestandteil dieser Schulung:
  • Driverprogrammierung. Hier wird ein kurzer Ãœberblick gegeben, um einen Eindruck der Schnittstellen zwischen Kernel und Userspace zu vermitteln.
  • Ein Blick aus dem Userspace in den Kernel. Device Files, sysfs, procfs. Wie geht man mit den Schnittstellen um, und wann verwendet man welche?
  • Netzwerkprogrammierung, oder: warum ist da so wenig Unterschied zwischen Sockets und Devices? Was sind UNIX Domain Sockets?
  • Serielle Schnittstellen. Das "termios" Package verdient ein eigenes Kapitel, so leid es mir auch tut.
  • Die "Neuen": inotify, timerfd, eventfd, signalfd, u.a.
  • Prozesse. Wie und wann verwende ich den fork() Systemcall? Wie geht das mit den Filedeskriptoren? Das Thema Signalhandling wird hier ebenfalls behandelt.
  • Multithreading/Parallele Programmierung - das Posix Threads API, und die Linux-spezifischen Erweiterungen. Synchronisations- und Kommunikationsmechanismen, Scheduling-Arten ("Policies"), Wege zur Vermeidung von Priority Inversion, Stackhandling.
  • Realtime. Obwohl Linux (noch) nicht für "Hard" Realtime in Frage kommt, ist die Unterstützung von Realtime-Anforderungen sehr gut. Ein Ãœberblick sowohl über die Möglichkeiten als auch (besonders) über die Gefahren.
  • Shared Libraries. Linker Optionen und verschiedene Arten, eine Shared Library zu laden.
  • Verschiedenes. Debugging (gdb, strace, valgrind), Filesystemrechte, Syslog, Resource-Limits, USB Programmierung im Userspace, u.v.a.m.


Dozent: Dipl.-Ing. Jörg Faschingbauer

Kurs-Termine:
  • Von Montag, dem 4. März, 2024 bis Freitag, den 8. März, 2024 (5 Tage)
  • Von Montag, dem 13. Mai, 2024 bis Freitag, den 17. Mai, 2024 (5 Tage)

Zeitdauer:
5 Kurstage



Preise pro Tag für diesen Kurs:

Hemmenhofen am Bodensee    399,- € ohne MwSt.
in unmittelbarer Nähe von Konstanz und Zürich
Nürnberg 419,- € ohne MwSt.
Stuttgart, Karlsruhe, Freiburg, Ulm    409,- € ohne MwSt.
Berlin 419,- € ohne MwSt.
München, Frankfurt, Köln 419,- € ohne MwSt.
Unser bestes Angebot:    494,- € ohne MwSt.
Preis pro Kurstag inklusive Ãœbernachtung mit Vollpension im 4-Sterne Hotel Hoeri direkt am Bodensee mit Spa, Sauna, Fitness-Bereich, Swimming-Pool und eigenem Strand am See


Achtung:
Bitte beachten Sie unser Spezialangebot in Hemmenhofen: Für nur 96,- € Aufschlag pro Tag erhalten eine Ãœbernachtung im 4-Sterne-Hotel Hoeri direkt am Bodensee mit Vollpension und Pausenverköstigungen während des Kurses. Zusätzlich wird dann jeder Kurs-Tag mit einem viergängigen Menu abgerundet. Lassen Sie sich überraschen! Unsere Kunden aus Baden-Württemberg und der Schweiz konnten wir bisher immer sowohl was das Kulinarische und vor allem das Fachliche betrifft immer zur vollen Zufriedenheit überzeugen!
Der Kurspreis beinhaltet zusätzlich:
Schulungsunterlagen

© Der Inhalt und die Bilder dieser Seite unterliegen dem Copyright wie im Impressum beschrieben.