Android OS kernel related queries
I was looking to write some case study on Android's kernel. This would be a part of my curriculum in the Advanced Operating systems class. The primary focus that i wanted was the actual implementation of how priority queues are implemented in any RTOS just to relate it to the theory we have studied in the class. But i came to know that finding information is really a big task rather than just having a great idea. :( So for now i want to limit myself to either 1. 开发者_高级运维Kernel (either process or memory) which will be very specific or 2. Difference in Android and Linux OS What i have observed is that though we have some information on both of them but the data given can be even seen in my text book. What i wanted was a practical difference.
I hope I would be getting some pointers in the direction.
The Android Linux kernel and the mainline Linux kernel are close. There are several key differences:
- Android has the major
wakelock
patches applied. These are not mainline. Google should reveal years of back and forth on this issue. - Android has the
binder
security model, mainline does not. - Android has an all new framebuffer to support SurfaceFlinger.
- Hardware support for the phones. The mainline kernel does not have direct support for all of the ARM processors and devices. Consider the Android kernel trees an amalgam of Mainline+ARM(OMAP)+Vendor patches.
- Specific embedded tuning.
However, 95+% of the code is the same in Mainline Linux vs Android Linux. Android is not an RTOS (the RT parts are handled in a separate processor on the radio modules) .
A good way to start learning is the Android git repositories: https://android.googlesource.com
Here are some politics, but eventually you find more links for yourself: http://www.kroah.com/log/linux/android-kernel-problems.html
精彩评论