Android手机内存的运行机制

使用android手机的用户可能都安装了任务管理的软件,使用android手机真的有必要安装结束任务的软件吗?大家在使用中也都发现了,很多软件在被结束后,马上就会又出现在任务列表里,或是稍等一会自己也会出现,任务管理不停的结束后台程序,也没见给手机的运行速度带来多少提升,这是为什么呢?

其实大家不用那么在意android手机剩余内存的大小。很多人都是把使用其他系统的习惯带到了android手机上,不是所有的智能手机系统都一样的。android大多数应用没有退出的设计其实是有道理的,这和系统对进程的调度机制有关系。如果你知道java,就能更清楚这机制了。其实和java的垃圾回收机制类似,系统有一个规则来回收内存。进行内存调度有个阀值,只有低于这个值系统才会按一个列表来关闭用户不需要的东西。当然这个值默认设置得很小,所以你会看到内存老在很少的数值徘徊。但事实上他并不影响速度。相反加快了下次启动应用的速度。这本来也是android的优势之一,如果人为去关闭进程,没有太大必要。特别是自动关进程的软件。

可能有人会说了,那为什么内存少的时候运行大型程序会慢呢?其实很简单,在内存剩余不多时打开大型程序,会触发系统自身的调进程调度策略,这是十分消耗系统资源的操作,特别是在一个程序频繁向系统申请内存的时候。这种情况下系统并不会关闭所有打开的进程,而是选择性关闭,频繁的调度自然会拖慢系统。

那么,进程管理软件到底还有存在的价值吗?其实还是有的,在运行大型程序之前,你可以手动关闭一些进程释放内存,可以显著的提高运行速度。但一些小程序,完全可交由系统自己管理。很多朋友还有个疑问,如果不关程序是不是会更耗电?这里也解释一下,android的应用在被切换到后台时,它其实已经被暂停了,并不会消耗cpu资源,只保留了运行状态。所以为什么有的程序切出去重新进入,还会到主界面。但是,一个程序如果想要在后台处理些东西,如音乐播放,它就会开启一个服务,服务可在后台持续运行,所以在后台耗电的也只有带服务的应用了。这个在进程管理软件里能看到,名字是service。所以没有带服务的应用在后台是完全不耗电的,没有必要关闭。这种设计本来就是一个非常好的设计,下次启动程序时,会更快,因为不需要读取界面资源,何必要关掉他们抹杀这个android的优点呢?

还有一点,为什么android应用看起来那么耗内存?大家知道,android上的应用是java,当然需要虚拟机,而android上的应用是带有独立虚拟机的,也就是每开一个应用就会打开一个独立的虚拟机。这样设计的原因是可以避免虚拟机崩溃导致整个系统崩溃,但代价就是需要更多内存。

至于为什么开了大程序或者开了好几个程序之后切换会变慢,具体分析如下:

已经开启了一个大程序,占用70%内存,如果再想运行一个程序,此时还需要50%的内存,则就需要一个从大程序占用的内存中释放或者压缩的过程,所以表现出来的就是慢一会儿。

已经开启了几个程序共占用内存80%,运行新程序时又需要20%的内存,系统内存因为没见过剩余0的时候,也就是应该剩一部分空闲内存,那么就需要从之前开启的这几个程序中选择一个或者几个来关闭,这一过程也需要耗费系统资源,所以会慢一会儿。也就是说你手动去结束程序的时候,就是替系统在释放内存,就算你不去结束,在需要内存的时候系统也会自动结束程序释放内存。

不在后台运行的程序(没服务的),即使不结束也不会耗电。在后台运行的(有服务的)程序,如一些播放器或实时监控的软件,自然会耗电。这就说明结束进程并不是没用,我们只需要看哪个带服务耗电哪个程序后台一直在运行,看服务就能看出来,这样的软件如果用不到的时候就结束了吧。

以QQ举例,正常的退出,会在进程管理里留下qq的运行过的状态,但不耗电不占 cpu,如果你只是切换出去(按房子键而不是退出)那么自然会耗电,因为程序还在运行,QQ还在线呢。

