是不是軟體越升級就越占內存和CPU?為什麼?


是。

除了個別小版本的升級是做了些優化以外,總體趨勢是隨著版本升級,資源佔用也在增多的。

但這是好現象嗎?當然是好現象。

除了個別軟體質量太差有bug外,軟體佔用的CPU和內存都是基本合理的。

這些資源被用於滿足用戶需求,也許你沒覺得功能有什麼增加,但是別忘了隨著軟體用戶增多,各種千奇百怪的個性化需求也多了,哪怕只有一萬個用戶才會用的功能也會有幾百個大大小小的功能點。

除了功能需求外還有體驗需求,你是不是希望界面好看點,動畫流暢點,點開任何功能響應迅速點,這些都是要拿CPU和內存資源去換的。

另外,軟體還有個規律,就是體積和資源消耗對於功能和體驗的提升是收益遞減的,到後來可能資源佔用大了10倍,用戶才感覺軟體變好了2-3倍。比如 Windows7安裝盤比xp大了快10倍,你覺得好用了多少,也就2-3倍吧。

但是用戶買硬體不就是為了用的嗎?弄個四核CPU,4-8G的內存不用也是閑置著。

由於早期的電腦價格比較高,硬體性能普遍很差,導致用戶養成了一個不太好的認知,就是認為軟體佔用資源越少越好,別把我這很貴的電腦累壞了,而且當遇到崩潰 卡的時候首先懷疑是不是內存 CPU占太多了,這都是小白用戶在不懂技術的情況下憑直覺產生的錯誤認知。

外加微軟把任務管理器這種本應該給專業人士使用的工具開放給了所有用戶,進一步加劇了這種錯誤認識。你看iPhone,根本就不告訴用戶CPU和內存的使用情況,我這種專業人士都只能自己寫程序才能獲取這些數據。

有些用戶一定覺得軟體開發者是在變著法兒地坑用戶,在軟體里塞很多莫名其妙的私貨吧,平白佔用大量資源。但實際情況不是這樣的,稍微像樣的公司都有嚴格的性能測試,CPU內存都是有明確的指標的,某個版本超標了是要當作bug改的。一般團隊里最優秀的工程師會被安排做性能優化,這也的確是有技術含量的工作。


Andy and Bill"s Law


升級軟體一般有這幾個目的:修復BUG,添加新功能,優化性能,提高用戶體驗。

第一個不好說,各種情況都有。

加新功能佔用的內存大部分時間是要增加的,因為有新的數據產生,也可能佔用更多的CPU資源,這個要看軟體的設計。現在的QQ和以前的QQ比就大多了。

第3和第4點其實是一點,優化性能主要是為了提高用戶體驗,主要是響應速度上,比如有些數據是存儲在硬碟上的,你第一次調用時要從硬碟上讀,但用完了之後可以選擇從內存中釋放掉,也可以常駐在內存中,從內存中讀與從硬碟中讀這個速度差別是很大的,這也是空間換時間的一種設計。CPU的佔用則不一定增加。

另外CPU這個不同機器差別也很大,內存則差別不大。


流氓軟體的軍備競賽


為了更好的佔領你的桌面,通知欄,瀏覽器,鎖屏


你不知道國產軟體很喜歡耍流氓么


「軟體是一種能夠迅速填滿硬體的氣體,硬體發展了,軟體能夠立刻填滿新增的空間」

這是二十年前剛學電腦時候某個老師說的,貌似也是引用,具體原作者不詳。

說白了就是軟體推動硬體進步的,看看從幾K發展為幾十個G的程序,看看從8位機變成的64位機,看看那些被稱為「顯卡危機」的遊戲們。就是這幫貨把硬碟、內存、CPU、顯卡推動到現在這個世代的。

怎麼能讓軟體更炫酷?加新特性啊!加新特性就得繼續燒CPU/內存/顯卡啊!不把你老設備燒了怎麼能讓你買買買啊,你不買買買我們這幫碼農還怎麼賺錢!不賺錢怎麼娶媳婦!不娶媳婦怎麼生小程序猿/媛!不生小程序猿/媛怎麼寫代碼繼續燒你設備!。。。


國內某些公司全家桶是最可惡的,不用的時候相互喚起,這種內存佔用是很沒必要的


變大大了,經常抽風。


得看你是不是用小米 他家系統升級的改善完全是隨機的


總體上軟體的更新在硬體的承受能力內的

相信我 家用i5一般3年不會出現瓶頸(卡基說e3能搞5年)

內存 按一般配機是上4g就夠用了

我建議還是上8g 或者更高 以後都是x64位系統和x64軟體了

一台好電腦非常重要 能當你人生一大助手

你可以用你的電腦建立自己的收藏庫 收集你需要的資料啊 網站啊 博客 配置自己的瀏覽器 甚至按個人習慣定製瀏覽器

你可以用你的電腦完成自學 基本ps 3dmaxs 精通office3大件啊還有可以學編程css啊不是211 985 出來的話 人生社會第一次的重要學習就在你的電腦上了

後面你想暢遊世界的話 goagent 一般我設置開機啟動並隱藏圖標 當你訪問境外會自動啟用的 (要配置瀏覽器擴展)

手機碼字 思路不是很清晰 最後說句

但對於會用電腦的人來講 絕不會是下班看看電影 上上淘寶 百度一下那麼的工具


推薦閱讀:

大學的專業分好壞么?
美本學生考慮申研,生物專業帶cs的certificate,選純CS還是bioinformatics呢?
哈爾濱工程大學 (計算機科學與技術),與吉林大學 (軟體工程) 的選擇?
為什麼大學計算機專業四年不以製作一個操作系統來進行教學?

TAG:編程 | 計算機科學 | 計算機專業 |