Linux-Treiber entwickeln : eine systematische einfùhrung in die geràtetreiber- und kernelprogrammierung- jetzt auch fùr Raspberry Pi / Jürgen Quade, Eva-Katharina Kunst.

Saved in:
Bibliographic Details
Main Author: Quade, Jürgen
Other Authors: Kunst, Eva-Katharina
Format: eBook
Language:German
Published: Heidelberg, Germany : Dpunkt.verlag, 2015.
Edition:4., aktualisierte und erweiterte Auflage.
Subjects:
Online Access:Click for online access
Table of Contents:
  • Einleitung
  • Theorie ist notwendig
  • Betriebssystemarchitektur
  • Komponenten des Kernels
  • Sonstige Betriebssystemkomponenten
  • Abarbeitungskontext und Unterbrechungsmodell
  • Quellensuche
  • Kernelcode-Entwicklung in der Praxis
  • Auf der Kommandoebene entwickeln
  • Fehler finden
  • Techniken der Kernelprogrammierung
  • Coding Style: Kernelcode lesen und Kernelcodeschreiben
  • Kernelcode kodieren
  • Objektbasierte Programmierung und Entwurfsmuster im Kernel
  • Hilfsfunktionen
  • Cross-Development
  • Nicht vergessen: Auswahl einer geeigneten Lizenz
  • GPL und LGPLMPL und BSD
  • Treiber aus Sicht der Applikation
  • Die Programmierschnittstelle der Applikation
  • Zugriffsmodi
  • Einfache Treiber
  • Bevor es losgeht â#x80;Œ
  • Cross-Kompilierung
  • Den Kernel erweitern
  • Kernelmodule
  • Vom Modul zum Treiber
  • Einfaches Treibertemplate
  • Die Treibereinsprungspunkte
  • driver_open: die Zugriffskontrolle
  • AufrÃÞumen in driver_close
  • Lesezugriffe im Treiber
  • Schreibzugriffe im Treiber
  • Die Universalschnittstelle IO-Control
  • Wenn Applikationen mehrere Ein-/AusgabekanÃÞleÃơberwachen
  • Daten zwischen Kernel- und Userspace transferierenHardware anbinden
  • Datentypen und Datenablage
  • Ressourcenmanagement
  • Direkter Hardwarezugriff
  • Hardware erkennen
  • Device Tree
  • PCI
  • Treiberinstanzen
  • Treibertemplate: Basis fÃơr Eigenentwicklungen
  • Fortgeschrittene Kernelcode-Entwicklung
  • ZunÃÞchst die Ã#x9C;bersicht
  • Interrupts
  • Interruptverarbeitung klassisch
  • Threaded Interrupts
  • Interrupts, testen mit dem Raspberry Pi
  • Softirqs
  • Tasklets
  • Timer-Funktionen
  • High Resolution Timer
  • Tasklet auf Basis des High Resolution TimersKernel-Threads
  • kthread-Daemon
  • Workqueues
  • Event-Workqueue
  • Kritische Abschnitte sichern
  • Atomare Operationen
  • Mutex und Semaphor
  • Spinlocks
  • Sequencelocks
  • Interruptsperre und Kernel-Lock
  • Synchronisiert warten
  • Memory Barriers
  • Per-CPU-Variablen
  • Fallstricke
  • Vom Umgang mit Zeiten
  • Relativ- und Absolutzeiten
  • ZeitverzÃœgerungen
  • Dynamischen Speicher effizient verwalten
  • Buddy-System
  • Objekt-Caching
  • GroÃ#x9F;e Speicherbereiche reservieren
  • Speicher pro ProzessorkernSystemaspekte
  • Proc-Filesystem
  • Schreibzugriffe unterstÃơtzen
  • Sequencefiles
  • Das GerÃÞtemodell
  • Implementierungstechnische Grundlagen
  • GerÃÞtedateien automatisiert anlegen lassen
  • Treiber anmelden
  • GerÃÞte anmelden
  • Attributdateien erstellen
  • Eigene GerÃÞteklassen erstellen
  • Neue Bussysteme anlegen
  • Green Computing
  • Firmware-Interface
  • Treiber parametrieren
  • Systemintegration
  • Modutils
  • Hotplug
  • Module beim Booten laden
  • Kernel Build System