當前位置:
首頁 > 科技 > 以Rust開發的Redox OS將達自我託管里程碑

以Rust開發的Redox OS將達自我託管里程碑

由Rust所開發的操作系統Redox OS,即將進入可自我託管(Self-hosting)的重要里程碑,其創建者Jeremy Soller提到,在幾個月之後,Rust編譯器Rustc就能在Redox OS上運行了。

而自我託管之所以對於新操作系統開發很重要的原因,是因為當新系統要執行的軟體,無法在新系統上編寫,就需要在其他可自我託管的系統上,以交叉編譯的方式構建,再將軟體放在新系統可讀取的存儲設備進行交換,而當新操作系統可自我託管,則軟體開發速度便能大幅提升。

Redox OS是一個類Unix的微核心(Microkernel)操作系統,主要的特色是使用內存安全的程序語言Rust所開發,講求安全、穩定和高性能。Redox OS是開源軟體,以MIT授權對外發布。在今年3月發布Redox OS 0.50版本,支持Cairo和Pixman等多種函數庫和組件。

Redox OS開發者,同時也是Linux硬體廠商System76首席工程師的Jeremy Soller,在Redox OS的官方博客提到,Redox OS已經可以在System76的筆記本電腦Galago Pro上,持續地運行,完全支持鍵盤、觸摸板、存儲和乙太網絡等設備。由於可讓程序快速在Redox中執行的Redoxer工具,現在可以進行構建、執行和測試,因此Redox變得易於交叉編譯。Redoxer可以自動管理Redox工具鏈,並根據需要在容器中執行Redox可執行文件。

不過,Jeremy Soller提到,Redox OS一直存在的問題,是還無法在Redox OS上編譯Rust二進位文件。在2017年的時候,Redox OS項目通過參加Google Summer of Code,推進了這個目標的完成進展,接著,他們又以Rust重新撰寫了C函數庫libc發布relibc,並獲得大量貢獻者的幫助,提升POSIX C函數庫的兼容性,而大幅增加了Redox OS可用組件的數量。

雖然Redox OS已經大量地支持Rust Crates,使得自我託管的目標越來越接近,但是在發現relibc中一些錯誤後,Jeremy Soller表示,Rustc不再能夠只執行靜態鏈結,因此他們又將工作重點轉移到relibc的ld_so上,要進一步提供動態連接。不過,這使得Rustc移植到Redox OS的工作需要先暫停。

Jeremy Soller強調,用戶在幾個月內,就能在Redox OS執行Rust編譯器Rustc,畢竟可以在Redox OS上構建Redox OS,是目前Redox OS項目第一優先的工作。他補充說明,由於Redox OS微核心的設計,驅動程序在用戶空間中執行,因此即便重新編譯和重新生成驅動程序,Redox OS都不需要停機,而這將讓操作系統的開發速度變得更快。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!


請您繼續閱讀更多來自 十輪網 的精彩文章:

對數學感到焦慮嗎?研究:會做不出理性決策
英超市環保購物袋暢銷,塑膠垃圾卻不減反增