嵌入式的固件燒錄方式

1、固件
固件,firmware

所謂固件,就是文件,固化在存儲介質上的文件,而文件,其實就是數據。

嵌入式開發中,尤其是Linux開發,常見的方式是,從板子(個人用的是arm的板子)上啓動,會允許Uboot,然後Uboot去加載kernel內核,個人常用的kernel是uImage,然後Linux運行後,去加載根文件系統rootfs,個人常用到的yaffs2文件系統。

前後系統運行所需要的文件,總的來說,就是這三個:

Uboot,比如u-boot.bin
Kernel,比如uImage
Rootfs,比如yaffs2.rootfs.arm
而大家一直說的固件,在系統是Linux系統的情況下,常常就是指的是這些文件。

嵌入式開發,很多用的是Linux系統,也有用WinCE和其他系統,此文只介紹Linux系統下面的情況。

Linux系統中,多數爲 bootloader + kernel + rootfs 的模式。

其中,bootloader多爲uboot,負責初始化硬件和設置好軟件環境;然後加載kernel,運行kernel,kernel運行後;再去加載rootfs,之後就是你所看到的運行的Linux了。

其中,在開發過程中,常常會遇到,需要把某個文件,比如U-boot.bin,uImage,rootfs等文件從PC上,下載到Uboot的SDRAM,即內存中,然後再用對應命令或工具,將數據寫入到某存儲介質中。

2、燒寫
所謂燒寫,就是寫數據,把文件(固件/數據)寫到存儲介質(Nand Flash, Nor Flash等)上。而對於燒寫這個詞,說法很多,常見的有:

燒寫=燒錄=flash=編程=program=programming

更新固件,其實也指的是將新的固件燒寫進去,即所謂更新系統。

3、存儲介質
存儲介質,此處主要是指嵌入式中存放firmware的地方,多數是Nor Flash加上Nand Flash的組合。也有單獨是Nor Flash,單獨是Nand Flash,單獨是SD/MMC卡等方式。

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