ARM的嵌入式Linux移植體驗之基本概念
ARM是Advanced RISC Machines(高級精簡指令系統處理器)的縮寫,是ARM公司提供的一種微處理器知識產權(IP)核。
ARM的應用已遍及工業控制、消費類電子產品、通信系統、網絡系統、無線系統等各類產品市場?;贏RM 技術的微處理器應用約占據了32位RISC 微處理器75%以上的市場份額。揭開你的手機、MP3、 PDA,嘿嘿,里面多半藏著一個基于ARM的微處理器!
ARM內核的數個系列(ARM7、ARM9、ARM9E、ARM10E、SecurCore、Xscale、StrongARM),各自滿足不同應用領域的需求,無孔不入的滲入嵌入式系統各個角落的應用。這是一個ARM的時代!
有人的地方就有江湖(《武林外傳》),有嵌入式系統的地方就有ARM。
構建一個復雜的嵌入式系統,僅有硬件是不夠的,我們還需要進行操作系統的移植。我們通常在ARM平臺上構建Windows CE、Linux、Palm OS等操作系統,其中Linux具有開放源代碼的優點。
日前,筆者作為某嵌入式ARM(硬件)/Linux(軟件)系統的項目負責人,帶領項目組成員進行了下述工作:
(1)基于ARM920T內核S3C2410A CPU的電路板設計;
(2)ARM處理下底層軟件平臺搭建:
a.Bootloader的移植;
b.嵌入式Linux操作系統內核的移植;
c.嵌入式Linux操作系統根文件系統的創建;
d.電路板上外設Linux驅動程序的編寫。
本文將真實地再現本項目開發過程中作者的心得,以便與廣大讀者共勉。第一章將簡單地介紹本ARM開發板的硬件設計,第二章分析Bootloader的移植方法,第三章敘述嵌入式mizi Linux的移植及文件系統的構建方法,第四章講解外設的驅動程序設計,第五章給出一個已構建好的軟硬件平臺上應用開發的實例。
如果您有嵌入式系統的開發基礎,您將非常容易領會本文講解地內容。即便是您從來沒有嵌入式系統的開發經歷,本文讀起來也不會生澀。
2.ARM體系結構
作為一種RISC體系結構的微處理器,ARM微處理器具有RISC體系結構的典型特征。還具有如下增強特點:
(l)在每條數據處理指令當中,都控制算術邏輯單元(ALU)和移位器,以使ALU和移位器獲得最大的利用率;
(2)自動遞增和自動遞減的尋址模式,以優化程序中的循環;
(3)同時Load和Store多條指令,以增加數據吞吐量;
(4)所有指令都條件執行,以增大執行吞吐量。
ARM體系結構的字長為32位,它們都支持Byte(8位)、Halfword(16位)和Word(32位)3種數據類型。
大部分應用程序都在User模式下運行。當處理器處于User模式下時,執行的程序無法訪問一些被保護的系統資源,也不能改變模式,否則就會導致一次異常。對系統資源的使用由操作系統來控制。
User模式之外的其它幾種模式也稱為特權模式,它們可以完全訪問系統資源,可以自由地改變模式。其中的FIQ、IRQ、supervisor、Abort和undefined 5種模式也被稱為異常模式。在處理特定的異常時,系統進入這幾種模式。這5種異常模式都有各自的額外的寄存器,用于避免在發生異常的時候與用戶模式下的程序發生沖突。
還有一種模式是system模式,任何異常都不會導致進入這一模式,而且它使用的寄存器和User模式下基本相同。它是一種特權模式,用于有訪問系統資源請求而又需要避免使用額外的寄存器的操作系統任務。
linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
評論