顯示具有 S3C2442 標籤的文章。 顯示所有文章
顯示具有 S3C2442 標籤的文章。 顯示所有文章

星期二, 3月 31, 2009

Prex + GTA02 (Cont.)

有兩個 Device Driver 對移植 Prex 是很重要的,分別是 Clock(Timer) 及 Serial(Uart)。

Kernel 負責的工作項目之一就是排程,而 Timer 對於排程則是一個很重要的依據,提到了 Timer 就不得不去面對中斷 (Interrupt) 的處理,Prex 用了一個很簡單的機制及資料結構使其支援 Nested Interrupt 同時利用軟體實作 Interrupt Priority.

而沒有 Serial Driver 就無法和 Prex 有最基本的互動,在 Booting 後,透過 Serial 我們可以在Prompt 下執行命令,這樣才好玩不是嗎。下載完整的 Booting logImage,所有的 Patch 檔和文件會在隨後附上。




另外,對於較 Low Level 的程式的 Trace + Debug,我向來只有使用 JTAG 搭配 Objdump,利用這個方法,我們可以把 Bootloader 及 Kernel 之類的程式很輕鬆也很完整的 Trace (可設中斷點),從 Device Power On 之後系統的每個動作到進入 Kernel 後的一些行為,都會清清楚楚的呈現在面前 ;)

星期三, 3月 18, 2009

Prex + GTA02

Prex - An Open Source, Royalty-free, Real-time Operating System.

關於 Prex 的介紹,網頁已經有詳細的說明,最吸引我的地方是 - "Written in ANSI C based" "microkernel architecture" "POSIX emulation layer"

週末利用一些時間嘗試將它移植到 GTA02(S3C2442) 上,Prex 自附的 bootldr 已經可以將 kernel 載入並執行,雖說如此,現在的進度仍是落後,還有許多的 device driver 尚待完成,可以在 Download 裡找到相關的資料檔案,包含 kernel image 及 patch,剩下的會再放上,希望能有越來越多的人一起學習,彼此分享 ;)