这里就有个要注意的地方了,虽然房子键和那个返回键都可以将程序切换出去,但是两者的效果差异是很大的,返回键可以视作程序已经退出了,而按房子键,则是将程序切换到了后台来运行,软件并没有退出哦!

以上这些设计都是为了确保了android的稳定性,正常情况下最多单个程序崩溃,但整个系统不会崩溃,也永远没有内存不足的提示出现。大家可能是被windows毒害得太深了,总想保留更多的内存,但实际上这并不一定会提升速度,相反却丧失了程序启动快的这一系统特色,得不偿失。大家不妨换种观念习惯来使用android系统。

lvds接口_LVDS,接口,时序讲解,非常好的文章 欢迎FPGA工程师加入官方微信技术群点击蓝字关注我们FPGA之家-中国最好最大的FPGA纯工程师社群1.1.1 LVDS接口分类1.1.1.1 单路6bit LVDS这种接口电路中,采用单路方式传输,每个基色信号采用6位数据,共18位RGB数据,因此,也称18位或18bit LVDS接口。此,也称18位或18bit LVDS接口。1.1.1.2 双路6bit LVDS这种接口电... 阅读详情

相关推荐

从Starlink看NTN:SSB波束数量少,用户体验真的会差吗?

当SpaceX的Starlink以每月新增上百颗卫星的速度扩张其星座时,一个有趣的技术现象正在引发行业讨论:为何这个全球最大的低轨卫星网络选择使用相对较少的波束数量?波束数量的选择远非简单的技术参数,而是系统设计哲学、商业策略与终端用户体验的复杂平衡。传统地面网络可以依赖密集基站实现精准覆盖,而卫星通信必须面对一个根本性挑战:如何在数百公里的高空,用有限的射频资源服务广阔的地理区域。当我们在撒哈拉沙漠测试不同波束方案时,发现了一个关键洞见:最佳波束数量不是固定的技术参数,而是随网络发展阶段变化的动态值。

weixin_32308101的博客 332

关于android 0进程1服务的意思

Hi all。 一直不了解service和线程的区别,网上都说生命周期不一样,我在application里开的线程生命周期就跟app一致了,和在service里开线程效果一样啊,作为四大组件之一的service就这么水吗?其实不然,有时我们可能需要app被杀死但不希望某些任务被中断,如下载文件,下面我们进行分析。(这里谈的是本地服务,远程服务运行在不同进程就不多说了) 有时我们查看有什么程

m5314的博客 3390

[零基础]用docker搭建Hadoop集群

[零基础]用docker搭建Hadoop集群,每一步都有详细的解释!

weixin_56114243的博客 2万+

Android APP完整基础教程(01)开发环境简介

该系列文章主要基于AndroidQ平台,主要介绍Android应用基础开发相关知识。主要针对安卓应用开发路径的完整解读 和 coding练习内容的解读。 1 Android 发展历史 1.1 Android 历史 2005年 Google收购了成立仅22个月的高科技企业Android公司。 2007年 Google正式向外界展示了这款名为Android的操作系统,建立联盟(34家手机制造商、软件开发商、电信运营商以及芯片制造商),联盟将支持谷歌发布的手机操作系统以及应用软件,将共同开发Android

wangdsh的博客 3020

QT串口通信控制LED上位机开发教程

串口通信是嵌入式系统与PC端交互的基础技术,通过UART协议实现设备间的数据传输。QT框架提供了跨平台的串口编程支持,结合其GUI模块可以快速开发上位机控制程序。在工业自动化和物联网领域,这种上下位机架构广泛应用于设备监控和控制场景。本案例展示了如何使用QT的SerialPort模块实现LED控制功能,包含串口参数配置、指令发送等核心功能实现,为嵌入式GUI开发提供实践参考。

weixin_42598278的博客 582

PTPX功耗分析实战——从脚本配置到报告解读

本文详细介绍了PTPX功耗分析的全流程,从脚本配置到报告解读,帮助工程师快速掌握芯片设计中的功耗估算技术。文章涵盖了环境搭建、波形文件处理、功耗报告解析等关键环节,并提供了实战经验和优化建议,特别适合需要提升PTPX功耗分析效率的开发者。

weixin_29248313的博客 279

如何理解安卓里面的进程和线程和服务

