Embedded programming with android bringing up an android system from scratch android deep dive

Embedded Programming with Android: Bringing Up an Android System from Scratch

Explore a preview version of Embedded Programming with Android: Bringing Up an Android System from Scratch right now.

O’Reilly members get unlimited access to live online training experiences, plus books, videos, and digital content from 200+ publishers.

Book description

The First Practical, Hands-On Guide to Embedded System Programming for Android

Today, embedded systems programming is a more valuable discipline than ever, driven by fast-growing, new fields such as wearable technology and the Internet of Things. In this concise guide, Roger Ye teaches all the skills you’ll need to write the efficient embedded code necessary to make tomorrow’s Android devices work.

The first title in Addison-Wesley’s new Android™ Deep Dive series for intermediate and expert Android developers, Embedded Programming with Android™ draws on Roger Ye’s extensive experience with advanced projects in telecommunications and mobile devices. Step by step, he guides you through building a system with all the key components Android hardware developers must deliver to manufacturing. By the time you’re done, you’ll have the key programming, compiler, and debugging skills you’ll need for real-world projects.

First, Ye introduces the essentials of bare-metal programming: creating assembly language code that runs directly on hardware. Then, building on this knowledge, he shows how to use C to create hardware interfaces for booting a Linux kernel with the popular U-Boot bootloader. Finally, he walks you through using filesystem images to boot Android and learning to build customized ROMs to support any new Android device. Throughout, Ye provides extensive downloadable code you can run, explore, and adapt.

Build a complete virtualized environment for embedded development

Understand the workflow of a modern embedded systems project

Develop assembly programs, create binary images, and load and run them in the Android emulator

Learn what it takes to bring up a bootloader and operating system

Move from assembler to C, and explore Android’s goldfish hardware interfaces

Program serial ports, interrupt controllers, real time clocks, and NAND flash controllers

Integrate C runtime libraries

Support exception handling and timing

Use U-Boot to boot the kernel via NOR or NAND flash processes

Gain in-depth knowledge for porting U-Boot to new environments

Integrate U-Boot and a Linux kernel into an AOSP and CyanogenMod source tree

Create your own Android ROM on a virtual Android device

Источник

Embedded Programming with Android: Bringing Up an Android System from Scratch

©2016 | Addison-Wesley Professional

If You’re an Educator

If You’re a Student

Introducing Pearson+ 1500+ eTexts and study tools, all in one place. Subscriptions starting at $9.99/month.

K-12 educators : This link is for individuals purchasing with credit cards or PayPal only. Contact your Savvas Learning Company Account General Manager for purchase options.

Overview

Description

This book begins with basic embedded programming. Ye demonstrates bare metal programming and debugging. Then, he shifts to applying that knowledge to «bringing up» U-boot and Android. That is, how to start from a generic set of source code that does not run on any hardware (or on any emulator) and then through the needed hardware-specific code to provide a low-level interface to the emulated hardware.

The full text downloaded to your computer

With eBooks you can:

  • search for key concepts, words and phrases
  • make highlights and notes as you study
  • share your notes with friends

eBooks are downloaded to your computer and accessible either offline through the Bookshelf (available as a free download), available online and also via the iPad and Android apps.

Upon purchase, you will receive via email the code and instructions on how to access this product.

Time limit

TheВ eBooks products do not have an expiry date. You will continue to access yourВ digitalВ ebookВ products whilst you have yourВ Bookshelf installed.

Series

This product is part of the following series. Click on a series title to see the full list of products in the series.

Источник

Embedded Programming with Android: Bringing Up an Android System from Scratch

©2016 | Addison-Wesley Professional | Out of print

If You’re an Educator

If You’re a Student

Introducing Pearson+ 1500+ eTexts and study tools, all in one place. Subscriptions starting at $9.99/month.

K-12 educators : This link is for individuals purchasing with credit cards or PayPal only. Contact your Savvas Learning Company Account General Manager for purchase options.

Overview

Description

This book begins with basic embedded programming. Ye demonstrates bare metal programming and debugging. Then, he shifts to applying that knowledge to «bringing up» U-boot and Android. That is, how to start from a generic set of source code that does not run on any hardware (or on any emulator) and then through the needed hardware-specific code to provide a low-level interface to the emulated hardware.

Series

This product is part of the following series. Click on a series title to see the full list of products in the series.

Android Deep Dive

Features

Table of Contents

About the Author xxiii

Part I: Bare Metal Programming 1

Chapter 1: Introduction to Embedded System Programming 3

