在650論壇里經常會看到有爭論程序到底應該裝ram里還是裝卡里.支持裝卡里的一派總是說650的ram太小了.只有24M.裝一些程序就只剩10來M 了.太多的程序會影響系統運行速度.所以能裝卡里就裝卡里.因此還引出了眾多的工具如powerrun,zlink,TealAlias等等專門用來把 ram里的軟件弄到卡上去以騰出ram空間.
事實真的如此嗎?
其實這是一種根深蒂固的誤解!誤解的來源就是ppc和smartphone.也就是微軟的windowsmobile的概念.在早期的ppc里面.運行內存和存儲內存是共用一個存儲器的.所以在系統里都有一個設置.可以自己選擇把空間主要用來進行存儲還是運行.所以裝多了軟件以后就會帶來運行空間的下降導致系統效率降低.這個觀點在沒玩過palm機的玩家心里造成了根深蒂固的觀點.那就是程序裝多了影響速度!但是這個理論到了650上就完全不成立了.
650第一次采用了所謂的NVFS.也就是掉電后不損失數據的文件系統.因此而引出了一個新的概念dbcache.這樣就使palm的文件解構跟pc上的結構很相似.存儲空間和運行空間完全分開了.這和palm以前的文件結構是完全不同的.下圖是來自freetong的一張650的文件系統結構說明圖.
左側NANDFlash為掉電不掉數據的部分.右側DRAM為掉電即丟失的部分.comPRessed rom就是系統rom的存放位置.user data就是我們所安裝在ram里的程序存放位置.650的啟動過程是這樣的.系統重起后從rom里解壓出系統文件到uncompressed rom里作為系統基本文件啟動.然后從user data里把要常駐系統的程序復制到dbcache里運行.這樣系統就完成了初始化.如果再運行其他程序的話就繼續從userdata里調入dbcache里來運行.至于dynamicheap則是運算寄存器.和文件無關.
由此可以看到.在ram里裝程序的多少完全不會影響到系統的運行效率.只有常駐內存的程序多少才會影響系統效率.無論你是把程序裝在ram里還是卡上.它都要通過dbcache來運行.因此盡量增大dbcache的空間才是正確的做法.
那如何來增大dbcache的空間呢?事實上.dbcache的空間一般很容易被rom所占用.主要原因就是因為650的官方rom做的不太合理.有些無用的東西都塞在里面.所以系統啟動時解壓到uncompressed rom里后還放不下.于是就塞進了dbcache里.導致dbcache空間急劇減少.也導致了系統運行速度降低和不穩定的發生.所以要加快系統速度和提高穩定性.最可行的辦法就是自己刷入一個新的精簡rom.讓系統rom文件解壓后不占用dbcache空間,這樣才能真正讓系統運作如飛.
另:其實系統不穩定的一個原因也是來自這個dbcache.因為它是一種全新的結構.很多plam上的程序對它的支持不是太好.導致系統在自動對dbcache進行清理的時候發生錯誤而重新啟動.這個問題就不是我等所能解決的了.唯一的辦法就是盡可能的使用650專用版的程序.或者使用rlock把程序徹底鎖定在dbcache里以策安全.
新聞熱點
疑難解答
圖片精選