android基础知识

来源:互联网 发布:js实现div的轮播切换 编辑:程序博客网 时间:2024/06/07 20:04

Android是一款基于Linux内核的,面对移动终端的操作系统。为适配移动终端,谷歌特意做了优化与设计,使其进程调度和资源管理与其他Linux有明显区别。

1,application Framework

application Framework把操作系统封装了起来。对于开发者而已,所有APP都是运行在application Framework之上的,并不需要关心底层的情况。

而application Framework层为应用开发者提供了丰富的接口,例如activity manager,notification manager等等。而在application Framework之上以activity为一个单位,每个activity对应一个视图,而应用都被打包成apk,由Dalvik VM解释执行。


2,Dalvik VM

Dalvik虚拟机采用寄存器架构而不是JVM的栈结构。主要用于解释apk。但是Java程序编译后的class不能直接被Dalvik解释执行。所以里面要借用媒介dx工具。

而每一个APP都有每一个Dalvik来执行,通过这种方式,每个APP的资源被完全屏蔽,互不干扰。


Android内存回收机制


当安卓程序退出的时候,并不清理其所占用的内存,Linux内核进程也相应的继续存在,所谓“退出但不关闭”。从而使得用户调用程序时能在第一时间得到响应。当系统内存不足时,系统将激活内存回收机制。然后这个回收机制会按照优先级来回收程序。

foreground

0 0
原创粉丝点击