7343
Kommentar:
|
← Revision 56 vom 2024-04-30 06:40:53 ⇥
7401
|
Gelöschter Text ist auf diese Art markiert. | Hinzugefügter Text ist auf diese Art markiert. |
Zeile 116: | Zeile 116: |
Rechnern --- Datum/Timezone setzen --- gcc --- Python 3 --- Cross-Kompilierung --- Programmbeispiele | Rechnern --- Dateien schnell übertragen/synchronisieren mit rsync --- Datum/Timezone setzen --- gcc --- Python 3 --- Cross-Kompilierung --- Programmbeispiele |
Embedded Linux 2024
Allgemeines
Dienstag, 9:50 - 11:20 im J3.19, 11:40 - 13:10 + 14:00 - 15:30 im G2.16
⚠️ ALLES WICHTIGE ZUM ABLAUF DER VERANSTALTUNG ⚠️
https://hhoegl.informatik.hs-augsburg.de/elinux/kurs/Embedded-Linux-2024.html
Fragenkatalog (wächst sicher noch)
https://hhoegl.informatik.hs-augsburg.de/elinux/kurs/Fragen.html
1. Treffen (26.3.2024)
- Verschiedene Boards von 2000 bis jetzt https://hhoegl.informatik.hs-augsburg.de/elinux/kurs/memo-02.pdf
- Musterbeispiel "Beregnungssteuerung" https://hhoegl.informatik.hs-augsburg.de/elinux/kurs/memo-01.pdf
- Übungen https://hhoegl.informatik.hs-augsburg.de/elinux/kurs/uebungen/
2. Treffen (9.4.2024)
Wir haben über den Bootvorgang gesprochen (MELPv3, Kap. 3)
Hausaufgaben
MELPv3, Kap. 3 (nochmal) lesen
Mal woanders reinschauen, z.B. in How Linux Works von Brian Ward, Kap. 5.1- 5.4: "How the Linux Kernel Boots" https://learning.oreilly.com/library/view/how-linux-works/9781098128913/c05.xhtml
U-Boot Kommandos ausprobieren (Beagle Bone Black)
Leider hat der RPi von Haus aus kein U-Boot installiert. Ganz Verwegene sollten U-Boot auf den Pi bringen. Anleitungen gibt es genug im Netz, z.B. https://www.thegoodpenguin.co.uk/blog/build-boot-linux-on-raspberry-pi-3-model-b
Blog von Robert C. Nelson (Debian: Getting Started with the BeagleBone Black). Er ist Applikationsingenieur bei Digikey, einem Distributor und macht u.a. Anpassungen an den AM335x von Texas Instruments. Zeigt, wie man ein Linux aus Einzelteilen zusammenbaut.
https://forum.digikey.com/t/debian-getting-started-with-the-beaglebone-black/12967
3. Treffen (16.4.2024)
Ich kann leider an dem Tag nicht an der Hochschule sein. Es wird also keine Vorlesung im J3.19 geben.
Machen Sie am besten weiter mit den Übungen in https://hhoegl.informatik.hs-augsburg.de/elinux/kurs/uebungen . Zum Beispiel Anbindung an Internet mit nmcli, U-Boot kompilieren und Flashen, ...
Die Sache von letzter Woche mit dem USB-zu-UART Adapter am WSL2 hat sich mittlerweile geklärt. Herr Schäferling weiß Bescheid.
Lesen Sie schon mal das Kap. 4 in MELPv3. Es geht um den Kernel.
Sie koennen gerne ab etwa 12 Uhr wieder in den G2.16 kommen, so wie letzte Woche.
4. Treffen (23.4.2024)
Anregung "Skilltest" unter https://www.linux4embedded.de
Mal bootterm testen - https://github.com/wtarreau/bootterm.git. Kann man das auch Cross-Kompilieren für BBB/RPi?
Kommandozeilen zum Bauen von Cross-Toolchain (ch02) und eigenstaendigem U-Boot (ch03)
https://hhoegl.informatik.hs-augsburg.de/elinux/kurs/2024/elinux-remote/README.md
U-Boot Meldungen
https://hhoegl.informatik.hs-augsburg.de/elinux/kurs/2024/elinux-remote/ubootmsg-log.txt
Versionierung ist bei OSS ganz wichtig, mal bei https://semver.org und https://calver.org nachsehen. Guter c't Artikel zum Thema:
https://hhoegl.informatik.hs-augsburg.de/elinux/kurs/ct.2021.24.128_130.Bedeutung-2.0.0.pdf
5. Treffen (30.4.2024)
Nachträge von letzter Woche
- https://hhoegl.informatik.hs-augsburg.de/elinux/kurs/2024/Lichee_RV_Nano.pdf
- https://hhoegl.informatik.hs-augsburg.de/elinux/kurs/2024/terminal-mux.md
- Alle die einen RPi haben sollen recherchieren, wie der Bootvorgang genau abläuft. Es gibt einige Anleitungen die zeigen, wie der U-Boot Bootloader in den Bootvorgang eingeschleust werden kann.
Neuigkeiten
Siehe Notizen.md in https://hhoegl.informatik.hs-augsburg.de/elinux/kurs/2024/MicroSD-Karten/24-1/
Hier geht es nochmal verstärkt darum, wie man mit dem Embedded Linux Board vernünftig arbeiten kann: Zugang über den UART mit Terminal Emulator microcom und bootterm --- Anpassen der Terminalgroesse --- Einrichten von bash, vim, ssh Zugang, tmux --- praktische Tools fd und rg --- Netzwerkverbindung vom Hostrechner zum Target über USB oder Ethernet-Kabel einrichten mit ip und nmcli --- DNS Server --- Zugang mit ssh und scp; scp vom Host zum Target; scp vom Target zu anderen Rechnern --- Dateien schnell übertragen/synchronisieren mit rsync --- Datum/Timezone setzen --- gcc --- Python 3 --- Cross-Kompilierung --- Programmbeispiele in den Programmiersprachen C, C++, Go, Rust, Python.
In MELPv3 sollten Sie nun beim Kapitel 4 "Configuring and Building the Kernel" sein.
Die aktuellen Aufgaben sind
- U-Boot selber kompilieren und auf eigene SD-Karte schreiben
- Kernel selber kompilieren und auf SD-Karte schreiben
- U-Boot bootet Kernel
- U-Boot lädt Kernel über tftp/nfs über das Netz (RootFS kommt später)
Themenvorschläge für Master
- Zwei Themen sind schon vergeben:
- Vergleich Barebox mit U-Boot (Milenkovic)
- Minimal Yocto Image (Bauer)
- Gute Anregungen unter https://elinux.org/ELC_Europe_2023_Presentations (und frühere Jahre)
- "Kas" (Fetching, Configuring and Building Your Bitbake Project with Just One Command) https://elinux.org/images/b/b1/ELC23-kas.pdf
- Echtzeit-Linux, RT-Preempt, Xenomai
- Testumgebungen: Tbot (https://www.denx.de/project/tbot), Labgrid (https://github.com/labgrid-project/labgrid), Lava (https://www.lavasoftware.org)
- Software Updateverfahren (RAUC, SWupdate, fwup), Foliensatz zu RAUC von ELCE22
- Boot Tracing, Boot Charts (https://hhoegl.informatik.hs-augsburg.de/elinux/kt/kt-64)
- Device Trees (aktueller Stand, dynamisch, Overlay, ...) (https://hhoegl.informatik.hs-augsburg.de/elinux/kt/kt-93/kt93.pdf)
Übersichten, Quickrefs, etc.
Tmux Quickref
https://hhoegl.informatik.hs-augsburg.de/pub/tmux/tmux-quickref/
Freies Buch "LPIC Essentials"
Put yourself in command
https://flossmanuals.net, https://archive.flossmanuals.net/command-line/
Siehe Infos zum LPIC Vorbereitungskurs https://hhoegl.informatik.hs-augsburg.de/hhwiki/LPIC
Buch "Efficient Linux at the Command Line" https://learning.oreilly.com/library/view/efficient-linux-at/9781098113391/
Umfangreiches Schulungsmaterial von Bootlin (ehem. "Free Electrons")
Schnellreferenzen
http://www.pixelbeat.org/cmdline.html
https://www.olimex.com/wiki/Linux-Commands (statt ifconfig, route, netstat, iwconfig nun ip und iw verwenden)
Bücher von Derek Molloy (Dublin City University)
Exploring BeagleBone https://exploringbeaglebone.com, https://learning.oreilly.com/library/view/exploring-beaglebone-2nd/9781119533160/
Exploring Raspberry Pi https://www.exploringrpi.com
Bone101 https://beagleboard.github.io/bone101/Support/bone101/
Brian Ward, How Linux Works, 3rd edition, No Starch Press, 2021. https://learning.oreilly.com/library/view/how-linux-works/9781098128913
Sehr schönes Embedded Linux Tutorial in fünf Teilen von George Hilliard. Es ist 2019/2020 entstanden und verwendet den Raspberry Zero W.
https://www.thirtythreeforty.net/series/mastering-embedded-linux/