從上面分析可以看到,主要呼叫函式
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...