What Is an Embedded System? 3

Bare Metal Programming 3

Learning Embedded System Programming 5

Software Layers in an Embedded System 7

Tools and Hardware Platform 11

The Difference between Virtual Hardware and Real Hardware 11

Chapter 2: Inside Android Emulator 13

Overview of the Virtual Hardware 13

Configuring Android Virtual Devices 14

Hardware Interfaces 17

Chapter 3: Setting Up the Development Environment 25

The Host and Client Environments 25

Development Environment Setup 26

Downloading and Installing Android SDK 27

Downloading and Installing the GNU Toolchain for ARM 27

Integrated Development Environment 29

Your First ARM Program 29

Building the Binary 30

Running in the Android Emulator 32

makefile for the Example Projects 36

Chapter 4: Linker Script and Memory Map 39

Linker Script 51

Linker Script Example 53

Initializing Data in RAM 56

Chapter 5: Using the C Language 63

C Startup in a Bare Metal Environment 63

Calling Convention 78

Goldfish Serial Port Support 81

Chapter 6: Using the C Library 93

C Library Variants 93

Newlib C Library 96

Common Startup Code Sequence 97

CS3 Linker Scripts 97

Customized CS3 Startup Code for the Goldfish Platform 103

System Call Implementations 104

Running and Debugging the Library 112

Using Newlib with QEMU ARM Semihosting 116

Chapter 7: Exception Handling and Timer 125

Goldfish Interrupt Controller 125

The Simplest Interrupt Handler 128

Nested Interrupt Handler 140

Testing System Calls/Software Interrupts 163

Real-Time Clock 172

Chapter 8: NAND Flash Support in Goldfish 183

Android File System 183

NAND Flash Properties 185

NAND Flash Programming Interface in the Goldfish Platform 187

Memory Technology Device Support 188

NAND Flash Programming Interface Test Program 206

Part II: U-Boot 217

Chapter 9: U-Boot Porting 219

Introducing U-Boot 219

Downloading and Compiling U-Boot 220

Debugging U-Boot with GDB 224

Porting U-Boot to the Goldfish Platform 227

Chapter 10: Using U-Boot to Boot the Goldfish Kernel 249

Building the Goldfish Kernel 249

Prebuilt Toolchain and Kernel Source Code 250

Running and Debugging the Kernel in the Emulator 252

Booting Android from NOR Flash 254

Booting Android from NAND Flash 270

Part III: Android System Integration 281

Chapter 11: Building Your Own AOSP and CyanogenMod 283

Introducing AOSP and CyanogenMod 283

Setting Up an Android Virtual Device 284

AOSP Android Emulator Build 288

CyanogenMod Android Emulator Build 297

Chapter 12: Customizing Android and Creating Your Own Android ROM 309

Supporting New Hardware in AOSP 309

Supporting New Hardware in CyanogenMod 332

Part IV: Appendixes 339

Appendix A: Building the Source Code for This Book 341

Setting Up the Build Environment 341

Setting Up a Virtual Machine 344

Organization of Source Code 344

Source Code for Part I 345

Source Code for Part II 350

Source Code for Part III 352

Appendix B: Using Repo in This Book 355

Resources for Repo 355

Syncing a New Source Tree In Minutes 355

Downloading Git Repositories Using Local Manifest 356

Order

Pearson offers affordable and accessible purchase options to meet the needs of your students. Connect with us to learn more.

K12 Educators: Contact your Savvas Learning Company Account General Manager for purchase options. Instant Access ISBNs are for individuals purchasing with credit cards or PayPal.
Savvas Learning Company is a trademark of Savvas Learning Company LLC.

Источник

Embedded Programming with Android: Bringing Up an Android System from Scratch

  • Sorry, this book is no longer in print.

eBook (Watermarked)

  • Your Price: $25.59
  • List Price: $31.99
  • Includes EPUB, MOBI, and PDF
  • About eBook Formats

This eBook includes the following formats, accessible from your Account page after purchase:

EPUB The open industry format known for its reflowable content and usability on supported mobile devices.

MOBI The eBook format compatible with the Amazon Kindle and Amazon Kindle applications.

PDF The popular standard, used most often with the free Adobe® Reader® software.

This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.

About

Features

  • Gives detailed technical discussion about bare-metal programming
  • Uses a live example to teach how to build an Android system from scratch
  • Hands-on and project-based
  • Uses porting U-Boot to the Android emulator as a real project to illustrate the workflow and the essential knowledge of the embedded system programming

