I had to migrate the Android kernel and drivers to the user platform. Android Kernel is basically the Linux kernel (2.6.x) with several modifications. The kernel and drivers are mostly written in C, and you will need to enter it. If you already have experience in other languages, you can also go through this. There are many books on this and tutorials on WEB. Remember to enjoy all that βpointerβ. This is the main thing in C. The linux kernel, if it contains a pointer to data structures, and even more, a pointer to functions packed in data structures.
This is how I got the information and knowledge I need. For the Linux kernel, O'Reilly books are great. I mean all the time for device drivers:
Understanding the Linux Kernel
Linux Device Drivers
As for resources very specific for writing Android kernel materials, I have been looking for this for several months, and I always get Linux resources, and I did the job.
Good luck, have fun and do not forget that it is always useful for you to acquire new skills.
Sylvain huard
source share