分享生活百科知识

注册/登录|最近发布|今日推荐

主页 综合百科生活常识数码科技传统文化互联网健康时尚影视娱乐教育学习
当前位置:首页 > 教育学习

同样的内核,为什么linux干净稳定,而android臃肿又乌烟瘴气?

提问时间:2023-07-05 11:56关键词:linux

问题补充: Linux系统稳定干净,android越来越臃肿,有点像Windows了,越用越慢,还有一堆流氓app在你设备上为所欲为。\r","如果把Linux那套权限控制机制迁移到Android,会有这么多流氓app吗?Google为何放水?\r","

点赞1、晋江市 网友:提笔濯砚

谢谢邀请!

Android和Linux生态以及面向的用户群体完全不一样,自然最终的结果也就不一样。

Android系统多了一层虚拟机

熟悉Android系统开发的研发同学就知道,Android系统在Linux内核的基础上又重新定义了很多东西,其中比较重要的一个就是Android运行环境,说得直白一点就是Android虚拟机,这个Android虚拟机本质上是Java虚拟机。

Google当年做Android的时候,考虑到要尽快俘获更多的开发者,尽可能的降低Android开发的门槛,选择了Java这门编程语言,这门编程语言开发者众多,并且也是开源的,短时间就获得了大批开发者。

不过这样的代价是,在Android上必须多一层安卓虚拟机来支持Java程序的运行,Java为了能够跨平台又把自己做成一个虚拟机语言,当然虚拟机的缺点就是非常耗费硬件资源,这就让Android对硬件依赖非常大。

Android厂商负优化、应用权限太大

Android为了尽快的占据市场,而Google自己又不做手机,于是Android就走了完全开源的道路,开源的好处是能够得到更多硬件厂商的支持,坏处自然就是生态极其混乱。

Android系统到了各大手机厂商之后,先来一堆各种各样的预装,再添加一些自己想要的推广服务,Android不经意之间就变得越来越重,而且Android厂商权限太高了,基本上可以对自家的Android UI为所欲为,本质上深度定制就是负优化。大家可以去比较一下一加氢OS和其他国产安卓厂商的UI你就会发现,干净的Android是多么出色。

国内的应用开发商也不遵守游戏规则,各种滥用权限,这一点Android又放开得比较大,不像iOS,通知权限、通讯录权限、短信权限都是管理得比较严的,你如果不遵守游戏规则,结果就是你上不了App Store,而App Store是苹果唯一的商店。Android不一样,海外还有Google play,可是到了国内小米商店、华为商店,各种商店乱七八糟,上不了Google play对应用开发商没有任何影响,甚至你直接甩一个安装包都能行。

大部分应用90%以上的功能都是没有用的,比如支付宝这种软件太过于臃肿,其实大部分功能都无用,中国的App恨不得一个软件把你的吃喝拉撒睡全都管了,太臃肿了。

Linux面向专业用户、Android面向C端用户

Linux主要是面向B端等服务器市场,主要是软件工程师、运维工程师等,这些都是具有很强专业能力的专业用户,自然对自己的系统管理也比较好。

Android系统主要是面向C端用户,C端用户的使用习惯参差不齐,而且用户群体十分庞大,基本上全球几十亿人都在使用,用户越多自然麻烦也就越多。

Android之所以乱七八糟,还是因为生态管控力不够 ,首先是在我国国情下,Google没办法进入中国市场直接管理Android系统,其次尽管在海外Google有一定的生态管控能力,可是Android本来就是开放的,自然不可能像苹果管理得那么好。


本文为字节跳动签约作者EmacserVimer石塘网原创文章,未经允许转载、抄袭必究!

点赞2、兴安盟 网友:无思想。

有幸在linux以及安卓框架上研究过几年,现在就这个问题发表点个人意见,安卓底层操作系统算是定制版的linux内核,但有个非常明显的区别,安卓只是用到了linux内核上层的应用体系是完全自己构建的,距离linux原生态的方式已经距离非常遥远了,所以拿来和纯正的linux做对比其实意义不是特别大,安卓之所以感觉像windows那样臃肿,主要原因还是生态链的普及的比较完善,使用人数太多,俗话讲有人的地方就有江湖。

linux系统倒是清洁干净,但是使用的人数有点寒碜,linux主要用在服务端市场比较多,但在PC市场windows还是占据95的市场,面对巨量的用户很多人都想在这个流量里面获取一杯羹,大的科技公司用的正当的手段,小规模的或者作坊式的小团队就采用蛮横粗暴的方式来获得利益,所以windows系统时不时的出现的漏洞,病毒,木马其实都是另外形式的赚钱方式,同时也带动出现了一堆的安全巨头,有正有邪,熙熙攘攘皆为利来。

