只说Android内核. 强烈建议先从编译一个你设备的成熟的第三方内核开始, 这第一步基本上只需要了解一点点Git和make命令. 如果成功boot系统的时候, 成就感爆棚, 那你很有可能是下一个内核大佬的料.
进一步的学习就要分两种情况了. 一是没有这方面的专业知识, 实践先于理论基础, 包括我都是这么过来的, 只要不沉浸于眼前的成就, 保持科学的探究精神, 我觉得这样学内核是完全可以的; 二是系统的学习Linux的内核系统, 相关专业书籍肯定是首推的, 有兴趣可以网上买本来看看.
Linux内核代码虽说绝大部分都是C语言, 但因为都是顶尖大佬写的, 途中遇到不能理解的代码很正常, 这说明步子迈得太快, 基础跟不上了.
最后, 手机上编译内核应该是没问题的, 具体应该可以问问 @lateautumn