reactos作業系統實現 17

2021-04-23 22:30:08 字數 885 閱讀 2930

從上面分析可以看到,主要呼叫函式

kiinitializekernel

來初始化核心,這個函式傳送的引數與函式

kisetupstackandinitializekernel

的引數是一樣的,如下:

#001void

#002ntapi

#003kiinitializekernel(in pkprocess initprocess,

# 004

inpkthread initthread,

# 005

inpvoid idlestack,

# 006

inpkprcb prcb,

# 007

incchar number,

# 008

inploader_parameter_block loaderblock)

#009

#053else

#054

#057}

#058else

#059

#062

#063/* restore eflags */

#064ke386restoreflags(eflags);

恢復原來標誌暫存器值。

#065}

其實這段**是獲取

cpu型別和步進資訊,不同的

cpu獲取的資訊是不一樣,下面通過其它軟體獲取到我的

cpu資訊,如下圖:

在這個cpu

應就是獲取到

cpu型別為

6,而步進為

fb。至於其它

cpu資訊,還會在後面繼續探測和設定到核心資料結構裡。

reactos作業系統實現 178

sendmessagew函式主要用來向視窗傳送訊息。下面就是它的實現 001 lresult winapi 002 sendmessagew hwnd wnd,003 uint msg,004 wparam wparam,005 lparam lparam 006 028 029 填寫訊息結構。03...

reactos作業系統實現 187

隨著全球化的發展,開發軟體都是面向多語言的環境。目前大多數程式都是採用不同字型來顯示不同語言的辦法,那麼有沒有一種更好的辦法,一種字型就可以解決全球語言的顯示呢?答案肯定的,它就是採用邏輯字型ms shell dlg和ms shell dlg2。比如開發應用程式時,就看到在資源裡可以設定ms she...

reactos作業系統實現 193

selectobject函式是將物件選定到指定的裝置場境中。具體實現 如下 001 hgdiobj 002 winapi 003 selectobject hdc hdc,004 hgdiobj hgdiobj 005 016 獲取選擇dc的物件正確的控制代碼。017 hgdiobj gdifixu...