
Embedded Linux mit Raspberry Pi und Co.
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
Reviews / Votes
"Der Autor beginnt kurz mit den Grundlagen der Installation und des Datentausches zwischen Host und Embedded System und kommt dann gestützt auf Praxisbeispiele zum Bau eines Kernels und zu Grundlagen der Treiberentwicklung. Gute Informationsquelle; jedes Kapitel mit einer Übersicht weiterführender Literatur."
ekz Bibliotheksservice, 06/2016
More details
Other editions
Additional editions

Person
Content
- Cover
- Impressum
- Inhaltsverzeichnis
- Einleitung
- Teil I: Einführung und Einrichtung einer Entwicklungsumgebung
- Kapitel 1: Embedded Linux
- 1.1 Desktop-Betriebssysteme
- 1.2 Bare-Metal vs. Betriebssystem
- 1.2.1 Mikroprozessoren vs. Mikrocontroller
- 1.3 Embedded Betriebssysteme
- 1.4 Die Architektur von Linux
- 1.4.1 Erläuterungen
- 1.5 Beliebte Linux-Distributionen
- 1.6 Linux installieren
- 1.6.1 Parallele Installation von Linux Mint zum vorhandenen Betriebssystem
- 1.6.2 Installation von Linux Mint in VirtualBox
- 1.7 Erfahrungen Linux Mint + VirtualBox
- 1.7.1 Größe der virtuellen Festplatte ändern
- 1.7.2 Zielpartition für VirtualBox festlegen
- 1.7.3 Umziehen der virtuellen Maschine
- 1.7.4 Nicht genügend Arbeitsspeicher
- 1.8 Weiterführende Literatur
- Kapitel 2: Netzwerkanbindung
- 2.1 Datenaustausch zwischen Host und Embedded System
- 2.1.1 Samba
- 2.1.2 FileZilla
- 2.1.3 Daten austauschen mit scp
- 2.2 Verzeichnisstruktur von Linux/Raspbian
- 2.2.1 /bin
- 2.2.2 /boot
- 2.2.3 /dev
- 2.2.4 /etc
- 2.2.5 /home
- 2.2.6 /lib
- 2.2.7 /lost+found
- 2.2.8 /media
- 2.2.9 /mnt
- 2.2.10 /opt
- 2.2.11 /proc
- 2.2.12 /root
- 2.2.13 /run
- 2.2.14 /sbin
- 2.2.15 /selinux
- 2.2.16 /srv
- 2.2.17 /sys
- 2.2.18 /tmp
- 2.2.19 /usr
- 2.2.20 /var
- 2.3 Neue Benutzer und Gruppen einrichten
- 2.3.1 Einen User hinzufügen bzw. entfernen
- 2.3.2 Gruppen hinzufügen bzw. entfernen
- 2.4 Weiterführende Literatur
- Kapitel 3: Shell-Programmierung
- 3.1 Erste Schritte
- 3.1.1 Die Kommandos »man« und »info«
- 3.2 Geschichte der Shells
- 3.3 Die Bourne-again-Shell - bash
- 3.3.1 Ein- und Ausgabeumleitung
- 3.3.2 Shell-Variablen
- 3.3.3 Kommentare
- 3.3.4 Systemkommandos in Shellscripts
- 3.3.5 Mehrere Kommandos in einer Zeile
- 3.3.6 Bedingungen/Vergleiche
- 3.3.7 Funktionen in Shellscripts
- 3.3.8 Schleifen
- 3.3.9 Professionelle Übergabe von Argumenten
- 3.3.10 Einschränkungen bei Shellscripts
- 3.4 Weiterführende Literatur
- Kapitel 4: Cross-Toolchains
- 4.1 Cross-Toolchains für Raspberry Pi B+
- 4.1.1 Toolchain und IDE für Windows
- 4.1.2 Toolchain und IDE für Linux (Mint)
- 4.1.3 Toolchain und IDE für Mac OS X
- 4.2 Die Bibliothek wiringPi
- 4.2.1 Herunterladen von wiringPi
- 4.2.2 wiringPi »bauen«
- 4.2.3 Funktionen in wiringPi
- 4.2.4 Weitere Informationen zu wiringPi
- 4.2.5 Anschlussbelegung des Raspberry Pi B+
- 4.3 Konfiguration von Code::Blocks
- 4.3.1 Auswahl des Compilers
- 4.3.2 Einstellen der Compiler-Optionen
- 4.3.3 Bibliothek(en) hinzufügen
- 4.3.4 Erweitern des Suchpfades
- 4.3.5 Toolchain executables
- 4.3.6 Testen der Toolchain
- 4.4 crosstool-ng
- 4.4.1 Vorarbeiten
- 4.4.2 Erstellen und installieren von crosstool-ng
- 4.4.3 Toolchain konfigurieren
- 4.5 Weiterführende Literatur
- Teil II: Techniken zur Programmierung von Kernel und rootfs
- Kapitel 5: Raspbian - der Kernel
- 5.1 Überblick
- 5.1.1 Einmalig durchzuführende Schritte
- 5.1.2 Zu wiederholende Schritte
- 5.2 Kernel erzeugen - detaillierte Anleitung
- 5.2.1 Einmalig durchzuführende Schritte - Details
- 5.2.2 Zu wiederholende Schritte
- 5.3 Das Shellscript mkrpi
- 5.3.1 mkrpi - das Listing zum Shellscript
- 5.3.2 Funktion und Anwendung von mkrpi
- 5.4 Weiterführende Literatur
- Kapitel 6: Das root-Dateisystem - rootfs
- 6.1 rootfs erzeugen
- 6.1.1 Benötigte Software
- 6.1.2 Die nächsten Schritte
- 6.1.3 Imagedatei erzeugen
- 6.1.4 Schreiben der Boot-Partition
- 6.1.5 Schreiben des root-Dateisystems
- 6.1.6 Das Ende naht ...
- 6.2 Alternative Methode
- 6.2.1 Beschaffung und Anwendung von Buildroot
- 6.3 Weiterführende Literatur
- Kapitel 7: Der Bootprozess
- 7.1 Bare-Metal-Systeme
- 7.2 Geräte mit Betriebssystem
- 7.2.1 Der Bootprozess des Raspberry Pi
- 7.2.2 Der Bootprozess beim BeagleBone Black BBB
- 7.2.3 Der Bootprozess beim Cubieboard
- 7.3 Allgemeine Beschreibung des Bootvorgangs
- 7.3.1 Bootloader
- 7.3.2 Die Aufgabe von Bootloadern
- 7.4 Das U-Boot und der Raspberry Pi
- 7.4.1 Sourcecode von »Das U-Boot«
- 7.5 Weiterführende Literatur
- Teil III: Grundlagen der Treiberentwicklung
- Kapitel 8: Treiber und Module I
- 8.1 Auffrischung
- 8.2 »Normale« Dateien und Gerätedateien
- 8.2.1 Schnittstellen zwischen User Space und Kernel
- 8.2.2 Schnittstellen zwischen Kernel und Hardware
- 8.2.3 Wichtige Programme im User Space
- 8.3 Weitere Voraussetzungen
- 8.4 Das erste Kernelmodul
- 8.4.1 Quelltext des Moduls und Makefile
- 8.4.2 Kompilieren des Moduls
- 8.4.3 Modul testen
- 8.4.4 Details zu nix.c/nix.ko
- 8.4.5 kbuild
- 8.5 Ein weiteres einfaches Kernelmodul
- 8.5.1 Der Sourcecode
- 8.5.2 Log-Level
- 8.5.3 Kernelmodul ausprobieren
- 8.6 Moderne Variante von hellodriver
- 8.6.1 Moderne Variante des hellodriver-Moduls
- 8.7 Ende der Einführung
- 8.8 Weiterführende Literatur
- Kapitel 9: Treiber und Module II
- 9.1 Auf dem Weg zu einem richtigen Gerät
- 9.1.1 Funktionen, Makros, Datentypen
- 9.1.2 Der Sourcecode
- 9.2 Weiterführende Literatur
- Kapitel 10: Treiber und Module III
- 10.1 Checkliste für die Treiberentwicklung
- 10.1.1 Headerdateien
- 10.1.2 Die Struktur file_operations
- 10.1.3 Initialisierung eines Treibers/Moduls
- 10.1.4 Entfernen von Treibern/Modulen
- 10.1.5 Funktion mydevice_open
- 10.1.6 Funktion mydevice_close
- 10.1.7 Schreiben und Lesen
- 10.1.8 The End
- 10.1.9 Generelle Erklärung einiger Funktionen
- 10.2 Ansteuerung »echter« Hardware
- 10.2.1 GPIO-Funktionen
- 10.2.2 GPIOs anwenden
- 10.2.3 (Mögliche) Erweiterung des Treibers
- 10.3 Weiterführende Literatur
- Teil IV: Treiberentwicklung in der Praxis
- Kapitel 11: Praxis I
- 11.1 Das serielle Schieberegister SN74HC595
- Kapitel 12: Praxis II
- 12.1 Der Baustein Maxim 7219
- 12.1.1 Beschreibung des Maxim 7219
- 12.1.2 Zeitverhalten bei der Ansteuerung
- 12.1.3 Kaskadieren mehrerer Maxim 7219/7221
- 12.2 Ansteuerung einer 8 x 8-LED-Matrix
- 12.2.1 Der Schaltplan
- 12.3 Die Treibersoftware
- 12.3.1 Das Makefile
- 12.3.2 Die Headerdatei max7219.h
- 12.3.3 Der C-Sourcecode max7219imp.c
- 12.3.4 Das Testprogramm für den Treiber
- 12.3.5 Verbesserungsvorschläge
- 12.4 Ansteuerung von 7-Segment-Anzeigen
- Kapitel 13: Praxis III
- 13.1 Der HD44780 - Aus dem Datenblatt
- 13.2 Die Hardware
- 13.3 Die Headerdatei hd44780.h
- 13.3.1 Einige Erläuterungen
- 13.4 Der Treiber hd44780.c
- 13.4.1 Erläuterung des Programms
- 13.5 Das Testprogramm im User Space
- 13.6 Weiterführende Literatur
- Anhang A: Literaturverzeichnis
- A.1 Embedded Systeme, Architektur etc.
- A.2 VirtualBox
- A.3 Samba
- A.4 Shell-Programmierung
- A.5 Toolchains und Bibliotheken
- A.6 Bootstrapping, Buildroot etc.
- A.7 Der Bootprozess
- A.8 Pointer und Strukturen in C
- A.9 Das Kernel-Buildsystem und Treiber
- A.10 Bücher
- Anhang B: Belegung der GPIO-Ports
- B.1 GPIO-Belegung gemäß wiringPi
- B.2 GPIO-Belegung gemäß Broadcom
- Anhang C: Safety und Security
- C.1 Security
- C.2 Safety
- C.2.1 Maßnahmen in der Automobilindustrie
- C.2.2 Umsetzung in der Programmierung
- C.3 Ergänzende Literatur
- Anhang D: Kopieren mit scp
- Anhang E: Code::Blocks
- E.1 Projekteinstellungen
- E.1.1 Properties
- E.1.2 Build options ...
- Stichwortverzeichnis
System requirements
File format: PDF
Copy protection: Watermark-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Use the free software Adobe Reader, Adobe Digital Editions, or any other PDF viewer of your choice (see eBook Help).
- Tablet/Smartphone (Android; iOS): Install the free app Adobe Digital Editions or another reading app for eBooks, e.g., PocketBook (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (only limited: Kindle).
The file format PDF always displays a book page identically on any hardware. This makes PDF suitable for complex layouts such as those used in textbooks and reference books (images, tables, columns, footnotes). Unfortunately, on the small screens of e-readers or smartphones, PDFs are rather annoying, requiring too much scrolling.
This eBook uses Watermark-DRM, a „soft” copy protection. This means that there are no technical restrictions to prevent illegal distribution. However, there is a personalised watermark embedded in the eBook that can be used to identify the purchaser of the eBook in the event of misuse and to provide evidence for legal purposes.
For more information, see our eBook Help page.