2013-07-02 38 views
0

我想要構建一個類似於Kernel的軟件,需要多長時間,我應該學習哪種語言。 在本質上,我想知道哪些是需要編程某些事物的先驗知識。需要多長時間從頭開發類似於內核的東西?

+0

你應該至少指定你指的是哪個操作系統。 –

+1

在我上學的時候,一個「內核」正在實現在硬件設備上運行的操作系統。 C是確定的選擇。 –

+0

,如果沒有彙編程序,你不會變得太遠。祝你好運。 –

回答

0

最終你想管理「用戶進程」。

在進程之間切換需要關閉處理器,並使用處理器進行修改 - 使用來自時鐘的中斷或由另一個用戶進程阻止系統調用觸發。

當您切換進程時,您必須將處理器狀態保存爲處於用戶進程中間時的狀態。這涉及到程序集。關於它沒有兩種方法。

一旦你處理交換,那麼你可以有樂趣管理系統API,優先級隊列,內存管理,等等,等等

由於彙編參與,你會想利用最有效的結構你可能會想用C語言編寫代碼(這只是一個宏彙編程序,事實會被告知)。

相關問題