安卓的规则规定当一个进程被滑倒后台,会自动切断与cpu的联系并转为缓存的进程,此时为了保证一个进程被滑倒后台依然能够活跃,于是有个服务,服务能够保证这个进程在后台运行,因此我们在开发者选项中看到的服务都是在实时运行的程序!然而,值得注意的是,我们在开发者选项中会看到不含服务只存在进程的程序,此时并不代表它不在后台运行,因为手机厂商会在自家系统的调度中将某些重要的软件放进白名单,使他们就算不含服务也可以在后台运行,比如Apple Music以及一些系统程序就没有服务只有进程但依然在后台持续存在。

zouxu634866的博客 748

3、数据导入与清洗:Excel、SQL、SPSS、Stata和SAS数据处理

本文详细介绍了如何从Excel文件、SQL数据库以及SPSS、Stata和SAS等统计软件中导入和清洗数据。针对不同数据来源的特点,提供了具体的处理方法,包括跳过无用行、重命名列、处理缺失值、转换数据类型、保留元数据等关键步骤。同时,通过实际应用案例展示了如何整合多源数据,并总结了数据导入和清洗的最佳实践,帮助读者高效完成数据预处理工作,为后续的数据分析打下坚实基础。

133

Android退出应用程序方法总结

finish方法 finish(); 该方法只是结束当前Activity,系统将最上面的Activity移出了栈,并没有清理占用的资源。如果栈内有很多Activity 的话,使用该方法显得有点捉襟见肘了,没办法一次移出全部Activity,并且没有立即释放内存,活动的资源也没有被清理。 进程式 (1)KillProcess(): 可以杀死当前应用活动的进程,这一操作将会把所有该进程内的资源...

awodefengduanwu的博客 4037

Autosar Dcm配置-App到Boot的跳转及1002回复配置及实现-基于ETAS软件

在软件刷写流程中,上位机(诊断仪)发送1002后,APP检查允许跳转boot后,在特定的ram(软复位不清除)写入指定置后通过触发软件复位来跳转到boot的。在APP跳转到Bootloader时,1002的回复有两种方式,一种是APP直接回复,然后跳转,另一种是APP回复NRC78,然后跳转,在Boot中回复。本文介绍这两种方式的实现。如果是在APP中回复,可以少发一个0x78,整体跳转时间可能会少一些。但是如果诊断在收到5002之后立马请求其他的服务,可能出现boot正在初始化而未正常接收到报文。

赞的博客 1555

【OpenFOAM】-olaFlow-算例1- baseWaveFlume

算例文件注释--olaFlow-算例1- baseWaveFlume

ou_no的博客 3639

android 数据管理,Android中的数据管理

概述我们知道,一个应用无非是由UI、逻辑、数据所构成,数据在应用中的地位举足重轻。我们讨论数据需要讨论数据的来源,数据保持(存储),数据的销毁等生命周期的管理。数据是有时效性的,也就是说,数据存在的时间是不同的,有的可以持久保存,比如说历史登录账户,有的是跟应用周期等同,比如应用的配置数据,有的只在应用的部分时期内,比如用户登录后的sessionId等。本文将介绍数据的存储管理,根据数据存储的介质...

weixin_39522312的博客 333

【超分辨率(Super-Resolution)】关于【超分辨率重建】专栏的相关说明,包含专栏简介、专栏亮点、适配人群、相关说明、阅读顺序、超分理解、实现流程、研究方向、论文代码数据集汇总等

本专栏研究领域为【超分辨率重建】,涵盖图像超分、视频超分,实时超分,4K修复等方面。主要内容包括主流算法模型的论文精读、论文复现、毕业设计、涨点手段、调参技巧、论文写作、应用落地等方面。算法模型从SRCNN开始更新至今,一般是一篇论文精读对应一篇论文复现。论文精读详解理论,归化繁为简,归纳核心,积累词句,培养阅读论文和论文写作能力。论文复现依托Pytorch代码,实现完整的模型训练流程,总结调参方法,记录碰到的bug,论文插图可视化,培养读写代码能力、做实验的能力、以及应用落地能力。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 3万+

[教程] Android手机内存的运行机制

