2016-06-11 27 views
-4

1)我學會了編寫引導程序並使用bochs對其進行測試。現在,我想通過引導加載程序添加GUI。我已經搜索了一下,但沒有找到相關的消息來源。我甚至嘗試在現有項目中搜索github。我檢查了this的問題。但是有什麼辦法可以在我的代碼中安裝一些圖形庫或包含x-window-system API來在GUI env(例如:Chameleon,GAG)中提供,而不是隻包含一個閃屏圖像?爲引導程序開發GUI和加載庫

2)有沒有可能在bootloader階段添加python執行環境,以便當我進入保護模式時,我可以添加一些python腳本?

3)如何添加標準的C/C++庫支持?

在此先感謝。

回答

-1

如果你告訴你正在談論的是什麼樣的bootloader,它可能會有所幫助。我每天都在處理這些事情,你所說的大部分內容似乎都是瘋狂的談話。大聲笑。

通常,引導加載程序是非常小的啓動程序,它會決定下一次加載的內容。一些引導程序包含用於「閃爍」主應用程序的功能。 (主應用程序通常無法自行閃爍。)引導加載程序是處理器遇到的第一部分代碼,因此非常關鍵。你不希望它失敗也不能升級它。因此bootloaders傾向於爭取更小更好。

至於你的問題。

3)我從來沒有見過沒有寫在c中的bootloader。所以它覆蓋了一個。 (它們雖然存在)C++,你將不得不用C++編譯整個項目。 (沒問題。)

1)和2)我不確定什麼是「保護模式」,但要包括例如python或x-windows,您必須將源代碼包含到項目中。這是事情。通常bootloader是baremetal代碼,像X這樣的代碼不是。你還必須包含很多其他代碼。而且你最終會得到一個500MB的bootloader。通常你會爭取像5 kb的東西。 飛濺圖像通常通過與圖形卡的低級交互完成。

如果其他人對bootloader開發感興趣,我可以推薦看看uboot。這是一個linux(大部分)加載器,並且很容易找到你的方式。它已經支持了很多。

+0

感謝您的時間和迴應。我讀了關於與Grub2集成的python。這就是爲什麼我問。而且,我看到了Chameleon和GAG GUI(如上所述),這非常好。所以想知道它是如何完成的。 –