Embedded Linux Systems with the Yocto Project

Author: Rudolf J. Streif
Publisher: Prentice Hall
ISBN: 0133443280
Format: PDF, Kindle
Download Now
Build Complete Embedded Linux Systems Quickly and Reliably Developers are increasingly integrating Linux into their embedded systems: It supports virtually all hardware architectures and many peripherals, scales well, offers full source code, and requires no royalties. The Yocto Project makes it much easier to customize Linux for embedded systems. If you’re a developer with working knowledge of Linux, Embedded Linux Systems with the Yocto Project™ will help you make the most of it. An indispensable companion to the official documentation, this guide starts by offering a solid grounding in the embedded Linux landscape and the challenges of creating custom distributions for embedded systems. You’ll master the Yocto Project’s toolbox hands-on, by working through the entire development lifecycle with a variety of real-life examples that you can incorporate into your own projects. Author Rudolf Streif offers deep insight into Yocto Project’s build system and engine, and addresses advanced topics ranging from board support to compliance management. You’ll learn how to Overcome key challenges of creating custom embedded distributions Jumpstart and iterate OS stack builds with the OpenEmbedded Build System Master build workflow, architecture, and the BitBake Build Engine Quickly troubleshoot build problems Customize new distros with built-in blueprints or from scratch Use BitBake recipes to create new software packages Build kernels, set configurations, and apply patches Support diverse CPU architectures and systems Create Board Support Packages (BSP) for hardware-specific adaptations Provide Application Development Toolkits (ADT) for round-trip development Remotely run and debug applications on actual hardware targets Ensure open-source license compliance Scale team-based projects with Toaster, Build History, Source Mirrors, and Autobuilder

Embedded Linux mit Raspberry Pi und Co

Author: Ralf Jesse
Publisher: MITP-Verlags GmbH & Co. KG
ISBN: 3958450636
Format: PDF, ePub, Mobi
Download Now
- Embedded-Linux-Kernel erzeugen - Treiber und Kernelmodule entwickeln - Praxisbeispiele mit LED-Matrix und LC-Displays Raspberry Pi, BeagleBone Black, CubieBoard und Co. haben dazu beigetragen, das Interesse an Embedded Linux sowie dessen Programmierung und Nutzung für alltägliche Dinge zu wecken. Es wird verstärkt immer mehr auch im industriellen Umfeld eingesetzt. Dieses Buch vermittelt die Grundlagen, die für den produktiven Einsatz von Embedded Linux notwendig sind. Ralf Jesse führt am Beispiel des beliebten Minicomputers Raspberry Pi in die Handhabung und Weiterentwicklung von Embedded Linux ein. Er behandelt alle Schritte, die für die Entwicklung von Embedded-Linux-Systemen wichtig sind: Aufsetzen und Nutzen einer sogenannten Cross-Development-Plattform auf der Basis eines in einer virtuellen Maschine ausgeführten Desktop Linux Übertragen der entwickelten Software auf das Zielsystem Grundlagen von Shellscripts für komfortablere Softwareentwicklung Vermittlung der für den Bau eines Kernels und des root-Dateisystems benötigten Kenntnisse Einfaches Starten und Testen des Kernels unter Einsatz des Bootmanagers „Das U-Boot“ instieg in die Entwicklung von Gerätetreibern und Kernelmodulen Das Buch richtet sich an alle, die „mehr“ aus ihrem Embedded System herausholen wollen. Die dafür erforderlichen Linux-Kenntnisse sind keine Voraussetzung, sondern werden im Buch erarbeitet. Alternative Ansätze auf der Basis anderer Minicomputer werden ebenfalls aufgezeigt. Somit ist das Buch für alle relevant, die Embedded Linux als Betriebssystem einsetzen wollen, unabhängig von der verwendeten Hardware. Aus dem Inhalt: - Linux-Grundlagen - Shell-Programmierung - Netzwerkanbindung - Aufbau einer Cross-Entwicklungsumgebung - Erstellen eines Embedded-Linux-Kernels - Erzeugen eines root-Dateisystems - Der Bootprozess für verschiedene Embedded PCs: Raspberry Pi, BeagleBone Black und Cubieboard - Einstieg in die Entwicklung von Treibern und Kernelmodulen - Template für eigene Treiber - Ansteuerung von Hardware - Praxisbeispiele: Schieberegister, Ansteuerung von 8x8-LED-Matrizen, Steuerung von textbasierten LC-Displays

Embedded Linux