Description

  • Copyright 2016
  • Dimensions: 7″ x 9″
  • Pages: 400
  • Edition: 1st
  • Book
  • ISBN-10: 0-13-403000-1
  • ISBN-13: 978-0-13-403000-5

The First Practical, Hands-On Guide to Embedded System Programming for Android

Today, embedded systems programming is a more valuable discipline than ever, driven by fast-growing, new fields such as wearable technology and the Internet of Things. In this concise guide, Roger Ye teaches all the skills you’ll need to write the efficient embedded code necessary to make tomorrow’s Android devices work.

The first title in Addison-Wesley’s new Android™ Deep Dive series for intermediate and expert Android developers, Embedded Programming with Android™ draws on Roger Ye’s extensive experience with advanced projects in telecommunications and mobile devices. Step by step, he guides you through building a system with all the key components Android hardware developers must deliver to manufacturing. By the time you’re done, you’ll have the key programming, compiler, and debugging skills you’ll need for real-world projects.

First, Ye introduces the essentials of bare-metal programming: creating assembly language code that runs directly on hardware. Then, building on this knowledge, he shows how to use C to create hardware interfaces for booting a Linux kernel with the popular U-Boot bootloader. Finally, he walks you through using filesystem images to boot Android and learning to build customized ROMs to support any new Android device. Throughout, Ye provides extensive downloadable code you can run, explore, and adapt.

  • Build a complete virtualized environment for embedded development
  • Understand the workflow of a modern embedded systems project
  • Develop assembly programs, create binary images, and load and run them in the Android emulator
  • Learn what it takes to bring up a bootloader and operating system
  • Move from assembler to C, and explore Android’s goldfish hardware interfaces
  • Program serial ports, interrupt controllers, real time clocks, and NAND flash controllers
  • Integrate C runtime libraries
  • Support exception handling and timing
  • Use U-Boot to boot the kernel via NOR or NAND flash processes
  • Gain in-depth knowledge for porting U-Boot to new environments
  • Integrate U-Boot and a Linux kernel into an AOSP and CyanogenMod source tree
  • Create your own Android ROM on a virtual Android device

Extras

Related Article

Companion Site

Please visit the associated website to download the code for Embedded Programming with Android at here.

Источник

Embedded Programming with Android: Bringing Up an Android System from Scratch

English | 2016 | ISBN: 978-0134030005 | 400 Pages | PDF, EPUB | 34 MB

The First Practical, Hands-On Guide to Embedded System Programming for Android
Today, embedded systems programming is a more valuable discipline than ever, driven by fast-growing, new fields such as wearable technology and the Internet of Things. In this concise guide, Roger Ye teaches all the skills you’ll need to write the efficient embedded code necessary to make tomorrow’s Android devices work.
The first title in Addison-Wesley’s new Android™ Deep Dive series for intermediate and expert Android developers, Embedded Programming with Android™ draws on Roger Ye’s extensive experience with advanced projects in telecommunications and mobile devices. Step by step, he guides you through building a system with all the key components Android hardware developers must deliver to manufacturing. By the time you’re done, you’ll have the key programming, compiler, and debugging skills you’ll need for real-world projects.
First, Ye introduces the essentials of bare-metal programming: creating assembly language code that runs directly on hardware. Then, building on this knowledge, he shows how to use C to create hardware interfaces for booting a Linux kernel with the popular U-Boot bootloader. Finally, he walks you through using filesystem images to boot Android and learning to build customized ROMs to support any new Android device. Throughout, Ye provides extensive downloadable code you can run, explore, and adapt.
You will

  • Build a complete virtualized environment for embedded development
  • Understand the workflow of a modern embedded systems project
  • Develop assembly programs, create binary images, and load and run them in the Android emulator
  • Learn what it takes to bring up a bootloader and operating system
  • Move from assembler to C, and explore Android’s goldfish hardware interfaces
  • Program serial ports, interrupt controllers, real time clocks, and NAND flash controllers
  • Integrate C runtime libraries
  • Support exception handling and timing
  • Use U-Boot to boot the kernel via NOR or NAND flash processes
  • Gain in-depth knowledge for porting U-Boot to new environments
  • Integrate U-Boot and a Linux kernel into an AOSP and CyanogenMod source tree
  • Create your own Android ROM on a virtual Android device

Homepage

Источник

Читайте также:  Jikage rising последняя версия андроид
Оцените статью
Format ePub
ISBN-13: 9780134030913
Availability