SmartQ V7 flash 映射

最近按照SmartQ 官方網站的方法升級V7的固件,順便研究一下這個支持3操作系統的設備的分區方式。

(這裏有個系列折騰貼,挺好的:http://www.felix021.com/blog/read.php?1813 不過它的內存分佈是老版本了)

 

SmartQ V7採用Telechips公司的TCC8900 ARM11處理器。FWDN爲其固件燒寫工具。

上圖可以看到Target Base 0x40000000  (有個300M的MTD是什麼?)

這裏有個隱藏區,大小20M

其中用來存放一個kernel (5M) 

是ubuntu的kernel,還是Android的kernel不清楚,官方提供了rom

RamDisk (12M)

沒用上,官方的FWDN升級過程沒有指定ramdisk文件,不知道是不是空着

空餘3M左右,沒用上的

 

其餘的flash被劃分爲三個分區(SmartQ V7支持WinCE, linux, Android三個操作系統),三個分區的大小如圖所示,分別爲950M,128M,944M

950+128+944+20 = 2042 (也就是物理Flash一共爲2G)

這裏,128M爲手冊上宣傳的所謂的“用戶可用部分”

944M爲軟件自己計算出來的剩餘空間,沒有實際意義。 

 那個300M是不存在的,不要理他。 

 這個軟件只負責燒linuxl的boot loader和kernel,其它部分的升級,通過將image拷貝到sd卡,在機器上升級。

linux firmware update

燒寫完boot loader和kernel就擁有了固件升級firmware update功能,但是開機選擇三個操作系統設定高清標清那個畫面還沒有。不知道那個OS選擇畫面用的什麼技術,類似GRUB?需要升級ubuntu linux固件後纔有那個畫面。 升級完linux,我又通過FWDN的重新format了分區,發現OS選擇程序還在,所以這個OS選擇程序應該是存放在前20M的空間裏,我想。

升級linux固件過程中顯示會格式化根分區和home分區。

 

以上是在燒寫程序中看到的情況,進入系統linux系統,再看看。

進入linux,fdisk -l的結果比較怪異,出現一個1358M的設備,在/dev/ndda下面。這個設備分成三個區,ndda1, ndda2, ndda3,大小分別是950M,128M,216M。其中950M的掛載點是/,128M的掛載點是/home,看來這兩個分區跟FWDN中格式化的情況一致。

第三個分區就有問題了,216M,大小對不上。用mount /dev/ndda3 /media/tmp命令掛載之,發現其內容是WinCE的系統盤。

進入wince再驗證一下

通過一個叫存儲管理器的程序,看到了與linux fdisk一致的結果,即看到了950M/128M/216M三個分區,其中216M的分區是wince本身。

 

那麼除了13xxM左右的部分,剩下的6xxM應該是android的分區了,這個分區現在是隱藏的。進android看看!

android內部也分幾個區,例如/ 和/data 等等,cmd line上支持df, mount命令,fdisk好像不支持。

設置-->SD卡選項-->選則使用ubuntu系統內存,這樣可以將ubuntu幹掉

df的結果:/分區108M, /data分區108M,/cache分區32M

/ndda分區950M,這樣就把linux分區給用上了,不過128M的/home被浪費了,不想浪費看這裏:http://bbs.zhiqifans.com/viewthread.php?tid=34746&extra=&page=1

另外不知道android的kernel放在哪裏,我肯定不是與linux共享一個kernel,uname看版本不一樣

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章