同樣的內核,為什麼linux乾淨穩定,而android臃腫又烏煙瘴氣?

平凡科技


因為為了方便開發者開發app建立生態圈,開放了各種能去讓開發者可以很容易的跟底層硬件去接觸。但是安卓硬件本身標準參差不齊,這種和底層溝通的能力在抽象共通的過程中出現了一些格外的“副作用”,比如動態語言不可避免的垃圾回收,在低性能硬件上造成的影響是很明顯的。對比ios有自己的硬件加持特殊照顧,安卓更像是大家都可以使用的一個“構建”罷了。一般的企業就直接用原生的也就是google出什麼我適配什麼硬件,稍微有規模的拿這個“構建”頂多就是換個皮膚改下UI稍微能提高點流暢度,再大規模的比如華為的方舟編譯直接搞掉虛擬機。這充分的印證了毛主席所說“槍桿子裡出政權”,軟件是建立在硬件基礎之上的,如果硬件能統一標準去貼心優化軟件系統是可以改變類似安卓的亂像,這真的需要一場“革命”。


拽拽紳士76


眾所周知,現在智能手機操作系統主要有兩大類:Android、iOS,採用Android系統的智能機品牌廠商很多(如:華為、Oppo、小米、魅族、三星、還有一些雜牌機等等),而iOS系統只有蘋果的iPhone在用。很多人在購買手機時都會偏向iOS,無論是性能上還是體驗上iOS要優於Android。

站在技術角度上說,Android是基於Linux內核開發的一套新系統,那為什麼Linux內核及系統乾淨穩定,而Android系統給人的印象就是臃腫、運行速度慢、流氓應用多呢?

Android系統是基於Linux內核開發的

Android系統是谷歌(Google)公司基於Linux內核開發的一套開源商業系統,主要面向手機終端設備的。從本質上講,Android也是屬於Linux系統,只不過和其它Linux類系統不同的是,Android系統裡用到了虛擬機技術(Java虛擬機),所以和Linux類系統差別很大。

因為虛擬機本身就是一種開銷,所以在性能上,Android系統肯定比不上其它的Linux類系統。

谷歌公司只負責系統開發,沒有控制住Android的生態

雖說Android系統是谷歌開發的,但谷歌自己並不生產製造手機,而系統最終是要運行在終端設備上的,問題來了,Android系統交給眾多手機廠商去適配,每個手機廠商對Android系統都會做一定優化及定製(比如預裝一些軟件),這樣一來在源頭上就無法把控Android系統的生態!

除了系統和手機設備外,還離不開各類App應用的支持。如果我們用的是Android手機,想裝一款軟件的渠道有很多種,比如:

  • 網絡上下載的apk文件進行安裝;

  • 各類應用市場進行安裝。

看似很方便,其實這種“便利”讓Android的生態變得更差,各類App應用質量參差不齊,裝上這些App你的手機不慢才怪。

iOS之所以乾淨高效,靠的是蘋果的把控

對標iOS系統,為啥iOS系統及應用給人的體驗好,蘋果iPhone比Android機卡頓情況要好?真的是Android系統比不上iOS系統嗎?

未必,iOS之所以體驗好是因為蘋果公司對於App應用的開發、應用上架把控相當嚴格,而且蘋果的iOS只能運行在蘋果手機上。這些措施使得蘋果的生態很乾淨,不存在一些垃圾流氓應用。


以上就是我的觀點,對於這個問題大家是怎麼看待的呢?歡迎在下方評論區交流 ~ 我是科技領域創作者,十年互聯網從業經驗,歡迎關注我瞭解更多科技知識!

網絡圈


Android系統的底層設計是定製化的Linux內核,只是Android系統在底層系統上面又增加了一層叫做Dalvik的Java虛擬機,而Java語言的特性是跨平臺的,缺點是在程序運行的時候比較注重硬件的配置,硬件配置過低的話,運行的速度就會很慢。但是Google公司,為了讓安卓系統中的Java虛擬機能夠在每臺智能設備上高效的運行,dalvik虛擬機被改寫,這樣可以使得內存的使用降到最低。

Android系統和蘋果IOS系統兩者的開發語言對比,蘋果IOS系統中很多模塊都是用C語言和彙編語言搭建而成的。基於開發語言,我們可以說是IOS是最貼近硬件的系統,這樣一來程序執行的效率也就較高,雖說Android系統集成了Java虛擬機,但是為了兼容,在設備的硬件和軟件程序間新增了一個獨立硬件的調用層。程序通過虛擬機然後經過調用層才可以操作硬件。

其次就是Android系統對第三方軟件的管理過於鬆散。Linux系統上運行的軟件一般都是通過開源社會提前審核通過的開源軟件,這樣一來軟件的安全性以及規範性都是可以得到保證。Android系統運行軟件一般都是由第三方開發的閉源軟件,而且在國內,根本沒有針對第三方軟件的比較嚴格審核平臺以及規範性文檔,國外至少還有Google Play這個平臺。基於Android系統的開源性質,很多廠家自然就隨意對安卓的應用軟件層進行修改。甚至還可以進行深度定製化,然後在手機出廠後,對手機系統預裝各種與自家公司相關的推廣軟件,並且限制這些軟件不可別卸載。