现在的安卓已经有点windows的意思了,不同的是安卓源码是公开的,更加容易找到漏洞,但就安全性能来讲由于秉承了linux内核,安全性能会更好一点,主要通过研究应用的漏洞来做手脚,所以在平时安装app的过程中不要轻易授予某个应用权限,本身在没有授权的情况下是很难突破界限的,但由于用户的不小心或者大意让某些不法行为有机可乘,其实安卓系统的臃肿主要还是安装的app太多,手机配置再高性能也无法和电脑相比,电脑配置高一点软件装的多点对于整体影响不是很大,但手机安装完多个应用之后就会变得非常卡顿,很多应用安装之后非常占内存,当然国内有些大牌的厂商在应用行为上也有点出格,发现竞争对手的应用都能引导用户去卸载,然后互相引导卸载,弄得手机里面很多应用在干架,让手机变得臃肿无比。

现在太多的手机应用喜欢开后台进程,喜欢捕捉用户的行为,方便推送消息,导致系统的内存越来越不够用,特别是国内的互联网公司对于用户个人信息的收集也比较多,记得看见一个新闻国内的一个应用开发公司在国外由于收集用户信息被举报了,最后换了个国外的服务器并且把收集信息减少才算把这事情给平息了。

国内的安卓收集运行环境还是比较恶劣的,基本上一些恶意的干扰用户的行为特别多,几乎每个应用都喜欢在后台运行程序,所以一个配置很高的安卓收集如果安装的应用比较多一样非常的卡顿,现在每个应用在开发的时候都喜欢无限制在里面的增加功能,如果大家都喜欢在里面无限制的增加功能,所以各种臃肿的功能显示出来。

linux和安卓的差异主要在应用行为上的差异,和技术层面关系不大,技术上限制权限就是一个功能开关的问题,不是什么多大问题,任何一个系统或者软件如果用的人足够多,剑走偏锋的人也会变得多起来,所以各种扰民的事情就多了,有人的地方就有江湖,这也是人之常情。

希望能帮到你。

点赞3、化州市 网友:趁我还在

干净稳定,是有代价的。

需要牺牲一定的自由度(由某机构管理)或方便、易学性(自己管理)。


比如一般的 Linux服务器系统干净稳定,那是在专业管理员的维护管理之下,牺牲了一定的方便、易学性。新手管理的Linux系统崩溃可是常事。


再比如,iOS系统,相对Android干净稳定,那是牺牲了一定自由度(App全部由苹果审核、管理)得来的。


安卓系统的高度自由,众多的App商店,你审核我不审核,带来的是各自由的App抢占系统资源,偷偷做各自想做的事,自然从用户角度就容易觉得乌烟瘴气了。

点赞4、阿克苏地区 网友:邪恶萝莉

1,不完全的linux,安卓整个系统只是linux的一个软件,所有的安卓应用都是跑在一个罐子里。性能当然…

2,不守规矩,Google设计安卓时为了让更多厂商加入生态,所以开放了相当大的权限让厂商凭良心发挥。显然大多数厂商没什么良心…

这些应用开机自启,互相唤醒,双进程守护,跟随系统事件启动,反正只要有机会就运行…你插个充电器都能启动两个应用,顺便再唤醒三个,而且用户不知道,这就好比电脑同时运行了好几十个qq,一般的电脑都会卡成狗…

3,硬件原因,一两年后安卓手机即使恢复出厂设置都会卡,就是硬盘在频繁读写下性能大减,甚至用用的就卡死。

4,过度开发,安卓和苹果给出的界面方案完全不一样,但是苹果的好看啊…于是安卓应用界面都模仿苹果,造成大量资源浪费,应用启动慢,运行也卡。

点赞5、常州市 网友:简颜丶

安卓哪里臃肿了?!是安卓app不要脸吧。逼呼菊花手环,需要安装三个app,平均每个app单是安装包就超过80m,再比如微信,内存占用差不多一个g(内存,不是闪存。)要我说安卓已经很了不起了,要不是继承了linux优秀的内存管理,早就崩溃了。


点赞6、江门市 网友:恬矜儿

在这之前我想问大家一个类似的问题:1985年微软发布的Windows 1和2021年发布的Windows 11有什么区别?

要知道如今Windows 11的系统安装包大小在4G~5G之间,而Windows 1的系统安装包仅有300KB左右。毫无疑问Windows 11比Windows 1臃肿了无数倍。Windows 1能作为现如今的生产力工具吗?显然是不能。

翻看Windows近50年的历史我们就会发现Windows每一个版本都会增加许多新的功能,可不仅仅是界面变得花里胡哨更好看了。实际上就算实现一个非常小的功能,就需要大量的代码作为支撑。

