Vielen Dank für die Zusendung Ihrer Anfrage! Eines unserer Teammitglieder wird Sie in Kürze kontaktieren.
Vielen Dank, dass Sie Ihre Buchung abgeschickt haben! Eines unserer Teammitglieder wird Sie in Kürze kontaktieren.
Schulungsübersicht
Einführung
- Kurze Geschichte der GNU/Linux-Lizenzierung Kernel-Versionierung Release-Zyklus Kernel-Bäume Mainline-Kernel vs. User-Space-Mechanismus vs. Richtlinie Kernel-Treiber-Alternativen RTOS vs. Linux
Speicher Management
- Virtueller Speicher im Vergleich zu physischem Speicher in der API-Platte der Kernel-Seitenzonen
Kernel-Patch
- Lebenszyklus Git-Kernel-Quelle Patch erstellen Patch prüfen Patch reparieren Patch versenden Patch geprüfter Code
Kernel-Module
- Kernel-Quellen abrufen Gerätetreiber konfigurieren/erstellen/installieren (statisch verknüpft, zur Laufzeit geladen) Lizenzierung init/exitieren EXPORT-SYMBOL GPL aus Baum makefile module-init-tools-Modul im Kernel-Baum Kconfig-Parameterübergabe spärlich
Char-Treiber
- Architektur Benutzer-/Kernel-Schnittstelle I/O-Subsystem VFS sysfs (Geräte, Bus, Treiber, Klassen), kobject/ktype/kset Linux-Kernel-Treibermodell Gerätedateien char Treiberinitialisierung Registrierung offen, Release cdev, cdev add, cdev del,... Haupt-/Nebenzahlen udev, udevmonitor, udevadm
Erweiterte Charakter-Fahrer-Operationen
- ioctl entsperrt, ioctl kompatibel, ioctl User Space API, Kernel Space API, Prozesslebenszyklus, Schlafen/Blockieren, Schlafen/Aufwachen, Warteschlange, donnernde Herde, Umfrage/Auswahl
Kernel-Debugging
- Bug-Debugging, Debuggen der Kernel-Binärsuche mit Git-Debug-Unterstützung vom Kernel, Printk, Syslogd, Klogd, Loglevels, Ratenlimit, Debug-Levels, Debuggen von selektiven Subsystemen, Debuggen durch Abfragen von Debugfs. Hoppla, Debuggen, Bestätigen von Hoppla. Magic SysRq Key kgdb/kdb JTAG
Nachverfolgung
- gcov lcov oprofile ftrace nop Tracer-Funktion Tracer Sched Switch Tracer-Funktion Graph Tracer dynamischer Tracer
Interrupts vs. Abfragen von Interrupt-Programmabschnitten, Wiedereintrittsereignisse, Interrupt-Handler, gemeinsam genutzter Interrupt-Handler, Interrupt-Fluss, Interrupt-Steuerung
- Arbeit aufschieben
obere/untere Hälfte, Softirqs, Tasklets, Arbeitswarteschlangen, Thread-Interrupts
- Parallelität
Kritische Region/Abschnitt, atomare Wettlaufbedingung, Synchronisation, Sperren, Sperrlösungen, Deadlock-Konflikt, was sperren soll? Was kann verwendet werden? Atomare Operationen, Spin-Locks, Lese-Schreiber, Spin-Locks, Semaphor, binäres Semaphor, Mutex, Leser-Schreiber, Semaphor, Vervollständigungsvariablen, sequentielle Sperren, Deaktivierung von Vorkaufsrechten und Barrieren
- Zeit
HZ Jiffies große/kleine Verzögerungen der Kernel-Timer
- Hardware-E/A
I/O-Ports I/O-Speicher Wie gehe ich mit Nebenwirkungen beim Zugriff auf Register um?
- Benutzer-Kernel Communication
put(get)_user() copy to(from)_user() Kernel-E/A-Speicherzuordnung procfs sysfs debugfs Relayfs Netlink ioctl
- Portabilität
Wortgröße, undurchsichtige Typen, vorzeichenbehaftete/nicht vorzeichenbehaftete Zeichen, Datenausrichtung, integraler Promotion-Code, Wiederverwendung, Endianess-System, Tick, Seitengröße, Befehlsreihenfolge, SMP/Preemption/hoher Speicher
- Sofern nicht anders angegeben, sind der Inhalt und diese Kursübersicht unter der Lizenz „Namensnennung – Nicht kommerziell – Weitergabe unter gleichen Bedingungen 4.0 International“ (CC BY-NC-SA 4.0) lizenziert.
Voraussetzungen
- Grundlegende Vertrautheit mit der Verwendung eines GNU/Linux-Systems als Endbenutzer
- Grundlegende Vertrautheit mit einer Kommandozeilen-Shell
- Grundlegende Kenntnisse im Bereich Benutzeroberfläche/Anwendungsentwicklung
- Mittlere C-Programmierkenntnisse
- Sollten vorher an Embedded GNU/Linux Systems Architecture teilgenommen haben (dringend empfohlen!) und/oder ein gutes Verständnis der dort beschriebenen Themen haben
35 Stunden
Erfahrungsberichte (4)
That the trainer adapts to our needs
Eduardo Fontecha - ORMAZABAL PROTECTION & AUTOMATION S.L.U.
Kurs - The Yocto Project - An Overview - hands-on
Dass es eine Menge Übungen gab.
Katarzyna Straszewska - Swiss AviationSoftware Ltd.
Kurs - Build Native iOS and Android Apps with Flutter
Maschinelle Übersetzung
Mehr über das Labor.
Sarbin - Cagayan Electric Power And Light Co., Inc.
Kurs - Flutter Development Bootcamp with Dart
Maschinelle Übersetzung
On time, training resources is readily available