After talking to Archan of embinux.com, I have thought for a while for future 0xlab/0xdroid toolchain[1] perspectives. Till Android donut, armv7 toolchain is not officially supported, and we as community contributors are free to hack around the source. However, it does matter for us to ensure the software quality at least for this specific combination. ARM Cortex-A8 / ARMv7 core is the key feature of Beagleboard / OMAP3. That means, we need to worry about kernel/toolchain support (NEON/Thumb2), NEON optimization applied in Android framework, etc. Action items: track gcc/binutils, cherry-pick from SVN head, merge patches from OpenEmbedded/CodeSourcery.
Also, we need to confirm the toolchain functionality since new elements involved such as thumb code generation (by default in Android build system) and bionic libc + dyamic linker. We are about to migrate to Android donut codebase and rebuild android toolchain with the latest bionic. Also, gdb will be upgraded to version 7.0 along with Thumb fixes by Thinker Li (the submissions to Android Code Review were accepted and handled.) The key features in gdb 7.0 need to be verified on Android on armv7: - Reverse debugging, Process record and replay - Non-stop debugging - Multi-architecture debugging - Multi-inferior, multi-process debugging
Profiling is another item that we are working on recently. We would like to introduce the support for oprofile[2] and related utilities.
> Also, we need to confirm the toolchain functionality since new > elements involved such as thumb code generation (by default in Android > build > system) and bionic libc + dyamic linker. We are about to migrate to > Android donut codebase and rebuild android toolchain with the latest > bionic. Also, gdb will be upgraded to version 7.0 along with Thumb > fixes by Thinker Li (the submissions to Android Code Review were > accepted > and handled.) The key features in gdb 7.0 need to be verified on > Android on armv7:
(continued) GCC 4.4.2 was released on October 15, 2009 . bionic header will bump to Donut release tree. 0xlab's policy is enabling the latest open source technologies as possible as we can, and we are definitely about to do.
I'm checking the 0xdroid system, but I'm new to Android and I found it's a little different with the normal linux systems, the rootfs structure and how thing get work, I'm wondering if there is any document about the Android system itself, which can tell me which part of the source files is used for what purpose...and how the system startup, howto change the init sequence , etc. I think you all very familiar with Android system since 0xdroid is very nice. I've try to search..but most of the things I found is about Android SDK and application development... so how did you learn this kind of things...can you share?
> I'm checking the 0xdroid system, but I'm new to Android and I found > it's a little different with the normal linux systems, > the rootfs structure and how thing get work, I'm wondering if there > is any document about the Android system itself, > which can tell me which part of the source files is used for what > purpose...and how the system startup, howto change the > init sequence , etc. I think you all very familiar with Android > system since 0xdroid is very nice. > I've try to search..but most of the things I found is about Android > SDK and application development... > so how did you learn this kind of things...can you share?
hi Leo,
The best way to learn Android is hacking its source code along with the materials from Android: http://developer.android.com/
Also, mailing-list is good for clarifying your thoughts. However, please specify the exat problem/idea you would like to discuss. Thanks!
> GCC 4.4.2 was released on October 15, 2009 . bionic header will bump > to Donut release tree. 0xlab's policy is enabling the latest open > source technologies as possible as we can, and we are definitely about > to do.