- Grundlegende Vertrautheit mit der Verwendung eines GNU/Linux-Systems (z.B. Ubuntu) als Endbenutzer im Benutzerbereich
- Grundlegende Vertrautheit mit einer Kommandozeilen-Shell
- Grundkenntnisse im Bereich User Space/Applikationsentwicklung mit GNU/Linux
- Grundkenntnisse über eingebettete Prozessoren und Entwicklungsboards
- Grundlegende C-Programmierkenntnisse
- …und/oder Angst, das oben genannte zu lernen…
Ziele des Kurses
Vermittlung eines Verständnisses für die Grundlagen von embedded GNU/Linux, wie die einzelnen Teile zusammenpassen. Welche Komponenten werden benötigt, um ein eingebettetes GNU/Linux-System zu bauen, woher man sie bekommt und wie man sie konfiguriert/erstellt/installiert? Woher bekomme ich Hilfe? Was ist mit den Software-Lizenzen? Praktische Übungen vermitteln Ihnen die nötige praktische Erfahrung, um nach erfolgreichem Abschluss dieses Kurses eigene eingebettete GNU/Linux-Systeme zu entwickeln.
Beschreibung
In diesem fünftägigen Kurs werden die Konzepte von Embedded GNU/Linux anhand von praktischen Übungen in Kombination mit einer Schulung veranschaulicht. Er ist darauf ausgelegt, Sie schnell auf den neuesten Stand zu bringen. Die Philosophie, die Konzepte und die Befehle, die notwendig sind, um GNU/Linux effektiv zu nutzen, werden durch eine Kombination aus Theorie und praktischem Training beschrieben.
Erfinden Sie das Rad nicht neu, sondern lernen Sie von einem erfahrenen Trainer und nehmen Sie ein funktionierendes Wissen über GNU/Linux und die Fähigkeit, es effektiv in Ihrem eigenen eingebetteten Entwicklungsprojekt einzusetzen, mit nach Hause.
Wer sollte teilnehmen?
Manager, Projektleiter, Software-, Hardware-, Entwicklungs-, Systemingenieure, Tester, Administratoren, Techniker und andere an der Technologie Interessierte, die so schnell wie möglich verstehen wollen, wie Embedded GNU/Linux funktioniert. Sie müssen GNU/Linux benutzen oder Sie müssen sich den Luxus leisten, zu entscheiden, ob es Sinn macht, es zu benutzen oder nicht. Vielleicht haben Sie bereits versucht, Embedded GNU/Linux zu benutzen, sind sich aber nicht ganz sicher, ob Sie alles richtig gemacht haben. Sie benutzen zur Zeit ein anderes Betriebssystem und wollen herausfinden, ob GNU/Linux nicht besser und/oder billiger ist.
Lieferoptionen
Das gesamte Schulungsmaterial ist in englischer Sprache, aber die Präsentation kann je nach Wunsch in Englisch oder Deutsch erfolgen, und zwar weltweit.
- vor Ort - von einem Ausbilder geleitet
- Online - unter Anleitung eines Ausbilders
- Kombination aus Vor-Ort- und Online-Schulung - unter Anleitung des Kursleiters
Einführung
- Geschichte von Unix/Linux
- Freie Software
- Unix-Philosophie
HOST-SPIELPLATZ
- Spielen mit GNU/Linux
- Architektur
- Shell
- Berechtigungen
- FHS (Dateihierarchie-Standard)
- harte/weiche Links
- reale/effektive uid/gid
- Planer
- Prozess/Task/Thread
- IPC einfach/erweitert
- Leitungen
- Signale
- Nachrichten-Warteschlangen
- Semaphoren
- Gemeinsamer Speicher
- Steckdosen
- select/poll
- Zu vermeidende IPC-Techniken
- Host Linux einrichten
- Yocto/ELDK (cross/target Werkzeuge, Bibliotheken, Pakete)
- Terminal-Emulation
- Server (DHCP, tftp, NFS)
ZIEL-SPIELPLATZ
- Dateien, die benötigt werden, um etwas auf dem Board laufen zu lassen
- JTAG/BDI-Konfiguration
- u-boot (auschecken, konfigurieren, erstellen)
- Kernel (auschecken, konfigurieren, bauen)
- rootfs
- flacher Gerätebaum
- build/execute, was von oben auf die Zielplatine anwendbar ist
- verschiedene rootfs
- CRAMFS
- ramdisk
- MTD
- JFFS2
- roEXT2
- ubi
- Erzeugen/Ausführen der oben genannten Funktionen auf der Zielplatine
- Vergleich von Root-Dateisystemen
- Fehlersuche
- einfache Werkzeuge
- lokal/entfernt
- Benutzer/Kernel
- gdb
- gdbserver
- JTAG/BDI (wahlweise)
- Profilerstellung
- gprof
- gcov
- oprofile
REAL-TIME
- voraussetzungen
- Unterbrechungen
- ablaufinvarianter Code
- echtzeit Linux
- explizite/implizite Präemptionspunkte
- Echtzeit-Preemption-Patch
- vollständig präemptiver Kernel
- Harte Echtzeit-Erweiterungen
- Adeos/Xenomai
- Adeos-Patch
- xenomai
- Kernel patchen/konfigurieren/erstellen
- an Bord ausführen
SW-FREIGABE
- verwaltung
- Entwicklung
- Wie reproduziert man eine SW-Freigabe?
MISC
- getopt
- Endianess
- Cheat-Sheets
Wenn nicht anders angegeben, steht der Inhalt dieses Kurses unter der Lizenz Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).
United Arab Emirates - Embedded Linux Systems Architecture
Qatar - Embedded Linux Systems Architecture
Egypt - Embedded Linux Systems Architecture
Saudi Arabia - Embedded Linux Systems Architecture
South Africa - Embedded Linux Systems Architecture
Brasil - Embedded Linux Systems Architecture
Canada - Embedded Linux Systems Architecture
中国 - Embedded Linux Systems Architecture
香港 - Embedded Linux Systems Architecture
澳門 - Embedded Linux Systems Architecture
台灣 - Embedded Linux Systems Architecture
USA - Embedded Linux Systems Architecture
Österreich - Embedded Linux Systems Architecture
Schweiz - Embedded Linux Systems Architecture
Deutschland - Embedded Linux Systems Architecture
Czech Republic - Embedded Linux Systems Architecture
Denmark - Embedded Linux Systems Architecture
Estonia - Embedded Linux Systems Architecture
Finland - Embedded Linux Systems Architecture
Greece - Embedded Linux Systems Architecture
Magyarország - Embedded Linux Systems Architecture
Ireland - Embedded Linux Systems Architecture
Luxembourg - Embedded Linux Systems Architecture
Latvia - Embedded Linux Systems Architecture
España - Embedded Linux Systems Architecture
Italia - Embedded Linux Systems Architecture
Lithuania - Embedded Linux Systems Architecture
Nederland - Embedded Linux Systems Architecture
Norway - Embedded Linux Systems Architecture
Portugal - Embedded Linux Systems Architecture
România - Embedded Linux Systems Architecture
Sverige - Embedded Linux Systems Architecture
Türkiye - Embedded Linux Systems Architecture
Malta - Embedded Linux Systems Architecture
Belgique - Embedded Linux Systems Architecture
France - Embedded Linux Systems Architecture
日本 - Embedded Linux Systems Architecture
Australia - Embedded Linux Systems Architecture
Malaysia - Embedded Linux Systems Architecture
New Zealand - Embedded Linux Systems Architecture
Philippines - Embedded Linux Systems Architecture
Singapore - Embedded Linux Systems Architecture
Thailand - Embedded Linux Systems Architecture
Vietnam - Embedded Linux Systems Architecture
India - Embedded Linux Systems Architecture
Argentina - Embedded Linux Systems Architecture
Chile - Embedded Linux Systems Architecture
Costa Rica - Embedded Linux Systems Architecture
Ecuador - Embedded Linux Systems Architecture
Guatemala - Embedded Linux Systems Architecture
Colombia - Embedded Linux Systems Architecture
México - Embedded Linux Systems Architecture
Panama - Embedded Linux Systems Architecture
Peru - Embedded Linux Systems Architecture
Uruguay - Embedded Linux Systems Architecture
Venezuela - Embedded Linux Systems Architecture
Polska - Embedded Linux Systems Architecture
United Kingdom - Embedded Linux Systems Architecture
South Korea - Embedded Linux Systems Architecture
Pakistan - Embedded Linux Systems Architecture
Sri Lanka - Embedded Linux Systems Architecture
Bulgaria - Embedded Linux Systems Architecture
Bolivia - Embedded Linux Systems Architecture
Indonesia - Embedded Linux Systems Architecture
Kazakhstan - Embedded Linux Systems Architecture
Moldova - Embedded Linux Systems Architecture
Morocco - Embedded Linux Systems Architecture
Tunisia - Embedded Linux Systems Architecture
Kuwait - Embedded Linux Systems Architecture
Oman - Embedded Linux Systems Architecture
Slovakia - Embedded Linux Systems Architecture
Kenya - Embedded Linux Systems Architecture
Nigeria - Embedded Linux Systems Architecture
Botswana - Embedded Linux Systems Architecture
Slovenia - Embedded Linux Systems Architecture
Croatia - Embedded Linux Systems Architecture
Serbia - Embedded Linux Systems Architecture
Bhutan - Embedded Linux Systems Architecture