環境變量 環境變量相當于給系統或用戶應用程序設置的一些參數, 具體起什么作用這當然和具體的環境變量相關
一個嵌入式Linux系統從軟件的角度看通常可以分為四個層次:
1、 引導加載程序。包括固化在固件(firmware)中的boot代碼(可選),和BootLoader兩大部分。
2、 Linux內核。特定于嵌入式板子的定制內核以及內核的啟動參數。
3、 文件系統。包括根文件系統和建立于Flash內存設備之上文件系統。通常用ramdisk來作為rootfs。
4、 用戶應用程序。特定于用戶的應用程序。有時在用戶應用程序和內核層之間可能還會包括一個嵌入式圖形用戶界面。常用的嵌入式GUI有:MicroWindows和MiniGUI
BootLoader的主要運行任務就是將內核映象從硬盤上讀到 RAM 中,然后跳轉到內核的入口點去運行,也即開始啟動操作系統。
二、常見bootloader介紹
1.U-BOOT介紹
uboot是一個龐大的公開源碼的軟件。他支持一些系列的arm體系,包含常見的外設的驅動,是一個功能強大的板極支持包。其代碼可以從
http://sourceforge.net/projects/u-boot下載
2。vivi介紹(下載地址
http://www.mizi.com/developer)
vivi是韓國mizi 公司開發的bootloader, 適用于ARM9處理器。 Vivi有兩種工作模式:啟動加載模式和下載模式。啟動加載模式可以在一段時間后(這個時間可更改)自行啟動linux內核,這時vivi的默認模式。在下載模式下,vivi為用戶提供一個命令行接口,通過接口可以使用vivi提供的一些命令,如下:
一、什么是交叉編譯
什么是交叉編譯呢,簡單地說,就是在一個平臺上生成另一個平臺上的可執行代碼。
常見的交叉編譯例子如下:
1、在Windows PC上,利用ADS(ARM 開發環境),使用armcc編譯器,則可編譯出針對ARM CPU的可執行代碼。
2、在Linux PC上,利用arm-linux-gcc編譯器,可編譯出針對Linux ARM平臺的可執行代碼。
3、在Windows PC上,利用cygwin環境,運行arm-elf-gcc編譯器,可編譯出針對ARM CPU的可執行代碼