Android启动过程
1.linux内核,加载linux内核
2 init 进程对各种设备进行初始化,
执行Daemon进程,管理USB、ADB链接管理器、Debugger系统、rild管理无线通信链接
Content Manager进程,提供运行Android各种系统服务信息
Media Server
Zygote进程用于缩短Android应用程序加载时间,每当Java应用程序时,Zygote就会派生出一个子进程来执行应用程序的虚拟机
System Server进程 Zygote进程创建,在Android启动过程中位于Zygote之后,运行的System Server提供给上层调用需要先将它注册到Content Manager中
Android与JNI
将Java层与C/C++有机的联系起来,使得他们互相协调,共同完成某个任务
java中调用C库
1,编写java代码
2,编译java代码 javac
3,生成C语言头文件
4,编写C代码
5,生成C共享库
6,运行java程序
java虚拟机使用函数原型将java代码和C代码映射