按道理來說,Android系統和Linux系統兩者可以說是嫡系的關係,兩個都應該在軟件的流暢度和安全性方面十分出色才對,但事實上,Android手機卻成為很多詐騙人員活躍的地方,也是很多流氓軟件盜取用戶信息的地方。這其中的部分原因是Android系統是一個很火熱的開源系統,代表著巨大的利益,而很多手機廠商為了讓自己產品更有賣點,進行了Android系統進行了深度定製化開發,造成部分漏洞。另一方面是開放自己的應用商店,不對第三方軟件進行限制,任由其隨意的在Android手機安裝應用,各大廠商的應用商店幾乎沒有任何深度的審核就能安裝各種軟件。

說到底,其實還是系統開源後不進行規範管理造成的,國內智能手機的應用市場很多,APP可以在任何一家應用市場上架。


凱騰凱


回答這個問題,不光要從科學技術,操作系統的設計上出發了,因為Android變的臃腫是一個必然結果。它的變化就像一個社會一樣,需要接受一切條件,需要滿足一切需求,還要開放自由,最終就會變得極其複雜,我滿足了一切,卻也帶給了你更多不想要的累贅。而限制越多,自由越少,社會就會變的更加穩定和可控。

當然這只是從哲學角度分析從技術發展的眼光看,首先Linux內核其實不太適合移動設備,它當初設計出來就不是為了幹這個的。沒辦法Android的起源只是一個22人的小公司,沒有能力單獨開發一款內核,為了更好的兼容性和對開發者的友好,採用了虛擬機和java的開發模式並保證系統的開源。這是一步好棋,保證了系統最好的兼任性,可以運行在任何設備之上,他成就了現在的Android,不可否認Android已經成為了世界上使用最多的操作系統,並且無處不在。

但是開放也就代表這風險,代碼是開源的漏洞啥的確實要好找的多,在基於java語言的特性各種流氓app通過hook,走後門等方式來霸佔著你手機的內存。google當然也不是傻的,其實google現在對於權限的管控一點都不比Linux差,在Android 5.0上已經開始引入權限系統和Art虛擬機,6.0上減少後臺程序的自起,7.0加入Project Svelte和刪除沒用的廣播,8.0加入了更加安全的企業模式和權限的進一步收緊,到9.0更開始不予許反射系統代碼。google為了給予Android更多的限制,特意將大量服務抽調出來封裝在不開源的gms上,一個能用gms的手機可能才是google眼中的Android。

通過gms,Google能統一控制app的推送,完成一些基礎功能,審查上架app的質量,統一的進行數據的管理和廣告的推送等等。然而這貨在國內是完全沒用的,國內的Android完全是自成體系的Android,相對於Google的Android是更加臃腫,混亂的Android。為了保證通知推送開發者不得已想辦法保活,為了一個可能gms上一個方法的事情,我們要單獨引入很多的代碼。當然這麼看這一就是一件壞事嗎?其實不然,華為這件事我才明白了國家的良苦用心,Android畢竟是開源的但gms不是,如果我們國內都用gms,美國真的可以輕易的對我們下手,那個時候的影響可是非常恐怖。國家現在也在開始治理權限使用過多的問題。雖然Android不可能變成Liunx那樣的乾淨。但未來也不會更差了。


老薑看老薑


其實Linux也不乾淨,但Linux用戶多是企業用戶或是技術人員,運行的軟件也都是企業應用和各種技術軟件;而android用戶絕大部分都是普通人士,運行的多是日常軟件。日常軟件由於貼近人們的生活,利益驅使使得在任何一個平臺上都乾淨不了,包括windows.


咎皇


應該問為什麼Linux和Androids不兼容!因為雖然都是LINUX kernel. 但它的Fremware架構是不同的,所以Android並非Linux,應該說Android是Linux system的一個變體。


1775905


這幾年安卓穩定安全性完全不亞於iOS,某果的水軍就開始活躍起來。


愛牙26372598


安卓哪裡臃腫了?!是安卓app不要臉吧。逼呼菊花手環,需要安裝三個app,平均每個app單是安裝包就超過80m,再比如微信,內存佔用差不多一個g(內存,不是閃存。)要我說安卓已經很了不起了,要不是繼承了linux優秀的內存管理,早就崩潰了。



坐等水軍集團招募


你這個問題沒有答案😂

1 先得搞清Linux系統的概念,什麼叫Linux系統?

你所說的Linux系統是個大範圍概念,Android 本生就是一個Linux系統,和Android平級的得稱為GNU/Linux系統,該系統除Linux內核外其餘部分主要是由 GNU 工程編寫和提供的程序組成。

2 Android 系統是什麼,脫離GNU/Linux目的是什麼

Android 為了達到商業應用,必須移除被GNU GPL授權證所約束的部份, 比如基本的GLibc庫就被Android的bionic庫代替,也並非使用標準的kernel header files,因此你說的遷移根本是不可能發生的,Android為了商業化都是遠離它們

3 你說的Linux穩定乾淨的前提也是不存在的

GNU/Linux系統有很多分支,比如主流的Debian就是一個GNU/Linux系統的一個發行版本,基於它的衍生版本還有Linux Mint 和 Ubuntu等等,10個指頭都數不下,而且質量差的垃圾系統一大推?他比Android 乾淨?穩定更不用說了,這些操作系統用的用戶量全部和起來都沒有Android一個手機廠家的用戶量大,穩定性根本經不起考驗。商業利益很大程度決定了系統的好壞。IOS為啥比Android穩定,商業環境好,開發有錢賺,就會質量越來越高,這是一個良性循環,你去開發一個沒人用的Linux系統,你就是投入1個億也穩定不了

總結來說,基於一個錯誤前提的提問是得不到一個正確的答案的😂



拉那烈


谷歌為了使系統不被GPL汙染,對Android進行了很多修改,可以說Android不是Linux。


分享到:


相關文章: