安卓手机的工作原理是什么

如题所述

android基于Linux内核,很多系统也都基于Linux内核。但是android的特别之处除了开发上的特点以外,还有一个就是程序在运行时的行为和以往我接触到的程序运行机制有很大不同。在传统PC机或者其他一些手机上,用户对应用程序有绝对的掌控权,在应用程序的系统菜单上选择“退出”或者“关闭”之类的选项会直接杀死进程,而在android系统中不是这样的。在android中,应用程序的生命周期并不是由应用程序自身直接控制的,而是由系统,当系统需要释放内存来运行新进程或者保证某些后台进程和前端进程顺利执行的时候才会释放相应应用程序的资源,这个释放过程有一个重要性的层次。
android中进程的层次如下(重要性由高到低):

1、前端进程。顾名思义,前端进程就是目前显示在屏幕上和用户交互的进程,在系统中前端进程数量很少,而这种进程是对用户体验的影响最大,只有系统的内存稀少到不足以维持和用户的基本交互时才会销毁前端进程。因此这种进程重要性是最高的。

2、可见进程。可见进程也拥有一个可视化的界面,只是目前不是最上层界面(最上层界面在前端进程里面),可见进程一般调用了OnPause(),可见进程比前端进程重要性低,但是在交互方面影响还是很大,因为用户可能随时切换过去,所以系统不会轻易销毁它。

3、服务进程。一个服务进程就是一个Service,它调用了startService,就是UNIX中说的守护进程,对用户不可见,但是保证了一些重要的事件被监听或者维持着某些状态,比如网络数据传输、后台音乐播放,这类进程在内存不足且为了保证前端交互的顺利进行的时候被销毁。

4、后台进程。这里叫后台进程可能会和一般意义上的后台进程混淆,要说明的是,android里的后台进程是调用了OnStop()的,可以理解成用户暂时没有和这个进程交互的愿望,所以这里后台进程有点“待销毁”的意思。

5、空进程。这是一种系统缓存机制,其实就是个进程的外壳,当有新进程创建的时候,这个空进程可以加快进程创建速度,当系统内存不足的时候,首先销毁空进程。
android中进程重要性层次
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-07-28
Android原理你知道吗? 其实Android不需要关闭后台运行程序!

不用在意剩余内存的大小,其实很多人都是把使用其他系统的习惯带过来来了。android大多应用没有退出的设计

其实是有道理的,这和系统对进程的调度机制有关系。如果你知道java,就能更清楚这机制了。其实和java的回

收机制类似,系统有一个规则来回收内存。进行内存调度有个阀值,只有低于这个值系统才会按一个列表来关闭

用户不需要的东西。当然这个值默认设置得很小,所以你会看到内存老在很少的数值徘徊。但事实上他并不影响

速度。相反加快了下次启动使用的速度。这本来就是android标榜的优势之一,如果人为关闭进程,没有太大必

要。特别是使用自动关进程的软件。

到这里有人会说了,那为什么内存少的时候运行大型程序会慢呢?其实很简单,在内存剩余不多时打开大型程序,

会触发系统自身的调进程调度策略,这是十分消耗系统资源的操作,特别是在一个程序频繁向系统申请内存的时

候。这种情况下系统并不会关闭所有打开的进程,而是选择性关闭,频繁的调度自然会拖慢系统。所以,论坛上

有个更改内存阀值的程序可以有一定改善。但改动也可能带来一些问题,取决于值的设定。

那么,进程管理软件有无必要呢?有的。就是在运行大型程序之前,你可以手动关闭一些进程释放内存,可以显

著的提高运行速度。但一些小程序,完全可交由系统自己管理。

谈到这里,可能有的朋友会问,如果不关程序是不是会更耗电。我就说说android后台的原理,你就明白了。

android的应用在被切换到后台时,它其实已经被暂停了,并不会消耗cpu资源,只保留了运行状态。所以为什

么有的程序切出去重进会到主界面。但是,一个程序如果想要在后台处理些东西,如音乐播放,它就会开启一个

服务。服务可在后台持续运行,所以在后台耗电的也只有带服务的应用了。这个在进程管理软件里能看到,标签

是service。至于广播什么的我就不涉及了。所以没有带服务的应用在后台是完全不耗电的,没有必要关闭。这种

设计本来就是一个非常好的设计,下次启动程序时,会更快,因为不需要读取界面资源,何必要关掉他们抹杀这

个android的优点呢。

还有一个,为什么android一个应用看起来那么耗内存。大家知道,android上的应用是java,当然需要虚拟机,

