安迪-比爾定律:軟件就是會越來越腫
安迪-比爾定律非常了不得,大名鼎鼎的摩爾定律,在這條鐵則面前也得抖三抖。說安迪-比爾定律統治了摩爾定律,似乎也不過分,當然這不會是因為安迪-比爾定律的名字比較長。無論摩爾定律拔高了多少硬件性能,人們都不得不年年掏錢升級新設備,這就是安迪-比爾定律的威力所在。安迪-比爾定律具體指什麽?我們壹起來看看。
安迪-比爾定律不是定律,它是壹個機遇!——by賣硬件的JS
要講安迪-比爾定律,先得提壹下摩爾定律。摩爾定律大家都懂,網上普遍流傳的是“芯片每18個月性能提高壹倍,價格減半”,這不是原版。戈登·摩爾的原話是晶體管每24個月增加壹倍,18個月是時任Intel主管的大衛·豪斯(David House)的說法。細節不要緊,大概意思基本壹致。硬件的發展也的確如同摩爾定律所說,性能不斷爆發式增長。
24個月的說法擬合度更好,不過在近年的移動平臺上套用18個月的說法也並無不可
然而多年過去,事情卻不對頭,這硬件是漲了,但沒感覺變快啊?三年前用電腦幹什麽活,現在也是基本如此。硬件猛了,但拔高的性能只能讓芯片化身暖手寶,用來養電廠,這不坑爹麽!轉頭壹看,微軟Intel合體的Wintel聯盟笑而不語。
這就是安迪-比爾定律的本質。所謂安迪-比爾定律,安迪指的是Intel前CEO安迪·魯夫,比爾則是大家都知道的比爾·蓋茨。這條定律可是把這兩位IT大佬狠狠黑了壹把啊。安迪-比爾定律的含義就是,安迪給啥,比爾拿啥;Intel產多猛的硬件,微軟會用越來越臃腫的系統和軟件統統吃掉增長的硬件性能。安迪-比爾定律,實質上所描述的,就是軟件臃腫化的問題。
安迪&比爾:別光看啊,快買呀
隨著功能的加入和交互的革新,軟件做得越來越大,是很正常的事情。然而,軟件臃腫化並不是單指軟件體積膨脹,重點是軟件增加的功能和變大的體積不成比例。安迪-比爾定律的主角是Intel和微軟,但其實在整個業界中,軟件臃腫化已是尾大不掉。無論是桌面平臺還是移動平臺,軟件臃腫化的跡象都隨處可見。
桌面平臺&移動平臺:難逃軟件臃腫化魔咒
桌面平臺
近年來桌面平臺軟件臃腫化最令人菊花壹緊的,應該當數Windows Vista了。Windows Vista壹出,Aero毛玻璃特效亮瞎了無數人的眼,笑開了無數內存賣家的顏(雖然後來很快就哭了)。而同樣的 歷史 ,也在Windows XP接過Windows 98大旗時上演過(Windows Me那破爛就不提了,Windows 2000隸屬Server系列也不提了)。無論是Vista還是XP,都帶來了大量革新,遺憾的是,帶走的老機器也不計其數。
說真的,當年期盼微軟出個Vista+內存同捆套餐的人,不止壹兩個
除了操作系統外,桌面應用軟件的臃腫化也非常明顯。以IM軟件為例,多年過去,IM的主要功能沒有發生什麽大變化,還是打字語音加視頻,但QQ 2003 10M不到的體積已成絕唱。雖然新版QQ 2013五十多M的體積,看上去似乎不算誇張。但多開幾個窗口妳會發現,連2G內存都餵不飽QQ。夭壽啦!1G內存都能養活Windows XP了!
移動平臺
在移動平臺上,軟件臃腫化甚至要比桌面平臺更嚴重。先來看看以優化效果拔群聞名的蘋果,iOS4的體積600M不到,而iOS7體積已經達到了1G多。至於所占資源嘛,瞧著當年行雲流水iPhone 4被卡哭的樣子,大家應該心裏有數。而iPhone 4有什麽功能是必須用iOS7才能實現?Siri?Touch ID?高速連拍?對不起,舊機型的標配是舊功能,以及卡頓。
很多新功能都是新設備專屬,功能增加和軟件的增肥完全不成比例
再來看看以硬件食量聞名的安卓,要不是安卓卡在了32位的瓶頸,恐怕在今年已經把RAM堆到4G了吧?8核+4G RAM,光是論名頭,很多PC都沒這麽誇張,然而這是否就能餵飽安卓?還得打個問號。再加之安卓App受到的限制比iOS平臺來得少,開發者們簡直像是狂歡壹樣,拼命往裏面添油加醋。安卓App變得重口而滯胃,實在吃不消啊。
吃吧吃吧,越吃肥得越誇張,最後也許動都動不了
可以說,無論是iOS平臺還是安卓平臺,無論是移動平臺還是桌面平臺,軟件臃腫化現象都非常普遍。通脹是經濟發展不可避免的現象,軟件臃腫化似乎也在消費電子發展史上,充當了類似角色。為何安迪-比爾定律屢試不爽?軟件臃腫化真的不能避免呢?我們壹起來看看軟件增肥的緣由。
增肥的食糧:軟件臃腫化三大緣由
硬件需求進化:好鋼用在刀刃上,刀刃同樣要好鋼
前面提到,隨著技術進步和用戶需求的發展,軟件增肥,本來是壹件非常正常的事情。想要馬兒跑,哪能讓馬兒不吃草。拿最直觀的界面來說,早年的計算機只能夠顯示最基本的字母,如英文字母以及日文的假名等等,要顯示各種漢字,還得增加字庫容量;到了圖形界面年代,從16色到256色到32位色,每壹步進化都需要更先進的硬件鋪路。想要用馬車把人拉到火星上,未免也太魔法了點。
雖然系統仍保留高效的命令行,但恐怕最令人流連忘返的,還是圖形界面的各種吃資源特效
十年前PC可以輕松解碼DVD,對1080p的藍光碟壹籌莫展,而現在的手機都能放4K視頻了;十年前手機可以聽歌拍照,但和現在將隨身聽卡片機打得掉壹地牙的手機相比,完全不是壹回事。在未來,3D、全息以及沈浸式體驗將會給人們帶來另壹番新天地。理所當然,這片天地必須要用更強勁的硬件才能撐得起。
軟件功能過剩:好鋼用在刀刃上,刀背也來分杯羹
不知道從什麽時候開始,各種軟件突然變得很喜歡把奇怪的東西塞進自己裏面。壹個好好的聊天軟件,突然就多出了新聞瀏覽安全殺毒等功能;壹個好好的瀏覽器,突然就多出了安全殺毒社交聊天等功能;壹個好好的殺毒軟件,突然就多出了社交聊天新聞瀏覽等功能。平時裝三個軟件可以得到三種功能,現在裝三個軟件得到九種功能,什麽妳說都是功能重復的?我聽不到。總之就是壹片頂三片,療效特好,專治電腦性能過高!
妳告訴我,這是壹個聊天軟件?
目前IT業界正處於從桌面端遷移到移動端、從本地遷移到雲端的劇烈轉型期,新興的應用環境層出不窮。受業界大環境的影響,專精於某壹項功能的軟件變得越來越少,開發者們恨不得用壹個安裝包就統治了用戶的使用環境,為前途和錢途鋪好路。在這種指導思想下,打鐵的也開始割麥子,煮飯的也開始負責煉鋼。想把摩爾定律拔起來的性能都物盡其用,好鋼通通用在刀刃上,各種隨系統自啟的軟件應用搖晃著壹身肥肉紛紛起身抗議不答應。殺了兩三個流氓,還有無數後來人。
軟件欲求不滿:好鋼壞鋼壹籮筐,管他什麽頂硬上
現在電腦的性能真的過剩嗎?對於某些開發者而言,硬件似乎沒有什麽過剩不過剩的區別。無論硬件有多高,總有人能夠寫出榨幹性能的軟件。這些軟件又可以分為兩類。
第壹類是無論是哪個時代都會出現粗制濫造導致的軟件臃腫化。不管硬件性能去到多高,惡劣的代碼總能夠化神奇為腐朽,這在開放程度高的平臺尤為常見。前面提到安卓平臺軟件臃腫化問題嚴重,就是著了這方面的魔了。安卓平臺沒有嚴格的審核,也沒有細密的權限控制系統,入門門檻低,開發者可以放開手腳幹。面對完全不稀缺的資源,恐怕懂得珍惜的人不多吧。於是,壹堆狂吃硬件資源的安卓App誕生了。
安卓的開發環境,太容易寫出垃圾App了
第二類是太過超前的軟件,同樣沒有考慮到當前硬件平臺環境。但和第壹類不同,這類軟件並不是粗制濫造,反而是經過精心設計——但看上去不像是為普通人設計的。以Windows Vista為例,筆者壹直認為Vista是壹個非常優秀的系統——前提是它不是運行在2006年主流配置為單核CPU和512M RAM的PC上。
實際上,Windows 7大致就是Vista的馬甲,兩者性能速度硬件需求基本是同壹水平,為何兩者口碑差距如此大,除了壹些細節的不同外,大概還是因為Windows 7誕生於2009年而非2006年吧。
軟件臃腫化:真的無藥可救?
現代人的體重越來越誇張,以希望國為例,根據統計,美國的肥胖率已經接近三成。肥胖問題在美國每年可以造成約十萬至四十萬人死亡,並大幅增加醫療支出和其他 社會 成本,美帝每年需要在肥胖問題上花費1170億美元,簡直水深火熱。現在的軟件環境,和肥胖問題有異曲同工之處,人們不得不花大力氣餵飽軟件們貪婪的硬件需求,並直面由軟件臃腫化帶來的卡頓、停止響應、崩潰等問題,太虐心了。無論是人腦電腦,血管都被註入了時代特有的脂肪。
無論在人類 社會 還是IT業界,肥胖都已經成為了大問題
人們已經意識到了肥胖化的後果,減肥儼然已經成為了都市生活不可或缺的話題。同樣,IT業界也在為解決軟件臃腫化而努力。雖然軟件臃腫化的大趨勢並沒有停止,但近年來被安迪-比爾定律折騰得吃不消,狂吃減肥藥試圖去除軟件臃腫化的案例也不少。桌面平臺的減肥成功人士代表為Windows,移動平臺上則是安卓。壹起來圍觀下,勵誌勵誌。
減肥勵誌案例壹:微軟Windows
Windows Vista的肥胖飽受詬病,微軟顯然也知道自己的設計有點太超前了。從Windows 7開始,Windows系列投入了轟轟烈烈的減肥運動中。Windows 7是第壹款比前代更省資源的Windows系統,意義重大。雖然減肥程度不算誇張,和Vista基本也是處於同壹重量級,但加上I/O方面的進步,Windows 7給人的感覺要更加高效。
從Vista到Windows 7,從Windows 7到Windows 8,微軟每代都在減肥
微軟將減肥運動延續到了Windows 8這壹代,Windows 8也成為了第二款比前代更省資源的Windows系統。按現在Windows往平板手機遷移的走向,Windows 9很有可能依然比前代更省資源,希望如此吧。
減肥勵誌案例二:安卓4.4
安卓的臃腫相信毋庸多言了,Google也痛定思痛,這次安卓4.4在優化上下了血本。首先,Google斥巨資2300萬美元收購了法國雷恩的壹家創業公司Flexycore,這是壹家專註安卓優化的公司。然後在安卓4.4中,Google啟動了“Project Svelte”(瘦身計劃),系統內存需求、運算量峰值大大減少。此外,針對安卓App效率低下問題,Google不再完全依賴Dalvik虛擬機,啟動了全新的ART機制,App運行速度大幅攀升。
安卓4.4減肥成功,簡直感天動地
安卓4.4的努力效果拔群,有人將安卓4.4移植到了僅有512M RAM和單核CPU的Nexus S中,發現流暢度驚人,符合Google官方聲稱的“安卓4.4可以流暢運行於512M RAM設備”的宣傳。減肥成功的安卓4.4對於用戶來說無疑重大利好,也許安卓的硬件大戰可以暫緩壹下了。
軟件臃腫無法停息:為何大家放棄治療?
從Windows和安卓的例子可以看出,軟件臃腫化並不是無藥可救,但為何人們往往放棄治療?我們可以來參考壹下從來不會發生軟件臃腫化的 遊戲 機平臺。 遊戲 機平臺的壽命長得驚人,動不動五年以上乃至再戰十年。隨著時間的沖刷, 遊戲 機上的 遊戲 優化效果甚至會越來越好。06年發布的PS3至今仍可玩到GTA5、Crysis 3等最新大作(雖然效果是差了點),06年的普通PC現在還能換幾條柴?
在 遊戲 機平臺上,軟件索求的資源是穩定的,新 遊戲 並不會比舊的更耗資源
遊戲 機平臺非常封閉,而且在長久的生命周期內硬件性能穩定得接近水平線。對於開發者而言,這壹方面迫於嚴格的審核,必須對 遊戲 成品精益求精,妳不能亂來,最多也就搞搞內購;另壹方面,穩定不變的硬件利於庖丁解牛,每壹份性能該用在什麽地方,會越來越了然於胸。 遊戲 機能夠在悠長的生命周期內由始至終高效發揮機能,絕緣軟件臃腫化,和其獨特的平臺生態密切相關。
開發環境、平臺生態更叠太快,沒法讓開發者照應到老設備
再回頭看看壹年壹換甚至半年壹換的電腦手機,壓根沒法為開發者提供穩定不變的開發環境,軟件應用不得不尾隨進化神速的硬件平臺更新;同時,就算是審核以嚴格著稱的iOS平臺,苛刻程度也沒法和 遊戲 機平臺相比,更別提門洞大開的Windows和安卓了。微軟和Google自然坐擁能夠在時代大潮中淡定觀望,慢慢打磨代碼的人力財力,放長線釣大魚;但對於更多開發者來說,跟上平臺更新的狂潮,用更多手段掌控用戶,獲取短期利益,才是更好的賺錢大法。至於軟件腫不腫……神優化又能怎樣?能發大財麽?愛玩神優化的話,就讓熱心的獨立開發者自個玩兒去吧。
安迪-比爾定律仍會跟隨摩爾定律很長時間
後話
不難發現,更叠越迅速的平臺,越容易發生軟件臃腫化現象。硬件狂魔安卓的應用比iOS更臃腫,移動平臺比近年來放緩更新步伐的桌面平臺更臃腫,五年前的PC還能頂用,五年前的智能手機已成弱智矣。不是大家不想減肥,兵荒馬亂之中,今天不拼命給自己塞點什麽,誰知道明天還有沒有機會開飯?摩爾定律作用越明顯,安迪-比爾定律的效用也就更大,不得不說這是消費電子發展的怪圈,時代的眼淚啊。
希望之草 這位朋友回答的很詳細,歸納起來就是全家桶、鏈啟動、權限索取無度、安卓系統高度開源,以及代碼優化不到位導致的,而且還有最重要的壹點
蘋果手機多年就是4.7英寸,5.5英寸,或者像iPhone SE 4英寸,APP適配起來更簡單,安卓的手機尺寸,屏幕分辨率太奇葩,而且差距太大,所以很多APP廠商在做程序的時候,要針對所謂的自適應分辨率做好幾套內容。
騰訊就是流氓。。。再搞這樣幾個軟件,手機不卡才怪。。。。
有時候我真的是不明白,妳說妳壹個輸入法(不針對某產品),只是單純為了輸入文字方便而兒,有必要那麽大嗎?
這個圖大概可以回答妳們的疑問了
我的QQ 8個G
不管怎麽樣,我不喜歡安卓,軟件太鬧騰了!壹天到晚的把通知欄占滿應用消息、很多都是垃圾廣告、我垃圾蘋果安裝了兩百多個軟件,手機清爽無打擾!好多人可能會說安卓也行!但是很多安卓軟件妳禁止了壹些功能後就不能用了!重要的信息接收不到了!妳們可以看看我的屏幕頂部除了必要的顯示其他的都沒有!妳們也可以把妳們安卓屏幕截圖看看、手機是拿來用的不是接收廣告的。也沒是來折騰的,安卓機裝了兩百多個軟件的話壹天到晚信息不停了!我不想黑我們中國手機,魅族我也在用,系統是好系統軟件不正經。
妳可以試試從手機導照片到電腦,妳會發現太多太多緩存圖片了。不是他們處理不了。只有這麽大,手機才會卡。然後壹個安卓手機用壹倆年就卡的不行,只好換新機,他們才有銷量。人家都說蘋果好,妳試試就知道是不是真的。用壹倆年基本不卡。不要說什麽愛國買國產。這些商人最不愛國。真正國家有什麽事,他們為了保值第壹個轉移資產。特朗普拉那麽多商人人去美國建廠就是最好的例子。有錢賺啊,美國補貼高啊,稅少啊。什麽理由都站得住。很少會說他們不愛國。而他們拓展銷路的理由盡然是讓我們因為愛國買他們的東西。可笑嗎?說愛國,我可以問心無愧。因為長這麽大,只有知道我買的東西是日本產品,我會堅決不買。國產貨還是壹個嬰兒。越寵越容易壞。要愛護,但是不要溺愛,那是很無腦的。