好文:Windows Kernel 的架構設計說明 - 2018

微軟 (Microsoft) 的 Windows 10 支援 x86、x64、ARM 和 ARM64 的架構,而且能在桌機、手機、Server 都可以執行,它的架構是如何設計,讓所有作業系統的模組能夠最大化的重複利用呢?

Windows Kernel 團隊在官方部落格有將作法公開,有興趣可以參考看看~

好文:Windows Kernel 的結構設計說明

微軟 Windows Kernel 的文章是原文版,在 Solidot 的此篇文章有簡單整理重點:

  • Windows Kernel 的結構,下述整理自此篇:
    • Windows 重構的 Kernel 是用 API sets 的機制,將 DLL 與實際的環境分隔開來
    • Windows NT 像是一個 MicroKernel(微內核),裡面的 Core Kenrel (KE) 幾乎什麼事情都不做,只有使用 Executive layer (Ex) 來執行管理所有高階的決策(Policy)
      • EX 仍然是 Kernel Mode,所以並不算是真正的 MicroKernel
    • Windows Kernel 負責系統的部份
      • thread dispatching
      • multiprocessor synchronization
      • hardware exception handling
      • the implementation of low-level machine dependent functions
    • EX 層控制各種不同的子系統 包含
      • Memory Manager (記憶體管理):此程式的程式碼最多,超過 50萬行
      • Registry (註冊表)
      • Power (電源)
      • Executive (執行 Ex)
      • Security (安全)
      • Kernel (內核)
      • Process Subsystem (程序的子系統)
      • IO
      • Object Manager
      • 建議可以讀此書:Windows Internals Book
    • Windows 的調度器主要是根據優先級別來決定執行哪些 Threading

作者: Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料