而android上的应用是带有独立虚拟机的,也就是每开一个应用就会打开一个独立的虚拟机。这样设计的原因是

可以避免虚拟机崩溃导致整个系统崩溃,但代价就是需要更多内存。
第2个回答  2014-04-09
电通过电路板到各各硬件处
第3个回答  2020-11-23

智能手机的工作原理是什么?

安卓手机的工作原理是什么
1、前端进程。顾名思义,前端进程就是目前显示在屏幕上和用户交互的进程,在系统中前端进程数量很少,而这种进程是对用户体验的影响最大,只有系统的内存稀少到不足以维持和用户的基本交互时才会销毁前端进程。因此这种进程重要性是最高的。2、可见进程。可见进程也拥有一个可视化的界面,只是目前不是最上...

为什么安卓手机只能用手触摸?用别的的物体触摸都没用。
触摸屏的工作原理概括来说就是上报坐标值,X轴、Y轴的值,是通过屏幕感应我们人体细小的电流所以别的东西触摸没用,如果屏幕太过灵敏就会造成误触,灵敏度低就会触摸不良

手机能够震动原理是什么?是靠手机内部什么部件震动?
大部分手机是小电机加一个偏心块,实现震动功能。这个没办法调节震动大小吧,因为小电机是固定的,只是打开电流开关,关闭开关。一般没有调节部件吧。但是,也可以调节,就是通过开关打开关闭的时间。目前小电机震动机的工作,都是打开开关,再关闭开关,再打开开关。。。这样循环工作。这样做的目的是:持续...

hw叠加层是什么?停用会怎样?
工作原理:在安卓系统中,hw叠加层允许应用拥有单独的视频内存,并通过CPU的辅助运算来优化图像的处理和显示。这种方式能够更有效地利用系统资源,提升手机的整体性能。停用hw叠加层的影响:当停用hw叠加层时,系统会强制手机使用GPU来处理所有的图像画面。虽然这样做可以减轻CPU的负担,但也会带来一些负面影响...

安卓手机root权限获取的工作原理是什么?
1. 通过漏洞将自己进程提权到root权限,具体做法要去了解漏洞利用原理 2. 进程获取root权限后重新挂载system分区可读写 3. 然后将su拷贝到bin目录或者xbin目录,由于su的所有者提权进程已经是root进程,所以su也具有root属性。然后设置su文件755属性,即所有者可读可写可执行,所在组和其他用户可读可执行,...

安卓刷机原理和工作原理,内核和rom的关系
按下电源键,这个时候会把操作系统用ROM里装载到内存里,这就是为什么一开机手机的RAM已经占用了。对于刷机,是按分区刷的,一个一个分区刷进去。内核在ROM中以boot.img的形式存在,内核提供了整个操作系统的底层驱动,如果没有内核,那么操作系统是无法启动的,也就是说你的手机进不了系统。如果你现在...

求达人讲一下安卓和苹果的后台工作原理
安卓的后台是为了提高软件下一次启动的速度 减少加载时间 而苹果的后台更像是一个打开软件的菜单 你所有打开的应用切到后台之后就像被关闭了一样 下一次还要重新加载 但由于苹果可以说后台根本就没程序 苹果的运行速度反而还要快一点点

安卓手机的双击屏幕亮屏是怎么实现的
双击唤醒的原理说来也非常简单:1、手机的显示屏和触摸屏实际上是两个单独工作的组件,只不过触摸屏是接近透明的,贴在显示屏上面用户看不出来。2、触摸屏识别手势信号,传输给处理器,显示屏只是负责显示相应的图像。3、传统的手机关闭显示屏时,触摸屏也是关闭的,两者都不工作。4、有唤醒功能的手机如...

安卓手机的Root原理
Administrator是Windows NT内核系统中的超级管理员用户帐户,也拥有极高的权限,而SYSTEM用户组可以理解为计算机系统自身的权限。可以操作一切对象,对一切进程进行操作。获得root权限之后就意味着已经获得了手机的最高权限,这时候你可以对手机中的任何文件(包括系统文件)执行所有增、删、改、查的操作。

手机是12G的好用还是6G的比较好用?
运行内存决定了手机可同时运行APP的数量。安卓系统的工作原理是,如果用户打开的APP不主动关闭,一般都会被驻留在内存中。这样一来,随意切换打开的应用就不用等待重启时间,操作也显得更为流畅。但是,由于运行内存大小的限制,后台同时运行APP的数量总会到达一个临界值,超过这个范围就会使手机变得卡顿。

相似回答