Author: Joachim Schröder
Publisher: Springer Science & Business Media
ISBN: 3540786198
Format: PDF, Kindle
Download Now
Eingebettete Systeme begegnen uns mittlerweile überall im Alltag: vom Mikrocontroller in der Wasch- maschine bis hin zum leistungsfähigen DSP im Autoradio. Noch vor wenigen Jahren wurden diese Prozessoren aufwändig in Assembler programmiert und besaßen nur in den wenigsten Fällen ein Betriebssystem. Mittlerweile aber bieten leistungsfähige und schlanke Linux-Derivate auch auf einfachen Prozessoren den Komfort der Schnittstellentreiber, des Multi- Threadings und eines Dateisystems. Die vorgestellte Hardware ist teilweise Konsumerprodukten entlehnt und somit gut erhältlich. Besonderer Wert wird auf die Praxistauglichkeit der Implementierungen gelegt, und so sind die Beispiele zur Hardwareanbindung via I2C, zur Kommunikation und zur Bildverarbeitung vollständig durch- implementiert und online frei verfügbar. Das vorliegende Buch richtet sich an Berufsanfänger, Praktiker und Studenten der Informatik und der Ingenieurswissenschaften. Weitere Informationen zum Buch sowie eine umfangreiche Quelltextsammlung sind verfügbar unter: http://www.praxisbuch.net/embedded-linux/

Mastering Embedded Linux Programming

Author: Chris Simmonds
Publisher: Packt Publishing Ltd
ISBN: 1784399027
Format: PDF, Docs
Download Now
Harness the power of Linux to create versatile and robust embedded solutions About This Book Create efficient and secure embedded devices using Linux Minimize project costs by using open source tools and programs Explore each component technology in depth, using sample implementations as a guide Who This Book Is For This book is ideal for Linux developers and system programmers who are already familiar with embedded systems and who want to know how to create best-in-class devices. A basic understanding of C programming and experience with systems programming is needed. What You Will Learn Understand the role of the Linux kernel and select an appropriate role for your application Use Buildroot and Yocto to create embedded Linux systems quickly and efficiently Create customized bootloaders using U-Boot Employ perf and ftrace to identify performance bottlenecks Understand device trees and make changes to accommodate new hardware on your device Write applications that interact with Linux device drivers Design and write multi-threaded applications using POSIX threads Measure real-time latencies and tune the Linux kernel to minimize them In Detail Mastering Embedded Linux Programming takes you through the product cycle and gives you an in-depth description of the components and options that are available at each stage. You will begin by learning about toolchains, bootloaders, the Linux kernel, and how to configure a root filesystem to create a basic working device. You will then learn how to use the two most commonly used build systems, Buildroot and Yocto, to speed up and simplify the development process. Building on this solid base, the next section considers how to make best use of raw NAND/NOR flash memory and managed flash eMMC chips, including mechanisms for increasing the lifetime of the devices and to perform reliable in-field updates. Next, you need to consider what techniques are best suited to writing applications for your device. We will then see how functions are split between processes and the usage of POSIX threads, which have a big impact on the responsiveness and performance of the final device The closing sections look at the techniques available to developers for profiling and tracing applications and kernel code using perf and ftrace. Style and approach This book is an easy-to-follow and pragmatic guide consisting of an in-depth analysis of the implementation of embedded devices. Each topic has a logical approach to it; this coupled with hints and best practices helps you understand embedded Linux better.

Embedded Linux lernen mit dem Raspberry Pi

Author: Jürgen Quade
Publisher: dpunkt.verlag
ISBN: 3864915104
Format: PDF, Docs
Download Now
Im Bereich eingebetteter Systeme ist Linux weit verbreitet. Und in Kombination mit der Embedded-Plattform Raspberry Pi bildet es ein optimales Gespann, um sich praxisorientiert Kenntnisse und Techniken anzueignen, die für die Entwicklung eingebetteter Systeme notwendig sind. Dieses einführende Lehr- und Arbeitsbuch beschreibt daher Aufbau, Konzeption und Realisierung eingebetteter Linux-Systeme am Beispiel des Raspberry Pi. Zahlreiche Beispiele sowie Tipps und Tricks machen das Thema anschaulich und erleichtern die Umsetzung in die Praxis. Nach der erfolgreichen Lektüre können Sie - einfache eingebettete System planen und realisieren - eine Cross-Entwicklungsumgebung im Rahmen einer Host-Target-Entwicklung aufsetzen - Systemsoftware konfektionieren und zu einem Embedded-Linux-Gesamtsystem zusammenbauen - die Einschränkungen bei der Applikationserstellung im Umfeld eingebetteter System einschätzen und Anwendungssoftware erstellen - den grundlegenden Aufbau von Treibersoftware nachvollziehen und einfache Treiber programmieren - die Anforderungen an Security verstehen und durch geeignete Techniken gewährleisten. Vom Systemanwender zum Systementwickler: Während die meisten Bücher rund um den Raspberry Pi zeigen, wie Sie vorhandene Systemsoftware einsetzen und für Ihre Anwendung nutzen, entwickeln Sie mit diesem Mitmach-Buch ein optimal auf Ihre eigenen Bedürfnisse angepasstes Embedded Linux!

