iT邦幫忙

鐵人檔案

2021 iThome 鐵人賽
回列表
Software Development

予焦啦!Hoddarla 專案起步:使用 Golang 撰寫 RISC-V 作業系統的初步探索 系列

筆者以這次鐵人賽為契機,啟動一個作業系統計畫,它的名字叫做 Hoddarla。
儘管它本身還有很多模糊且未定義清楚的目標,但有兩點作為專案的基石,將會一直維持的:

* 只支援單一計算機架構:RISC-V。
* 只包含 Golang 程式碼,以及 Golang 工具鏈所能允許的組合語言。

在這次 30 天的篇幅內,將會涵蓋的是 Golang 如何支援 RISC-V 上的系統開發。雖然沒有實用性,但筆者會引用一些參考文獻,使得有心想要深入

* RISC-V S-mode 操作
* Golang 執行期

的讀者也能夠有個小型範本可以參考。

技術寫落去,予焦啦!

鐵人鍊成 | 共 33 篇文章 | 14 人訂閱 訂閱系列文 RSS系列文 團隊晶心壯士 II:SOLAR System
DAY 1

予焦啦!目錄、快速上手與前言

目錄 第零章:基本開發工具 0.0 目錄、快速上手與前言 0.1 準備工具鏈 0.2 產出可執行檔 0.3 檢驗核心映像檔:開機流程、OpenSBI...

2021-09-10 ‧ 由 高魁良 分享
DAY 2

予焦啦!準備工具鏈

本節是以 Golang 上游 1a708bcf1d17171056a42ec1597ca8848c854d2a 為基準做的實驗。 予焦啦!不管是什麼樣的系統...

2021-09-11 ‧ 由 高魁良 分享
DAY 3

予焦啦!產出可執行檔

本節是以 Golang 上游 1a708bcf1d17171056a42ec1597ca8848c854d2a 為基準做的實驗。 本日的內容資料很多,但或...

2021-09-12 ‧ 由 高魁良 分享
DAY 4

予焦啦!檢驗核心映像檔:開機流程、OpenSBI 慣例、ELF 淺談

本節是以 Golang 上游 1a708bcf1d17171056a42ec1597ca8848c854d2a 為基準做的實驗。 予焦啦!回顧昨日,最終我們...

2021-09-13 ‧ 由 高魁良 分享
DAY 5

予焦啦!支援 RISC-V 權限指令與暫存器

本節是以 Golang 上游 1a708bcf1d17171056a42ec1597ca8848c854d2a 為基準做的實驗。 予焦啦!回顧昨日,當我們期...

2021-09-14 ‧ 由 高魁良 分享
DAY 6

予焦啦!使用暫存器除錯

本節是以 Golang 上游 ee91bb83198f61aa8f26c3100ca7558d302c0a98 為基準做的實驗。 予焦啦!回顧第零章,我們有...

2021-09-15 ‧ 由 高魁良 分享
DAY 7

予焦啦!前期分析

本節是以 Golang 上游 ee91bb83198f61aa8f26c3100ca7558d302c0a98 為基準做的實驗。 回顧昨日,我們發現過去一直...

2021-09-16 ‧ 由 高魁良 分享
DAY 8

予焦啦!使用 GDB 推進

本節是以 Golang 上游 ee91bb83198f61aa8f26c3100ca7558d302c0a98 為基準做的實驗。 予焦啦!回顧昨日,我們從...

2021-09-17 ‧ 由 高魁良 分享
DAY 9

予焦啦!BSS 初始化

本節是以 Golang 上游 ee91bb83198f61aa8f26c3100ca7558d302c0a98 為基準做的實驗。 予焦啦!昨日不幸地卡在一個...

2021-09-18 ‧ 由 高魁良 分享
DAY 10

予焦啦!RISC-V 虛擬記憶體機制簡說

本節是以 Golang 上游 4b654c0eeca65ffc6588ffd9c99387a7e48002c1 為基準做的實驗 予焦啦!昨日最後觀察到的錯誤...

2021-09-19 ‧ 由 高魁良 分享