In PCs und Embedded-Geräten sind Sensoren und Aktoren oft mit dem I2C-Bus angebunden. Linux unterstützt das mit einem eigenen Subsystem, das sich auf dem Raspberry Pi ausprobieren lässt.
Mit dem flexiblen Bootloader U-Boot, einem Tftp-Server, angepasstem Kernel und Userland sowie etwas Konfiguration booten eingebettete Systeme wie der Raspberry Pi vom Netz.
Der Linux-Kernel abstrahiert und verwaltet die Zugriffe auf GPIOs, also jene Ein- und Ausgabekanäle, die beispielsweise auf dem Raspberry Pi zu finden sind. Wer sich mit einem eigenen Treiber dort einklinkt, kann mit erheblich schnelleren Peripheriezugriffen rechnen.
Wer den Minicomputer Raspberry Pi mit eigenen Kernelmodulen und Treibern voll ausschöpfen möchte, braucht erst einmal einen Eigenbau-Kernel. Mit dem passenden Quelltext und ein paar Kommandos ist der einfach zu bauen – auf dem PC oder direkt auf dem Pi.
Scheduling ist eine zentrale Aufgabe des Linux-Kernels, der sich dabei um größte Fairness bemüht. Wer aber glaubt, dass damit alle das Gleiche bekommen, der irrt.
Die wirklich große Vielfalt der ARM-Hardware stellt Kernelentwickler und Linux-Anwender vor große Herausforderungen. Device Trees und das neue Pincontrol-Subsystem sollen die Probleme lösen.
Android führt mit deutlichem Abstand die Hitparade der Smartphone-Betriebssysteme an. Die Kern-Technik beleuchtet, welche Änderungen Google für den Mobileinsatz am Linux-Kernel vorgenommen hat und was es mit Wakelocks, Binder und dem anonymen Shared Memory auf sich hat.
Wer mit Linux zu tun hat, sieht sich realen, virtuellen oder Boot-Konsolen gegenüber, begegnet klassischen, Pseudo- oder auch Controlling-Terminals. Die Kern-Technik bringt Ordnung in die babylonische Sprachverwirrung und zeigt, wie man einen eigenen Terminaltreiber schreibt.
Der Boot Tracer und Bootchart helfen dabei, den Bootvorgang detailliert zu analysieren. Schon ein paar Maßnahmen später ist das Linux-System spürbar schneller betriebsbereit.
Die Langzeitmessungen des Open Source Automation Development Lab zeigen erstmals: Mit Linux lassen sich Systeme für harte Echtzeitanforderungen realisieren. Die Kern-Technik stellt die Ergebnisse vor und erklärt, wie aus dem Standardbetriebssystem eines für Realzeitanwendungen wird.
Für KGDB, den eingebauten Debugger des Linux-Kernels, gibt es die beiden Frontends KDB und GDB. Mit KDB und der richtigen Konfigurationsdatei kann es unter Ubuntu sofort losgehen. Wer Hochsprachen-Debugging mit GDB wünscht, installiert noch Virtualbox, Socat und einen speziellen Kernel.
Den Kern eines laufenden Betriebssystems zu debuggen war und ist problematisch. Doch der Emulator Qemu ermöglicht plattformunabhängiges Kernel- und Modul-Debugging auf Hochsprachen-Niveau. Dank der virtuellen Maschine braucht der Kernelhacker noch nicht einmal einen zweiten Rechner.
Der Linux-Kernel versetzt einzelne Geräte in den Stromsparzustand, wenn er sie gerade nicht benötigt. Dank des Runtime-Powermanagement-Subsystems läuft das gut organisiert ab.
Wer schläft, spart. Daher organisiert der Linux-Kernel das kollektive Schlafen der Rechnerkomponenten, bis das komplette System ruht. Er strukturiert Abhängigkeiten baumartig und verwendet ein Phasenmodell. Damit sind bei Bedarf alle Komponenten schnell wieder hellwach.
LXC legt mit wenig Overhead Systemcontainer an, um darin beispielsweise sicherheitskritische Dienste zu isolieren. Als Anwender müssen Sie jedoch einige Maßnahmen ergreifen, um ein System im System aufzubauen – und überhaupt hineinzukommen.