FPGAs f r Maker

Author: Cord Elias
Publisher: dpunkt.verlag
ISBN: 3960880316
Format: PDF, Mobi
Download Now
Field Programmable Gate Arrays (FPGAs) sind relativ komplexe programmierbare Logikbausteine. Mithilfe von FPGAs können mittlerweile jedoch auch Maker und Elektronikbastler eigene Chips entwerfen. Wie das geht, zeigt Ihnen dieses Buch. Zunächst wird erklärt, was FPGAs sind und wie sie funktionieren. Es folgt eine Einführung in die Hardwarebeschreibungssprache VHDL, die für die Projekte in diesem Buch verwendet wird. Danach wird Schritt für Schritt anhand zunächst ganz einfacher Beispiele erläutert, wie man eine Schaltung mithilfe eines FPGA realisiert. Im weiteren Verlauf werden die Schaltungen anspruchsvoller. Den Abschluss bildet ein Projekt, bei dem das Spiel »Pong« in Hardware realisiert wird. Die Anzeige erfolgt auf einem RGB-LED-Matrix-Display, dessen Ansteuerung per FPGA im Detail beschrieben wird. Die Projekte im Buch werden auf Basis kostenlos verfügbarer FPGA-Entwicklungsumgebungen der Hersteller Altera, Lattice, Microsemi und Xilinx sowie günstiger FPGA-Boards konkret umgesetzt. Dabei wird auf die Übertragbarkeit auf andere Systeme geachtet. Die verwendeten Entwicklungsumgebungen und FPGA-Boards werden außerdem kurz vorgestellt. Cord Elias konzentriert sich primär auf die Vermittlung von Fähigkeiten zum selbstständigen Umgang mit FPGAs. Er nimmt die Leserinnen und Leser an die Hand und leitet sie sicher durch eine Vielzahl von Details. Dass der Spaß dabei nicht zu kurz kommt, versteht sich von selbst. Der Quellcode zu allen Design-Beispielen steht zum Download bereit.

Linux Treiber entwickeln

Author: Jürgen Quade
Publisher: dpunkt.verlag
ISBN: 3864917565
Format: PDF, ePub, Docs
Download Now
Dieses Buch bietet eine systematische Einführung in die Kernelprogrammierung und in die Entwicklung von Gerätetreibern unter Linux - angefangen bei den Grundlagen bis hin zu speziellen Treibern und Techniken. Die innerhalb des Kernels nutzbaren Technologien werden umfassend vermittelt und mit vielen wiederverwertbaren Codebeispielen illustriert. Behandelt werden unter anderem: • die Architektur des Linux-Betriebssystems • die Programmierung von Tasklets, Kernel-Threads, Workqueues und hochauflösenden Timern • die Sicherung kritischer Abschnitte • effiziente Speicherverwaltung (Objekt-Caching) • die Systemintegration des Treibers (Proc-, Sysund Device-Filesystem) • das Kernel Build System • professionelle Hardwareanbindung für den Raspberry Pi • Green-Computing (Stromsparmodi) • Realzeitaspekte • spezielle Treiber (u.a. GPIO, I2C, PCI, USB, Blockgeräte) Hilfreich für die praktische Arbeit sind außerdem Programmiertricks erfahrener Kernelhacker, Code Templates als Ausgangspunkt für eigene Entwicklungen, ein eigenes Kapitel zum Entwurf guter und performanter Treiber sowie ein Anhang mit detaillierten Beschreibungen von mehr als 700 internen Kernelfunktionen. Das Buch richtet sich an Entwickler, Kernelhacker und Linux-Interessierte mit guten Programmierkenntnissen in der Sprache C. Einsteiger in Kernelprogrammierung, in Treiberentwicklung (und in Linux) erhalten eine praxisorientierte Einführung in das Thema. Profis, wie Entwickler eingebetteter Systeme, werden es auch als wertvolles Nachschlagewerk für die tägliche Arbeit einsetzen. Die 4. Auflage ist durchgehend auf den Stand des Kernels 4 aktualisiert worden. Ergänzt wurden Themen wie Cross-Entwicklung, Device Tree, GPIO, I2C und SPI sowie die Kernelcode-Entwicklung für eingebettete Systeme, insbesondere für den Raspberry Pi.