4. 核心的重大改變 Windows Server 2008 同時有 32 位元與 64 位元版本 64 位元版本包含了 : x64 (AMD64, Intel 64) i64 (Itanium) 這也是最後一版的 32 位元 Windows Server 作業系統 Windows Server 2008 R2 只會有 64 位元版 ! 在 Windows Server 2008 中,單處理器核心與多處理器核心已經沒有差異 多處理器伺服器已經成為主流
26. 非統一記憶體存取 (NUMA ) Windows Server 2008 每一個節點在 nonpaged pool 中使用互相不重覆的位址 每一個節點都可以引用所有的分頁 系統 PTE (Page Table Entry) ,系快取的分頁表配置會平均分散到各個節點 硬體與軟體 NUMA 支援新的 NUMA APIs ,允許應用程式指定節點數量 ( 記憶體配置、檔案對應 ) I/O 系統直接將中斷繫結到指定的節點 http://technet.microsoft.com/zh-tw/library/ms178144.aspx http://technet.microsoft.com/zh-tw/library/ms345345.aspx
27. NUMA 記憶體配置 執行緒 T 被安排到另一個節點,但是記憶體卻是指到指定的節點,這會產生軟分頁錯誤 (soft page fault) T 節點 #1 節點 #2 CPU 0 CPU 3 CPU 1 CPU 2 CPU 4 CPU 7 CPU 5 CPU 6 理想的 CPU 記憶體 理想的節點 記憶體
36. Kernel Transaction Manager (KTM) 在過去,應用程式很難修復因為修改檔案或系統機碼所造成的錯誤 Windows Server 2008 實作了核心交易管理員 (KTM) 所有的變更都可以透過交易來控制 其它廠商可以進一步延伸這個功能到其它資源管理員上 核心交易管理員會負責協調應用程式與資源管理員的交易 系統機碼與 NTFS 都支援這項功能 Windows Update 和 System Protection 都使用這項功能 透過 DTC 與其它資料來源進行交易處理 Windows Server 2003 R2 開始就支援 Common Log File System (Clfs.sys) 提供有效率的交易記錄
37. Windows 錯誤報告 在過去,例外處理是在產生例外的行程中執行 如果行程的堆疊嚴重損毀,就會死的不明不白 Windows Server 2008 會將例外訊息交由 Windows Error Reporting (WER) 服務來處理 WER 啟動 Werfault.exe ( 取代之前的 Dwwin.exe) 所有行程 crash 都能夠完整記錄並回報
39. 磁碟陰影複製 在過去 無法還原檔案修改或意外刪除 系統還原只能保護已知的系統檔案或機碼 Windows Server 2008 使用磁碟陰影複製來做系統還原與以前的版本 過去只能使用在共用資料夾上 統一資料檔案與系統檔案的保護機制 使用 KTM 來維護跨磁碟快照的一致性 快照每天產生一份,或者在建立系統還原點時也會產生一份快照
40. 硬體診斷 避免因為記憶體的不穩定所造成的當機 尋找並標示出有問題的記憶體分頁 Windows Memory Diagnostics Microsoft Online Crash Analysis 減少因磁碟損毀所造成的資料遺失 把原本不可預期的磁碟錯誤變成可預先規劃的 Windows Disk Diagnostics 記憶體診斷 磁碟錯誤診斷
43. Address Space Load Randomization (ASLR) 在過去 核心、 HAL 、執行檔和 DLLs 檔會被載入固定的記憶體位置 緩衝區溢位的攻擊就是因為系統功能的位址是固定的,所以能夠成功 Windows Server 2008 核心的功能模組會載入到隨機的記憶體位址 (1/256) 作業系統檔案現在包含了重新定位的資訊 每次載入時的記憶體位址都不一樣 使用者堆疊的位址一樣是隨機的 驅動程式、核心、 HAL 的位址也是隨機的 Kernel32 NTDLL User32 Exe Win2003 #1 Kernel32 NTDLL User32 Exe Win2003 #2 Kernel32 NTDLL User32 Exe Win2008 #1 Kernel32 NTDLL User32 Exe Win2008 #2
44. Windows Server 2008 服務安全強化 減少高風險層的大小 將服務分區段 層加安全防護層次 核心 D D D S S D D S S 核心驅動程式 系統服務 低權限服務 使用者模式驅動程式 服務安全強化 使用者 帳戶控制 使用者權限 使用者帳戶控制 低權限服務 管理權限 系統服務 D D S S
46. Mandatory Integrity Control (MIC) Token 中有 Mandatory Integrity Level ( IL ) SIDs Low (100): 保護模式下的 IE Medium (200): LUA 行程 High (300): 提升權限後的行程 System (400): 系統行程 物件的 ILs 儲存在 SACL 中的 IL ACE 行程、執行序、 Access Token 中一定有 IL ACE 檔案或機碼如果沒有 IL ACE , IL = Medium 由 IL=Medium ( 含 ) 以上的行程所建立的物件, IL = Medium 由 IL=Low 的行程 ( 例如保護模式 IE) 所建立的物件, IL = Low
47. IL 存取檢查 IL 會在 DACL 之前檢查 執行序的 IL 一定要大於等於物件的 IL ,才可以修改該物件 執行序可以開啟任何物件進行讀取 : 如果該物件不是行程 或者是 IL 等於或小於自已的 IL Windows 子系統也遵守 IL 規則 只有查詢的訊息才可以從 LUA 行程送到提升權限的行程
#2: <SLIDETITLE INCLUDE=7>Windows Server 2008 應用程式相容性 </SLIDETITLE> <KEYWORDS></KEYWORDS> <KEYMESSAGE></KEYMESSAGE> <SLIDEBUILDS>0</SLIDEBUILDS> <SLIDESCRIPT> Hello and Welcome to this Microsoft TechNet session on {insert session title}. My name is {insert name} </SLIDESCRIPT> <SLIDETRANSITION> <TRANSITION LENGTH=7>Let us start this session by going into more detail on exactly what we will be covering.</TRANSITION> </SLIDETRANSITION> <COMMENT></COMMENT> <ADDITIONALINFORMATION> <ITEM></ITEM> </ADDITIONALINFORMATION>