漲姿勢:Android手機的系統為什麼叫ROM

romjd發表於2014-10-10

  安卓手機系統為什麼叫 ROM?可以說不僅僅是安卓系統叫做 ROM,目前所有的手機系統,都可以叫做 ROM(包括但不侷限於蘋果、塞班、黑莓)這是由於 ROM 是隻讀記憶體(Read-OnlyMemory)的簡稱。特點是隻能讀而不能快速改寫。

漲姿勢:Android手機的系統為什麼叫ROM

  因此所有刷寫進不可改變或擦除的系統我們都可以將之成為 ROM。

  相對於 ROM,其實稱之為韌體更加合適。ROM 和韌體就是一個寫入和被寫入的關係。

  最經典的例子就是電腦上的 BIOS,各種電視紅白遊戲機的卡帶,還有早期電腦上的一些驅動。這些都是真正的 ROM,把程式程式碼擦寫進固化記憶體之中。這種是真正名義上的 ROM,從硬體上決定了只讀性,同時通常也是一個軟體系統的底層和核心部分。

  那為什麼手機(安卓)系統也叫 ROM 呢?

  這是因為手機系統必須保證其自身的完整性和穩定性,在被使用者使用的時候不被使用者和惡意程式改寫其核心檔案。

  體現在安卓系統上就是 root 許可權,預設沒有 root 許可權的話,是沒有辦法改寫系統檔案的,而作業系統的這個特性和上面說起來的只讀記憶體十分相似,只不過是從軟體層面上保持自身的不可改寫罷了,一旦獲取了 root 許可權,也就是獲得了 ROM 的改寫許可權。

  那為什麼安卓手機系統叫 ROM,而蘋果塞班卻沒有這個習慣呢?

  有一點是可以確定的,就是 ROM 這個名詞不為安卓所獨斷。可參考各種遊戲模擬器。

  其實安卓系統的系統包和一般手機的系統包性質差異不大,都符合 ROM 這一個名詞特性。叫法只是個歷史遺留和習慣問題。

  個人推測是由於安卓系統的開源使得各式各樣修改後的第三方系統百花齊放,大大增加了手工 recovery 刷入系統 zip 的機會,所以我們常常需要下載字尾為 zip 的刷機包,以實現嚐鮮和個性化定製。

  而蘋果 iphone 的刷機有個特點就是大多數為官方原生系統,線上更新,也無所謂 ROM 了。即使是手動刷機,一般也被稱作為韌體——其實韌體(Firmware)一詞和 ROM 也是有著莫大的關聯,因為韌體本身就是寫進 ROM 的程式。

  安卓上的 ROM 分為哪幾種呢?

  在安卓上,刷機包被分為兩種,一種是原生官方的系統韌體,也被稱為底包、原生 ROM,不包含個性化定製。一般是從官網下載或者從官方更新程式下載提取。

  而通過各種大神在底包上進行各式各樣的二次定製,則產生了各種第三方的系統韌體,俗稱 ROM,包含各種個性化定製後的差異性功能。例子就多啦:國際著名安卓 ROM 團隊 CM,小米引以為豪的 MIUI,極簡設計的魅族 Flyme,錘子手機的錘子 ROM 和國內外各種大神半神定製的系統…就不列舉太多了。這些 ROM 都可以在 ROM 基地中下載到。

相關文章