000 06861cam a2200481 i 4500
001 u14659
003 SA-PMU
005 20210418123501.0
008 150709s2016 nyu 001 0 eng
010 _a 2015022900
040 _aDLC
_beng
_erda
_cDLC
_dYDX
_dYDXCP
_dCDX
_dCLE
_dM$K
_dI8M
_dOCLCQ
_dOCLCO
_dMMV
_dOCLCQ
_dOCLCO
020 _a9780134030005
_q(pbk. ;
_qalk. paper)
020 _a0134030001
_q(pbk. ;
_qalk. paper)
035 _a(OCoLC)913712225
042 _apcc
050 0 0 _aQA76.76.A65
_b.Y438 2016
082 0 0 _a004.167
_223
100 1 _aYe, Roger,
_eauthor.
245 1 0 _aEmbedded programming with Android :
_bbringing up an Android system from scratch /
_cRoger Ye.
264 1 _aNew York :
_bAddison Wesley,
_c[2016]
300 _axx, 371 pages ;
_c23 cm.
336 _atext
_btxt
_2rdacontent
337 _aunmediated
_bn
_2rdamedia
338 _avolume
_bnc
_2rdacarrier
490 0 _aAndroid deep dive series
500 _aIncludes index.
520 _aStep by step, the book 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.
505 0 0 _gMachine generated contents note:
_g1.
_tIntroduction to Embedded System Programming --
_tWhat Is an Embedded System? --
_tBare Metal Programming --
_tLearning Embedded System Programming --
_tSoftware Layers in an Embedded System --
_tTools and Hardware Platform --
_tDifference between Virtual Hardware and Real Hardware --
_tSummary --
_g2.
_tInside Android Emulator --
_tOverview of the Virtual Hardware --
_tConfiguring Android Virtual Devices --
_tHardware Interfaces --
_tSerial --
_tTimer --
_tSummary --
_g3.
_tSetting Up the Development Environment --
_tHost and Client Environments --
_tDevelopment Environment Setup --
_tDownloading and Installing Android SDK --
_tDownloading and Installing the GNU Toolchain for ARM --
_tIntegrated Development Environment --
_tYour First ARM Program --
_tBuilding the Binary --
_tRunning in the Android Emulator --
_tmakefile for the Example Projects --
_tSummary --
_g4.
_tLinker Script and Memory Map --
_tMemory Map --
_tLinker --
_tSymbol Resolution --
_tRelocation --
_tSection Merging --
_tSection Placement --
_tLinker Script --
_tLinker Script Example --
_tInitializing Data in RAM --
_tSpecifying Load Address --
_tCopying .data to RAM --
_tSummary --
_g5.
_tUsing the C Language --
_tC Startup in a Bare Metal Environment --
_tStack --
_tGlobal Variables --
_tRead-Only Data --
_tStartup Code --
_tCalling Convention --
_tCalling C Functions from Assembly Language Code --
_tCalling Assembly Language Functions from C Code --
_tGoldfish Serial Port Support --
_tCheck Data Buffer --
_tData Input and Output --
_tUnit Test of Serial Functions --
_tSummary --
_g6.
_tUsing the C Library --
_tC Library Variants --
_tC Library Variants in an Operating System --
_tC Library Variants in Bare Metal Environment --
_tNewlib C Library --
_tCommon Startup Code Sequence --
_tCS3 Linker Scripts --
_tCustomized CS3 Startup Code for the Goldfish Platform --
_tSystem Call Implementations --
_tRunning and Debugging the Library --
_tUsing Newlib with QEMU ARM Semihosting --
_tSemihosting Support in Newlib C --
_tSemihosting Example Code --
_tSummary --
_g7.
_tException Handling and Timer --
_tGoldfish Interrupt Controller --
_tSimplest Interrupt Handler --
_tInterrupt Support Functions --
_tImplementation of the Simplest Interrupt Handler --
_tNested Interrupt Handler --
_tImplementation of the Nested Interrupt Handler --
_tTesting Nested Interrupts and Discovering the --
_tProcessor Mode Switch --
_tTesting System Calls/Software Interrupts --
_tTimer --
_tGoldfish-Specific Timer Functions --
_tU-Boot API --
_tReal-Time Clock --
_tUnit Test of Timer and. RTC --
_tSummary --
_g8.
_tNAND Flash Support in Goldfish --
_tAndroid File System --
_tNAND Flash Properties --
_tNAND Flash Programming Interface in the Goldfish Platform --
_tMemory Technology Device Support --
_tMTD API --
_tU-Boot API to Support NAND Flash --
_tGoldfish NAND Flash Driver Functions --
_tNAND Flash Programming Interface Test Program --
_tNAND Flash Information from the Linux Kernel --
_tNAND Flash Test Program --
_tSummary --
_g9.
_tU-Boot Porting --
_tIntroducing U-Boot --
_tDownloading and Compiling U-Boot --
_tDebugging U-Boot with GOB --
_tPorting U-Boot to the Goldfish Platform --
_tCreating a New Board --
_tProcessor-Specific Changes --
_tBoard-Specific Changes --
_tDevice Driver Changes --
_tSummary --
_g10.
_tUsing U-Boot to Boot the Goldfish Kernel --
_tBuilding the Goldfish Kernel --
_tPrebuilt Toolchain and Kernel Source Code --
_tRunning and Debugging the Kernel in the Emulator --
_tBooting Android from NOR Flash --
_tCreating the RAMDISK Image --
_tCreating the Flash Image --
_tBooting Up the Flash Image --
_tSource-Level Debugging of the Flash Image --
_tBooting Android from NAND Flash --
_tPreparing system.img --
_tBooting from NAND Flash --
_tSummary --
_g11.
_tBuilding Your Own AOSP and CyanogenMod --
_tIntroducing AOSP and CyanogenMod --
_tSetting Up an Android Virtual Device --
_tAOSP Android Emulator Build --
_tAOSP Build Environment --
_tDownloading the AOSP Source --
_tBuilding AOSP Android Emulator Images --
_tTesting AOSP Images --
_tCyanogenMod Android Emulator Build --
_tDownloading the CyanogenMod Source --
_tBuilding CyanogenMod Android Emulator Images --
_tTesting CyanogenMod Images --
_tSummary --
_g12.
_tCustomizing Android and Creating Your Own Android ROM --
_tSupporting New Hardware in AOSP --
_tBuilding the Kernel with AOSP --
_tBuilding U-Boot with AOSP --
_tBooting Android with U-Boot from NAND Flash --
_tSupporting New Hardware in CyanogenMod --
_tBuilding the Kernel with CyanogenMod --
_tBuilding U-Boot and Booting Up CyanogenMod --
_tSummary --
_gA.
_tBuilding the Source Code for This Book --
_tSetting Up the Build Environment --
_tSetting Up a Virtual Machine --
_tOrganization of Source Code --
_tSource Code for Part I --
_tBuilding and Testing from the Command Line --
_tBuilding and Testing in Eclipse --
_tSource Code for Part II --
_tSource Code for Part III --
_tBuilding AOSP --
_tBuilding CyanogenMod --
_gB.
_tUsing Repo in This Book --
_tResources for Repo --
_tSyncing a New Source Tree In Minutes --
_tDownloading Git Repositories Using Local Manifest.
630 0 0 _aAndroid (Electronic resource)
650 0 _aEmbedded computer systems
_xProgramming.
650 0 _aApplication software
_xDevelopment.
650 0 _aEmulators (Computer programs)
650 0 _aSmartphones
_xProgramming.
650 4 _aTeléfonos inteligentes
_xProgramación.
938 _aCoutts Information Services
_bCOUT
_n28854629
938 _aYBP Library Services
_bYANK
_n12048112
029 1 _aAU@
_b000055052479
029 1 _aNZ1
_b16109459
942 _cBOOK
994 _aZ0
_bSUPMU
948 _hNO HOLDINGS IN SUPMU - 49 OTHER HOLDINGS
596 _a1 2
999 _c3327
_d3327