使用Android手机的用户可能都安装了任务管理的软件,使用Android手机真的有必要安装结束任务的软件吗?大家在使用中也都发现了,很多软件在被结束后,马上就会又出现在任务列表里,或是稍等一会自己也会出现,任务管理不停的结束后台程序,也没见给手机的运行速度带来多少提升,这是为什么呢?  其实大家不用那么在意Android手机剩余内存的大小。很多人都是把使用其他系统的习惯带到了Android手机上...

xshq 285

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

android一个程序多大内存合适,手机内存越大越好吗 手机内存大小的影响

随着这几年安卓手机的硬件快速升级,手机的内存也越来越大,从最初的512M到1GB,再到现在主流的2GB、3GB,华硕甚至带来了4GB内存的新机,可以看出内存已然成为手机硬件比拼的重要内容之一。那么大内存会给手机带来什么好处?大内存的手机扣除系统程序占用的内存后是否还够大?是否还能够运行流畅?笔者带大家聊聊手机内存的运行机制,简单盘点下市售大内存手机,看看它们真正可用的内存大小究竟如何。内存越大越靠...

weixin_42512159的博客 933

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

android app增加内存大小,硬件不够软件来凑:如何提升Android手机运行内存?

随着智能手机的不断发展以及用户需求的不断增加,手机的运行内存(RAM)的大小已经从MB过渡到了GB容量,作为用户的我们只是知道运行内存越大越好,而运行内存到底有什么用你知道么?----------------------------------------------------------------知识小科普无应用运行时内存占用已近半这个时候就又到了笔者给大家科普的时候了。RAM全称Rando...

weixin_36181866的博客 2026

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

计算机可用内存分配失败,你们都被忽悠了! 其实可用内存大才有用

【PConline 杂谈】随着这几年安卓手机的硬件快速升级,手机的运行内存(本文后续页面将“运行内存”简称为内存或者RAM)也越来越大,从最初的512M到1GB,再到现在主流的2GB、3GB。在CES2015上,已经有4GB内存的新机出现,可以看出内存已然成为手机硬件比拼的重要内容之一。那么大内存会给手机带来什么好处,大内存的手机扣除系统程序占用的内存后是否还够大,是否还能够运行流畅?笔者带大家聊...

weixin_31062993的博客 642

iOS和android运存机制,为什么苹果4GB运存却比安卓8GB更丝滑流畅?看完立马涨知识了...

众所周知,目前智能手机分为苹果和安卓两大阵营。如今不管是苹果手机还是安卓手机在性能方面都越来越强大,为了进一步提升用户体验,安卓主流旗舰标配已达到了8G运存,顶配甚至达到了12G,最低也是4G起步,反观苹果今年的最新款iPhone 11却只是4G运存。但是,我们为什么总感觉运存小的苹果手机却更加流畅呢?首先,我们得先了解什么叫运行内存。运行内存也称作主存,英文名叫RAM,主要作用是给 App 提供...

weixin_28914371的博客 2829

为什么1GB内存的苹果能完爆3GB内存的安卓机

一直以来,苹果走的都是特立独行的路线,安卓手机厂商虽然平台不同但是处处都可以看到抄袭苹果的影子。苹果手机的不可拆卸电池、不支持内存卡、需要剪小卡的三大奇葩设计也已经被安卓厂商抄烂了。 除了硬件方面,安卓在软件方面也一直在模仿苹果。最早期的时候iOS走的都是拟物化路线,国内的第三方ROM设计团队如MIUI、乐蛙、锤子、百度云就开始模仿了。现在iOS走扁平化路线,国内的ROM也开始搞扁平

marho 1万+

苹果运行内存比较_为什么安卓手机扩充到12GB内存,苹果却仍是4GB?原因其实很简单...

众所周知,作为科技时代下的产物,如今智能手机在人们的生活当中扮演着至关重要的角色,毕竟随着智能手机的不断发展,将传统的通信交流模式无情打破,取而代之的则是让用户畅游在网络的世界当中。当然就现在而言,在全球偌大的手机市场上通常都呈现出iOS和安卓系统两大阵营,那么问题来了,为何安卓手机扩充到12GB内存,苹果却依旧是4GB?原因很简单。想必作为忠实果粉的用户一定知道,iPhone运行内存最...

