Experience Embedded

Professionelle Schulungen, Beratung und Projektunterstützung

Linux-Schulung: Systemprogrammierung - Präsenz-Training

  • Inhalt
     
  • Ziele -
    Ihr Nutzen
  • Teilnehmer
     
  • Voraussetzungen
     

Diese Linux-Schulung beleuchtet die Programmierschnittstelle (API) des Betriebssystems Linux/Unix gemäß dem POSIX-Standard und der Single Unix Specification.

Sie beherrschen die Anwendung der Systemaufrufe, kennen die Implementation des Dateisystems und verstehen das Prozessmodell.

Sie kennen die Kriterien für die Auswahl von klassischen Prozessen und Multithreading.

Sie beherrschen die verschiedenen Modelle der Interprozesskommunikation und können asynchrone Ereignisse in Ihren Programmen verarbeiten.

Sie beherrschen den Aufbau von Client-/Server- Applikationen mittels Sockets und der Internet-Protokollfamilie (TCP/IP).

Die Linux-Schulung richtet sich an Anwendungs- und Systemprogrammierer.

Praktische Erfahrung im Umgang mit Linux/Unix-Systemen und solide Kenntnisse der Programmiersprache C oder C++. Für Beispielprogramme und Übungen kommt C zum Einsatz.

Grundlagen der System-Programmierung

  • Die Unix-Philosophie / "Linux vs. Unix"
  • Architektur-Prinzipien
  • Abgrenzung zur Treiber-Programmierung
  • Geräteunabhängige Ein-/Ausgabe
  • Abgrenzung zu spezifischen Bibliotheken (C/C++)
  • Virtueller Speicher und Memory-Management

Resource Limits

Dynamischer Speicher

  • Grundlagen zu `malloc` und `free`
  • Tools für Debugging und Optimierung

Erzeugung und Verwaltung von Prozessen

  • Grundlagen des Rechte-Systems
  • Prozessrechte unter dem POSIX-Standard

Signalisierungsmechanismen

  • Von den Grundlagen zu den Fallgruben
  • Timer und Intervall-Timer

Multithreading

  • Posix-Threads und Alternativen
  • Performance-Aspekte
  • Synchronisationskonzepte
  • Auswahlkriterien: Threads vs. Prozesse

Scheduling und Prioritäten

Fortgeschrittene Ein-/Ausgabe

  • Memory-Mapped Files
  • Blocking- vs. Non-Blocking
  • Multiplexing

Tools zur Fehlersuche

Linux im Netzwerk

  • Grundlegendes zu TCP/IP
  • Netzwerk-Adapter
  • TCP- vs. UDP-Sockets
  • Möglichkeiten zum Muliplexing
  • TCP-Client/Server
  • UDP-Client/Server
  • Namensauflösung
  • Höhere Protokollebenen

Zu allen obigen Themen

  • "Code-Walks" durch Beispielprogramme
  • Praktische Übungen

Im Preis enthalten:
Mittagessen, Getränke, Trainingsunterlagen und Ihr Teilnahmezertifikat


ALL INCLUSIVE!

Verwandte Trainings

Embedded-Linux-Schulung: Embedded-Echtzeit-Linux vom Bootloader bis zum Realtime-System (Linux-RTOS) - Präsenz-Training
Anmeldecode: LIN-RTD

Embedded-Linux-Architektur: Kernel-Treiberentwicklung - Präsenz-Training
Anmeldecode: LIN-AR

Embedded-Linux für Test und Support - Präsenz-Training
Anmeldecode: LIN-T

Yocto Schulung: Grundlagen und Anwendung - Präsenz-Training
Anmeldecode: YOCTO

Embedded-Linux-Softwareentwicklung - Präsenz-Training
Anmeldecode: LIN-SWE

Linux Multithread-/Multicore-Programmierung - Präsenz-Training
Anmeldecode: LIN-MMP

Softwarerecht: Haftungsrisiken beim Einsatz von Embedded-Software und Open-Source-Software - Präsenz-Training
Anmeldecode: SWRECHT

Coaching: (Embedded) Linux-Programmierung
Anmeldecode: C-LIN-PRG


Verwandte Trainings

Präsenz-Training

Preis *Dauer
-4,5 Tage
Anmeldecode: LIN-SYS
* Preis je Teilnehmer, in Euro zzgl. USt.
> Download Blanko-Anmeldeformular> Trainingsbeschreibung als PDF

Onsite-Training

In maßgeschneiderten Workshops kombinieren wir Ihre konkreten Projektaufgaben mit unserem Trainingsangebot. Dabei berücksichtigen wir Ihre Anforderungen bezüglich Inhalt, Zeit, Ort, Dauer, technischem Umfeld und Vermittlungsmethodik.

Für Ihre Anfrage oder weiterführende Informationen stehen wir Ihnen gern zur Verfügung.

> Trainingsbeschreibung als PDF

Live-Online - Deutsch

Dauer
4,5 Tage  

Coaching

Unsere Coaching-Angebote bieten den großen Vorteil, dass unsere Experten ihr Wissen und ihre Erfahrungen direkt in Ihren Lösungsprozess einbringen und damit unmittelbar zu Ihrem Projekterfolg beitragen.

Coaching: (Embedded) Linux-Programmierung

Linux-Schulung: Systemprogrammierung - Präsenz-Training

Inhalt

Grundlagen der System-Programmierung

  • Die Unix-Philosophie / "Linux vs. Unix"
  • Architektur-Prinzipien
  • Abgrenzung zur Treiber-Programmierung
  • Geräteunabhängige Ein-/Ausgabe
  • Abgrenzung zu spezifischen Bibliotheken (C/C++)
  • Virtueller Speicher und Memory-Management

Resource Limits

Dynamischer Speicher

  • Grundlagen zu `malloc` und `free`
  • Tools für Debugging und Optimierung

Erzeugung und Verwaltung von Prozessen

  • Grundlagen des Rechte-Systems
  • Prozessrechte unter dem POSIX-Standard

Signalisierungsmechanismen

  • Von den Grundlagen zu den Fallgruben
  • Timer und Intervall-Timer

Multithreading

  • Posix-Threads und Alternativen
  • Performance-Aspekte
  • Synchronisationskonzepte
  • Auswahlkriterien: Threads vs. Prozesse

Scheduling und Prioritäten

Fortgeschrittene Ein-/Ausgabe

  • Memory-Mapped Files
  • Blocking- vs. Non-Blocking
  • Multiplexing

Tools zur Fehlersuche

Linux im Netzwerk

  • Grundlegendes zu TCP/IP
  • Netzwerk-Adapter
  • TCP- vs. UDP-Sockets
  • Möglichkeiten zum Muliplexing
  • TCP-Client/Server
  • UDP-Client/Server
  • Namensauflösung
  • Höhere Protokollebenen

Zu allen obigen Themen

  • "Code-Walks" durch Beispielprogramme
  • Praktische Übungen