Linux Kernel Development
Linux Kernel Development details the design and implementation of the Linux kernel, presenting the content in a manner that is beneficial to those writing and developing kernel code, as well as to programmers seeking to better understand the operating system and become more efficient and productive in their coding.
The book details the major subsystems and features of the Linux kernel, including its design, implementation, and interfaces. It covers the Linux kernel with both a...
Building Embedded Systems with CAN Bus: Practical Techniques for Microcontroller-Based Systems in Automotive, Robotics,
Practical UML Statecharts in C/C++: Event-Driven Programming for Embedded Systems
Practical UML Statecharts in C/C++ Second Edition bridges the gap between high-level abstract concepts of the Unified Modeling Language (UML) and the actual programming aspects of modern hierarchical state machines (UML statecharts). The book describes a lightweight, open source, active object (actor) framework, called QP that enables direct manual coding UML statecharts and concurrent event-driven applications in C or C++. This book is presented in two parts. In Part I, you get a practical...
Arm Architecture Reference Manual
Produced by the architects that are actively working on the ARM specification, this book contains detailed information about all versions of the ARM and ThumbTM instruction sets, the memory management and cache functions, and optimized code examples. Both an architectural overview and programmer's model are presented. Coverage also includes 26-bit architectures and the System Control Coprocessor.
Understanding Linux Network Internals: Guided Tour to Networking on Linux
If you've ever wondered how Linux carries out the complicated tasks assigned to it by the IP protocols -- or if you just want to learn about modern networking through real-life examples -- Understanding Linux Network Internals is for you.
Like the popular O'Reilly book, Understanding the Linux Kernel, this book clearly explains the underlying concepts and teaches you how to follow the actual C code that implements it. Although some background in the TCP/IP protocols is helpful, you can learn...
Better Embedded System Software
This book distills the experience of more than 90 design reviews on real embedded systems into a set of bite-size lessons learned in the areas of software development process, requirements, architecture, design, implementation, verification & validation, and critical system properties.
Each chapter describes an area that tends to be a problem in embedded system design, symptoms that tend to indicate you need to make changes, the risks of not fixing problems in this area, and concrete ways to...
Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14
Coming to grips with C++11 and C++14 is more than a matter of familiarizing yourself with the features they introduce (e.g., auto type declarations, move semantics, lambda expressions, and concurrency support). The challenge is learning to use those features effectively—so that your software is correct, efficient, maintainable, and portable. That’s where this practical book comes in. It describes how to write truly great software using C++11 and C++14—i.e. using modern C++.
Topics...
ARM Cortex-M a Nivel de Registro de Programación en C: Una Guía Práctica para Bare-Metal de Desarrollo integrado, de
Code Complete
Widely considered one of the best practical guides to programming, Steve McConnell’s original CODE COMPLETE has been helping developers write better software for more than a decade. Now this classic book has been fully updated and revised with leading-edge practices—and hundreds of new code samples—illustrating the art and science of software construction. Capturing the body of knowledge available from research, academia, and everyday commercial practice, McConnell synthesizes the most...
Linux System Programming: Talking Directly to the Kernel and C Library
Write software that draws directly on services offered by the Linux kernel and core system libraries. With this comprehensive book, Linux kernel contributor Robert Love provides you with a tutorial on Linux system programming, a reference manual on Linux system calls, and an insider’s guide to writing smarter, faster code.
Love clearly distinguishes between POSIX standard functions and special services offered only by Linux. With a new chapter on multithreading, this updated and expanded...
Programming Arduino: Getting Started with Sketches, Second Edition (Tab)
Program Arduino™ with ease―no prior programming experience required!
This thoroughly updated guide shows, step-by-step, how to quickly program all Arduino models― including the Arduino Uno R3. Written by hobbyist and electronics guru Simon Monk, Programming Arduino™: Getting Started with Sketches, Second Edition, features easy-to-follow explanations, fun examples, and downloadable sample programs. Discover how to write basic sketches, use Arduino’s modified C language, store data,...
USB Programming for PIC18 Devices
The full title of the book is An Introduction to USB and USB Programming on Microchip Devices. This book focuses on PIC18 USB devices. It covers the practical and programming aspects of understanding the USB 2 protocol, building applications running on USB capabile Microchip PIC18 microcontrollers as well as Microsoft Windows based applications running on a PC that communicate with these applications. This volume concentrates on HID and CDC application development. The IDE used is MPLABX...
Practical Microcontroller Engineering with ARM Technology
This book covers both the fundamentals, as well as practical techniques in designing and building microcontrollers in industrial and commercial applications.
- Examples included in this book have been compiled, built, and tested
- Includes Both ARM® assembly and C codes
- Direct Register Access (DRA) model and the Software Driver (SD) model programming techniques and discussed
If you are an instructor and adopted this book for your course, please email ieeeproposals@wiley.com to get access to...
C in a Nutshell: The Definitive Reference
The new edition of this classic O’Reilly reference provides clear, detailed explanations of every feature in the C language and runtime library, including multithreading, type-generic macros, and library functions that are new in the 2011 C standard (C11). If you want to understand the effects of an unfamiliar function, and how the standard library requires it to behave, you’ll find it here, along with a typical example.
Ideal for experienced C and C++ programmers, this book also includes...
Computer Systems: A Programmer's Perspective
Computer systems: A Programmer’s Perspective explains the underlying elements common among all computer systems and how they affect general application performance. Written from the programmer’s perspective, this book strives to teach readers how understanding basic elements of computer systems and executing real practice can lead them to create better programs.
Spanning across computer science themes such as hardware architecture, the operating system, and systems software, the...
Embedded Software Development for Safety-Critical Systems
Safety-critical devices, whether medical, automotive, or industrial, are increasingly dependent on the correct operation of sophisticated software. Many standards have appeared in the last decade on how such systems should be designed and built. Developers, who previously only had to know how to program devices for their industry, must now understand remarkably esoteric development practices and be prepared to justify their work to external auditors. Embedded Software Development for...
The Definitive Guide to ARM Cortex -M0 and Cortex-M0+ Processors
The Definitive Guide to the ARM® Cortex®-M0 and Cortex-M0+ Processors, Second Edition explains the architectures underneath ARM’s Cortex-M0 and Cortex-M0+ processors and their programming techniques.
Written by ARM’s Senior Embedded Technology Manager, Joseph Yiu, the book is packed with examples on how to use the features in the Cortex-M0 and Cortex-M0+ processors. It provides detailed information on the instruction set architecture, how to use a number of popular development...
Programming and Interfacing ARMEL AVR Mirocontrollers
Atmel's AVR microcontrollers are the go-to chip for many hobbyists and hardware hacking projects. In this book, PROGRAMMING AND INTERFACING ATMEL'S AVRS, you will learn how to program and interface using three of Atmel's microcontrollers--the ATtiny13, the ATmega328, and the ATmega32. The book begins with the binary number system and move into programming in assembly, then C and C++. Very little prior engineering knowledge is assumed. You'll work step-by-step through sections on connecting...
USB Complete: The Developer's Guide (Complete Guides series)
Now in its Fifth Edition, USB Complete bridges the gap between the technical specifications and the real world of designing and programming devices that connect over the Universal Serial Bus (USB). Learn how to select a USB speed, device class, and hardware for a design; communicate with devices using Visual C#; use standard host drivers to access devices, including devices that perform vendor-defined tasks; save power with USB's built-in power-conserving protocols; and create robust designs...
Embedded Systems: ARM Programming and Optimization
The modern consumer electronics industry as we know it owes much of its success and popularity to two technologies: the ARM processor and the Linux operating system. ARM processor technology powers nearly all modern mobile devices-and most of these processors run the Linux operating system. It's no exaggeration to say that having an understanding of embedded system design and development from the context of ARM and Linux technology is an important asset in today's world.
Embedded Systems:...