weixin_39611208的博客 408

android和苹果内存,手机运行内存越大越好?4GB的苹果和8GB的安卓差别是什么?...

原标题:手机运行内存越大越好?4GB的苹果和8GB的安卓差别是什么?最近什么手机比较热门?要说应该华为、小米、OPPO、VIVO都不相上下,当然苹果也是不容小觑~近期小米推出了小米9的新机型,代言人是青春活力的王源~享有索尼4800万超广角三摄,20W无线闪充,全系幻彩的玻璃机身,可以说是既好看又能打~不过小编发现它的运行内存使8GB~玩游戏不怕卡了吧~ 而华为也在近期推出了华为P30机型,400...

weixin_39605647的博客 1135

苹果6运行内存是多少_iPhone 12才有6G运存,安卓早已12G,苹果手机为啥比安卓更流畅?...

什么是运行内存?运行内存,也称作主存,是指程序运行时需要的内存,只能临时存储数据用于与CPU交换高速缓存数据。运行内存的大小直接决定了系统能运行多少程序。安卓主流旗舰目前标配的已经是8G运存,顶配的已经达到了12G,反观苹果,今年三款新iPhone竟然都是使用4G运存。近日,著名分析师巴克莱在与苹果供应链中的制造商会面时表示,iPhone 12 Pro和iPhone 12 Pro Max或将配备6...

weixin_39678451的博客 1746

苹果运行内存比较_iPhone手机的内存,为什么这几年一直没有像安卓这样升级

iPhone12系列刚刚发布,手机还没有到用户手中,关于下一代iPhone13的消息初见端倪,不过大部分消息都是捕风捉影,很难有事实依据作为支撑。也有一些消息可靠性比较高,比如苹果依旧没有放弃Touch ID相关研究,有可能在下一代回归。iPhone 5s,运行内存1G,同时期安卓2G(2013);iPhone 6s,运行内存2G,安卓4G(2015);iPhone X,运行内存3G,安...

weixin_39540426的博客 4218

为什么php-fpm会使用内存一直增加_内存明明才4G,iPhone到底凭什么吊打12G内存的安卓?...

现在各种智能手机花样百出,但阵营只有两个,一个安卓,一个苹果。大家挑手机也都是奔着大内存去的,共同点就是流畅性好。目前大部分安卓手机运行内存已经到了12G,甚至是16G。但苹果不一样,不出意外的话,即将发布的iPhone 12依旧会带着4G运存出场。重点是iPhone的4G运存比安卓的12G运存还要流畅,这是为何?今天就和大家一起探讨一下。首先,我们要区别两个概念。运存和内存运存就是运行内存(RA...

weixin_39692172的博客 109

4g运行内存手机还能用多久_8G运存手机可用运存不到4G,这到底是为什么呢?告诉你根本原因...

相信大家对8G内存的手机已经见怪不怪了,甚至有可能你现在用的手机就是8G的内存,手机内存的发展速度如今可以说是都要超越了我们平时使用的电脑了。在如今很多笔记本依旧是4G内存的情况下,手机内存的大小显得手机内存相当的有良心。为什么安卓手机的内存都挺大的呢?有些小伙伴还发现了,为什么8G的手机,开机可用的内存只有5G左右呢?6G的内存不到3G,甚至4G内存的手机开机可用内存达不到2G呢?这是为什么呢?...

weixin_39866881的博客 423

IOS跟ANDROID的区别

大家总是会纠结哪个手机系统会更加适合自己,那就由小编我简要介绍一下IOS和安卓的区别吧! 运行机制:安卓是虚拟机运行机制,IOS是沙盒运行机制。这里再说明一下这两者的主要不同之处。安卓系统中应用程序的运行都是在虚拟的环境中运行的,运行方式是数据先传输到虚拟机,再由虚拟机传递到用户界面(简称UI)。而苹果IOS的沙盒运行机制则有一个相对规整的分隔控制,也就是相当于把每个应用程序放在自己的...

diaozhenchun1690的博客 488
上一篇: android应用程序基本原理
下一篇: Facebook 的系统架构
SleepInDelphi
博客等级 码龄19年 32粉丝 388原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值