Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

ARM websites use two types of cookie: (1) those that enable the site to function and perform as required; and (2) analytical cookies which anonymously track visitors only while using the site. If you are not happy with this use of these cookies please review our Privacy Policy to learn how they can be disabled. By disabling cookies some features of the site will not work.

Android Porting for ARM Embedded Linux by Moko365 Inc



Training

Product Description

Goal

This is a training course in Taipei, Taiwan which is instructed by Jollen Chen. With this very entry-level course, the trainer will instruct students to compile and porting AOSP to ARM platform (OMAP3, BeagleBoard).

Highlights

* How to download (repo) Android source tree
* Configuring Android product tree and compiling source tree
* Build images, create AVD and use Android emulator
* Modify source code and porting to ARM hardward
* Understanding basics of Android OOD

Schedule

Day 1:

* Chaper 1: Introduction of Android architecture and application framework
    1.1 Android & Layered Architecture
    1.2 FLOSS License & Android
    1.3 Hardware Accessibility & Methodology
    1.4 Android Runtime & Dalvik VM Instance
    1.5 Android Porting Guidelines

* Chaper 2: Compile Linux kernel
    2.1 Legacy GNU/Linux System
    2.2 Android kernelfeatures
    2.3 Configure and compile goldfish kernel
    2.4 Cross compile: practice and principles
    2.5 Linux kernel booting flow

* Chaper 3: Compile Android
    3.1 Prepare build environment
    3.2 Get Android source tree with repo
    3.3 Compile Donut/Eclair/Froyo
    3.4 Compile Gingerbread and use vendorsetup.sh
    3.5 Configure your product tree
    3.6 Use Android emulator
    3.7 Build U-Boot image
    3.8 Android.mk (1): build shared libraries
    3.9 Android.mk (2): build Java libraries

* Chapter 4: Busybox made easy
    4.1 Introduction of Busybox and GPLv2 issues
    4.2 Configure cross tool prefix
    4.3 Add Busybox commands
    4.4 Compile Busybox

Day 2:

Chapter 5: Embedded Root Filesystem (Android + Linux)
    5.1 Embedded Linux: the GNU/Linux system
    5.2 Init process
    5.3 library dependency & SONAME
    5.4 Process memory mapping
    5.5 Build root filesystem
    5.6 Understanding the GNU/Linux inittab
    5.7 Understanding Android/Linux root filesystem
    5.8 Android init language and init.rc

Chapter 6: Android Booting Analysis and Internals
    6.1 Bootchart: use bootchart.c
    6.2 Android booting process
    6.3 Introduction of Zygote and SystemServer process
    6.4 Zygote & SystemServer: Internals
    6.5 Optimize Zygote's class preloading

Chapter 7: Get started to develop Android OS
    7.1 How to trace and modify application framework
    7.2 Extend an API
    7.3 Instance of Dalvik VM and JNI
    7.4 Architecture design: OOAD basics
 

Android Porting for ARM Embedded Linux

Market Segment(s)

  • General Purpose Products/Services

Target Platform(s)

  • Android

ARM Processor(s)

  • Cortex-A8
 
ARM Connected