在前台操作的我们可能很多功能都没有用到,但确确实实有很多人因此而受益了。俗话说“众口难调”,而微软却在调制一款符合绝大多人口味的Windows,这也是Windows这么多年仍然占据桌面操作系统80%以上市场份额的原因,微软的Windows同样遵循着摩尔定律和市场需求在不断变胖。

Linux是啥?

很多人都把Linux和Windows、MacOS放在一起做比较,这也并没有什么错。严格意义上来讲Linux是一个遵循GNU通用公共许可证(GPL)的开源作业系统核心,它包含了图形界面和其他使用工具,任何个人和机构都可以自由地使用Linux的所有底层原始码,也可以自由地修改和再发布。

从Android的系统架构图我们就会发现,Android同样基于Linux内核。2017年3月Android全球设备数量和网路流量超越了微软的Windows,成为了全球第一大操作系统。毫无疑问,Android之所以能够取得这样的成功在于Google在Linux内核的基础之上做了一些改变和创新。

Android系统的改变和创新

上面提到Linux是GPL开源协议,按照这个逻辑下去,高通、MTK这些芯片厂商的驱动都得开源,这个他们是不愿意的。谷歌于是就在Linux的上层添加了HAL层(Hardware Abstract Layer)将内核和驱动程序隔离了,这样Linux社区就不会认为Android是Linux的分支版本。芯片厂商不用开源驱动,隔离驱动之后系统升级也就变得更为简单,简直就是一举两得。因此Android采用了Apache开源协议,对免费开放的Android系统修改之后可以不进行开源。

很多人都在吐槽Android采用了Java和Dalvik/ART,大幅的拖慢了软件的执行效率。Android采用Java初衷挺简单的,就是让庞大数量的Java程序员可以非常容易地转到Android开发,这样短时间就可以丰满Android的生态系统,这点和独立专行的Windows Phone形成了鲜明的对比。既然选择了Java那么逃避不了的就是虚拟机,于是就有了Dalvik,而ART其实就是优化之后的Dalvik。

Android并没有采用直译的机器码来运行,而是采用了Runtime,很大一部分原因基于“手机”来进行考虑。手机必然有很多用户的隐私数据,所以就需要为每一个APP定制相互隔离的沙盒环境,Runtime就是这样诞生的。

Android杀内存这件事也同样被很多人吐槽,很多人都拿IOS的“墓碑”后台做对比。Android杀内存是因为早先的Android系统内存太小了,几百M是非常常见的,所以Android就设计了Low Memory Killer来干掉很久不用的后台APP,留给用户当前能看到的APP用。

如今Android原生版本其实对于后台APP是相当宽松的,内存显然够用了,强杀内存的策略一般是手机厂商自己定制的,这样手机就可以更省电,而用户也能感觉手机可以非常流畅地运行。

总结

谁曾想到原先展开仅有几百M的安卓系统,如今展开有10GB大小,如今任何一个程序都比之前的安卓系统大。微信1.0仅有457.7KB,仅有文字聊天功能,如今微信添加了各种各样的功能,比如语音信息、朋友圈、支付、小程序等等,如今微信安装包150MB左右,用一段时间之后轻轻松松就近10GB。软件、系统越来越臃肿的原因在于给我们提供了更多的功能,方便我们的日常生活、工作。所以还就真别较真Android变胖了,实际上IOS也变胖了。


以上个人浅见,欢迎批评指正。

认同我的看法,请点个赞再走,感谢!

喜欢我的,请关注我,再次感谢!

点赞7、鄂州市 网友:最佳恋人

我也想过这个问题,为啥不控制安卓下APP的自启和后台泛滥,结论是吸引开发者开发免费APP。天下没有免费午餐,如果一个APP不能常驻手机内存收集用户数据做大数据分析,又不能在后台推广告,那就必然只有收费一个途径,要不然谁愿意开发APP,安卓也成不了今天的气候。

点赞8、阳春市 网友:紫色温馨

说实话,不觉得linux干净稳定了……android不装乱七八糟的应用也挺干净的。linux里面经常你也不知道很多配置和依赖文件被开发者扔到了哪个犄角旮旯,相比于android,你觉得linux干净的原因是因为你没装过很多个人开发者或者小团体开发的应用。android反而是一堆,要是这些开发团体也跑去linux给你开发应用,你就会觉得linux也臃肿和乌烟瘴气了

知识推荐

八哥问答——日常生活学习知识分享。 垃圾信息处理邮箱 tousu669@163.com 网站地图
icp备案号 闽ICP备2023007808号-3 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.12606.com All Rights Reserved