Ok, guys, I think that's the right place to ask a question, because it's all about development(if I'm wrong or it's duplicate question, please tell me).
So, I want to dive deep in Android, understand how system works down to the kernel(and also learn what's behind rooting and other hacking stuff). Where should I go from here? Linux book? VM architecture?
Just downloading the source code didn't help as I don't understand how all that works.
Where should I go from here?
There are two books on Android internals that I am aware of:
One, XDA Developers' Android Hacker's Toolkit, is getting lousy reviews, but that may be because it does not cover much ground beyond what's found on XDA itself. However, if you're not super-familiar with the subject, it may still be worthwhile.
The other, Embedded Android: Porting, Extending, and Customizing, was supposed to be out in July, but it looks like the publication date got pushed out to August. I think that there is an early-access edition on the O'Reilly site for purchase.
Marakana's TechTV series includes a number of videos (e.g., conference presentations) on firmware mods. They, and a couple of other firms, also offer training on the subject.
You are certainly welcome to poke around XDA and its forum posts on firmware mods, but it's definitely more of a community site than a reference guide to the subject.
Beyond that, learning how the Linux OS works (kernel, drivers, etc.) would certainly help, as Android is based on that stuff.