在ARMSYS上進行uClinux核心移植的總結(轉)

ba發表於2007-08-16
在ARMSYS上進行uClinux核心移植的總結(轉)[@more@]  1. 簡述

  針對“如何在以S3C44B0X為核心的ARMSYS開發板上建立uClinux核心移植”的一個總結,其內容包括對Bootloader的功能分析和uClinux2.4.24發行版核心基礎上針對S3C44B0X開發板進行修改的重點內容的逐一列舉。

  2. Bootloader

  2.1 Bootloader概述


  Boot Loader 就是在作業系統核心執行之前執行的一段程式。透過這段程式,我們可以初始化硬體裝置、建立記憶體空間的對映圖,從而將系統的軟硬體環境帶到一個合適的狀態,以便為最終呼叫作業系統核心準備好正確的環境。因此,正確建立uClinux的移植的前提條件是具備一個與uClinux配套、易於使用的 Bootloader。

  ARMSYS開發板提供了這樣一個uClinux專用的Bootloader,該Bootloader程式燒錄在系統的地址0x0處,每次上電即執行,能夠正確完成硬體系統的初始化和uClinux的引導。

  理論上,uClinux引導時並非一定需要一個獨立於核心的Bootloader。然而,將Bootloader與核心分開設計能夠使軟體架構更加清晰,也有助於靈活地支援多種引導方式,實現一些有用的輔助功能。

  ARMSYS提供的Bootloader的主要任務可以概括如下:

  1.硬體初始化;

  2.從主機下載新的核心映像和檔案系統映像;

  3.燒寫NorFlash和Nandflash;

  4.載入uClinux 核心映像並啟動執行;

  5.提供序列超級終端上的人機操作介面。

  2.2 儲存空間分佈

  Bootloader採用預設的儲存空間分佈地址來載入uClinux核心、檔案系統,並按照正確引導uClinux的執行。在ARMSYS的Bootloader中,預設的儲存空間分佈如下表:
CODE:
內容 起始地址 儲存介質
Bootloader程式空間 0x00000000 Flash
壓縮核心映像 0x00010000 Flash
ROM檔案系統映像 0x000e0000 Flash
核心執行地址 0x0c008000 SDRAM
壓縮核心解壓地址 0x0c100000 SDRAM
檔案系統載入 0x0c700000 SDRAM

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617731/viewspace-960587/,如需轉載,請註明出處,否則將追究法律責任。

在ARMSYS上進行uClinux核心移植的總結(轉)
請登入後發表評論 登入
全部評論

相關文章