Linux内核与Android的关系

    Android   感兴趣的朋友都知道,Android系统是建立在     Linux   内核之上的。那么Linux内核和Android什么关系?Linux内核是怎样引导起Android呢?本文进行简单的描述。

Android虽然建立在Linux内核之上,但是他对内核进行了一些扩展,增加了一些驱动。比如Binder,loger等等驱动。可以拿Android内核代码和其Baseline版本进行对比。可以看到Android对Linux内核的所有扩展。

熟悉Linux启动的朋友知道,首先Linux引导完成之后,会启动用户态的init进程(     pi   d为0),这个进程在整个系统运行过程中起着非常重要的作用,如果你对init进程不了解请查相关资料。init完成系统的初始化工作,然后进入shell,接收用户的输入。

 Linux内核与Android的关系_设计制作_可编程逻辑

Android启动也没有什么神秘的,就是用自己的init进程替换了Linux内核的init进程,完成自己初始化工作(设备,文件系统等等初始化)。然后启动自己的虚拟机,程序等等的东西。Android的init进程的代码位于system/core/init/init.c下面,可以去查看其源码,来了解Android启动详细流程。Android启动流程的资料网上已经比较多,这里就不赘述了。

可以看到移植Android过程中,调试init非常重要。因为所有和硬件平台相关的东西都这里初始化,所以init进程有可能需要移植或者配置。其他的进程都是和硬件无关的,理论上不需要修改就应该能够运行起来。

经过上面的描述可以看出,Android的init进程起着一个承上启下的作用。承上——自动由Linux内核调用;启下——初始化Android各种设备和资源,然后启动Android相关的进程,直到引导起整个Android系统。

31
109
0
79

相关资讯

  1. 1、Win7旗舰版打开应用程序提示0xc00000ba错误怎么解决?1878
  2. 2、Win8系统软键盘怎么打开?Win8系统打开软键盘的方法3877
  3. 3、如何不打印Word批注和修订内容?不打印Word批注和修订内容方法718
  4. 4、怎么为图片添加好看的文字?醒图app添加文字的方法技巧4617
  5. 5、如何使用线刷宝解决手机无法开机的问题?线刷宝解决手机无法开机方法步骤1726
  6. 6、轻推怎么修改手机号码?轻推修改手机号码的方法2561
  7. 7、Win8电脑怎么进行无损分区?win8电脑无损分区教程3587
  8. 8、AdobeCameraRaw13.2新增功能介绍(附下载地址)!4743
  9. 9、Win10如何设置宽带连接记住密码?1844
  10. 10、酷我音乐盒曲库不显示怎么办?酷我音乐盒曲库不显示解决方法2625
全部评论(0)
我也有话说
0
收藏
点赞
顶部