日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

詳細了解Windows Vista內(nèi)核的安全性

Windows Vista通過許多新功能和改進提高了系統(tǒng)的可靠性和您對系統(tǒng)與應用程序問題的診斷能力 。例如 , 內(nèi)核Windows事件跟蹤 (ETW) 記錄程序總是處于運行狀態(tài) , 能夠生成有關文件、注冊表、中斷以及其他活動類型的跟蹤事件 , 并保存在循環(huán)緩沖區(qū)中 。當出現(xiàn)問題時 , 新的 Windows 診斷基礎結構 (WDI) 會捕獲緩沖區(qū)快照 , 并進行本地分析或上載到 Microsoft 支持進行故障排除 。新的 Windows 性能和穩(wěn)定性監(jiān)視器可以幫助用戶通過更改系統(tǒng)配置將錯誤(如崩潰和掛起)相互關聯(lián) 。強大的系統(tǒng)修復工具 (SRT) 取代了故障恢復控制臺 , 用于不可啟動系統(tǒng)的離線恢復 。有三個方面依靠對系統(tǒng)進行的內(nèi)核級更改 , 即需要您認真閱讀的本文中的以下方面:內(nèi)核事務管理器 (KTM)、改進的崩潰處理和以前的版本 。1.內(nèi)核事務管理器 軟件開發(fā)中最繁瑣的一個方面就是處理錯誤條件 。特別是在進行高級操作的過程中 , 應用程序完成了一個或多個導致文件系統(tǒng)或注冊表更改的子任務 。例如 , 應用程序的軟件更新服務可能要進行幾次注冊表更新 , 替換應用程序的可執(zhí)行文件之一 , 而在它嘗試更新第二個可執(zhí)行文件時被拒絕訪問 。如果服務不想將應用程序留在因此導致的不一致狀態(tài) , 就必須跟蹤所有更改并為撤銷它們做好準備 。測試錯誤恢復代碼很困難 , 并經(jīng)常跳過 , 因此恢復代碼中的錯誤會讓努力徒勞無功 。為 Windows Vista 編寫的應用程序通過使用 NTFS 中新的事務支持和使用內(nèi)核事務管理器的注冊表 , 不費吹灰之力即可獲得自動錯誤恢復能力 。當應用程序想進行許多相關更改時 , 可以創(chuàng)建分布式事務處理協(xié)調(diào)器 (DTC) 事務和 KTM 事務處理 , 或直接創(chuàng)建 KTM 處理 , 并將對文件和注冊表項的修改與事務關聯(lián)起來 。如果所有的更改成功 , 應用程序會提交事務同時更改生效 , 但是在此之前任何時候 , 應用程序可以回滾事務 , 然后放棄更改 。其有利因素在于 , 其他應用程序在提交事務后才能看到事務中的更改 , 而在 Windows Vista 和即將問世的 Windows Server(代號名為“Longhorn”)中使用 DTC 的應用程序會通過 SQL Server、Microsoft Message Queue Server (MSMQ) 以及其他數(shù)據(jù)庫協(xié)調(diào)其事務 。因此 , 使用 KTM 事務的應用程序更新服務永遠不會將應用程序留在不一致的狀態(tài) 。這就是 Windows Update 和系統(tǒng)還原使用事務的原因 。作為事務支持的核心 , KTM 允許事務資源管理器(如 NTFS 和注冊表)對應用程序所做的特定更改協(xié)調(diào)其更新 。在 Windows Vista 中 , NTFS 使用稱為 TxF 的擴展來支持事務 。注冊表使用稱為 TxR 的類似擴展 。這些內(nèi)核模式資源管理器與 KTM 一起協(xié)調(diào)事務狀態(tài) , 正如用戶模式資源管理器使用 DTC 跨多用戶模式資源管理器協(xié)調(diào)事務狀態(tài)一樣 。第三方也可以使用 KTM 實施其自己的資源管理器 。TxF 和 TxR 都定義了一套新的文件系統(tǒng)和注冊表 API(與現(xiàn)有的類似 , 只不過它們包含事務參數(shù)) 。如果應用程序想在事務中創(chuàng)建文件 , 首先要使用 KTM 創(chuàng)建事務 , 然后將引起的事務處理傳遞給新文件創(chuàng)建 API 。TxF 和 TxR 都依賴在 Windows Server 2003 R2 中引入的公用日志文件系統(tǒng)或 CLFS (%SystemRoot%System32Clfs.sys) 的高速文件系統(tǒng)記錄功能 。TxR 和 TxF 使用 CLFS 永久性地存儲提交事務之前的事務狀態(tài)更改 。這樣可以讓它們提供事務恢復并確保即使在斷電時也可以恢復 。除了 CLFS 日志 , TxR 還創(chuàng)建了一組相關的日志文件 , 跟蹤 %Systemroot%System32ConfigTxr 中系統(tǒng)注冊表文件的事務更改(如圖 1 所示) , 同時還為每個用戶注冊表配置單元單獨創(chuàng)建幾組日志文件 。TxF 在名為 $Extend$RmMetadata 的卷的隱藏目錄中存儲每個卷的事務數(shù)據(jù) 。
2.增強的崩潰支持 當 Windows 遇到不可恢復的內(nèi)核模式錯誤時(無論是由于設備驅動程序錯誤、硬件故障還是操作系統(tǒng)問題) , 在出現(xiàn)“藍屏死機”現(xiàn)象和將物理內(nèi)存的部分或所有內(nèi)容寫入崩潰轉儲文件(如果配置為執(zhí)行此操作)后 , 它會嘗試終止系統(tǒng)來防止磁盤數(shù)據(jù)的損壞 。轉儲文件非常有用 , 因為當您在系統(tǒng)崩潰后重啟時 , Microsoft 在線崩潰分析 (OCA) 服務會分析這些文件找出根本原因 。如果愿意 , 您也可以使用面向 Windows 的 Microsoft 調(diào)試工具自已進行分析 。不過 , 在以前的 Windows 版本中 , 只有在會話管理器 (%Systemroot%System32Smss.exe) 進程初始化分頁文件后才會啟用對崩潰轉儲文件的支持 。這意味著在此之前任何嚴重錯誤會導致藍屏 , 但沒有轉儲文件 。由于在 Smss.exe 啟動之前 , 會出現(xiàn)大量的設備驅動程序初始化 , 所以早期的崩潰永遠不會引起崩潰轉儲 , 因此使原因診斷極為困難 。在所有引導啟動設備驅動程序初始化之后 , 但在系統(tǒng)啟動驅動程序加載之前 , Windows Vista 通過初始化轉儲文件支持 , 可減少無轉儲文件生成的時間窗口 。由于這一更改 , 如果在引導過程開始時出現(xiàn)崩潰 , 系統(tǒng)就可以捕捉崩潰轉儲 , 讓 OCA 幫助您解決問題 。此外 , Windows Vista 使用 64KB 塊將數(shù)據(jù)存儲到轉儲文件中 , 而以前的 Windows 版本使用 4KB 塊寫入文件 。這一更改使得大型轉儲文件的寫入速度最多可提高 10 倍 。應用程序崩潰處理功能在 Windows Vista 中也得以改進 。在以前的 Windows 版本中 , 當應用程序崩潰時 , 它會執(zhí)行未處理的異常處理程序 。處理程序啟動 Microsoft 應用程序錯誤報告 (AER) 進程 (%Systemroot%System32Dwwin.exe) , 顯示對話框 , 指明程序崩潰 , 并詢問您是否要向 Microsoft 發(fā)送錯誤報告 。不過 , 如果崩潰時進程主線程的堆棧損壞 , 未處理的異常處理程序執(zhí)行時會崩潰 , 導致內(nèi)核終止進程、程序窗口立即消失 , 并且沒有錯誤報告窗口 。Windows Vista 將錯誤處理從崩潰進程的上下文移至新服務 , 即 Windows 錯誤報告 (WER) 。此服務由服務托管進程中的 DLL (%Systemroot%System32Wersvc.dll) 實施 。在應用程序崩潰時 , 它仍然會執(zhí)行未處理的異常處理程序 , 但是該處理程序會向 WER 服務發(fā)送消息 , 并且服務會啟動 WER 錯誤報告進程 (%Systemroot%System32Werfault.exe) 以顯示錯誤報告對話框 。如果堆棧損壞并且未處理的異常處理程序崩潰 , 處理程序會再次執(zhí)行并且再次崩潰 , 最終消耗所有線程的堆棧(使用內(nèi)存區(qū)域) , 此時內(nèi)核會介入 , 并向服務發(fā)送崩潰通知消息 。

推薦閱讀