我正在 Ubuntu 上制作作業系統,但設定交叉編譯器很困難(其他執行緒沒有幫助)。我想知道是否可以只在匯編中制作作業系統以避免 C 或 C 交叉編譯器。最好的問候,馬克安。
PS,如果有人知道 Ubuntu 64 位到 i836:x86_64 的任何好的交叉編譯資源,請告訴我。
uj5u.com熱心網友回復:
正確但無用的答案是——是的,有可能。C/C 能做的任何事情,匯編也能做。如果您的下一個問題是 - 如何,唯一可能的答案是“讀一本書”。這是一個小問題,答案是一本書。是的,任何你可以用 C/C 編碼的東西,你也可以用匯編編碼......但這需要你 10 倍的時間,尤其是在除錯時。
除此之外,在匯編中組裝一個作業作業系統將比設定交叉編譯復雜和耗時一個數量級。如果這對您來說是一個挑戰,也許您現在不應該處理整個作業系統。
uj5u.com熱心網友回復:
是的。事實上,這在 Unix 之前很常見,因為 Unix 引入了跨架構作業系統的可移植性。像 Digital Equipment 的RSX-11這樣的作業系統是用匯編程式撰寫的。一個有點著名的學術例子是 Alexia Massalin 的 1992 Synthesis kernel,一個帶有 Unix 兼容層的小內核。它是用摩托羅拉 68020 匯編撰寫的,代表了對高級語言作業系統的輕微反叛。它在當時非常快。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/494058.html
