Linux内核与Android的关系

来源:
导读 大家好,我是本期栏目编辑小友,现在为大家讲解Linux内核与Android的关系问题。 对安卓感兴趣的人都知道,安卓...

大家好,我是本期栏目编辑小友,现在为大家讲解Linux内核与Android的关系问题。

对安卓感兴趣的人都知道,安卓系统是基于Linux内核的。那么Linux内核和Android有什么关系呢?Linux内核如何引导Android?本文对此进行了简要描述。

虽然安卓是建立在Linux内核上的,但是它扩展了内核,增加了一些驱动。比如Binder、loger等驱动。您可以将安卓内核代码与其基线版本进行比较。你可以看到安卓对Linux内核的所有扩展。

熟悉Linux启动的朋友都知道,首先Linux启动完成后,会启动用户模式下的init进程(pid为0),在整个系统运行过程中起着非常重要的作用。如果您不了解init进程,请查看相关信息。Init完成系统的初始化,然后进入shell接收用户的输入。

Android启动没有什么神秘的,就是用自己的init进程代替Linux内核的init进程,完成自己的初始化(设备、文件系统等的初始化)。).然后启动自己的虚拟机、程序等等。Android init进程代码位于system/core/init/init.c下,可以查看其源代码,了解详细的Android启动过程。网上有很多关于安卓启动过程的信息,这里就不赘述了。

可以看到在移植Android的过程中,调试init是非常重要的。因为与硬件平台相关的一切都在这里初始化,所以初始化过程可能需要移植或配置。其他进程是独立于硬件的,理论上它们应该能够在没有修改的情况下运行。

从上面的描述可以看出,安卓的init进程起到了连接的作用。上层——由Linux内核自动调用;打开——初始化各种安卓设备和资源,然后启动安卓相关进程,直到整个安卓系统启动。

标签:

版权声明:转载此文是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢您的支持与理解。