Windows 10 加入了對內核分析工具DTrace 的支持
微軟宣布 Windows 10支持DTrace。DTrace是一個動態跟踪框架,於21世紀初誕生於Sun公司的Solaris操作系統,提供了性能分析和調試功能。開發人員可使用DTrace對內核或用戶應用程序進行動態跟踪,分析及診斷系統問題。
2016年開始,GitHub就有了個OpenDTrace開源項目,致力於針對不同操作系統的Dtrace移植實現。微軟人員在這個項目的基礎上創建了Windows分支,從而開展Windows對DTrace的支持工作。
美中不足的是,DTrace 目前需要連接內核調試器(Kennel debugger)來啟動Windows,這是因為DTrace 需要將一些代碼插入正在分析的系統函數中,修改到了內核內存。而Windows 在很久之前採用的內核補丁保護(KPP,又稱PatchGuard),如果檢測到任何內核內存的修改,就會將系統崩潰。DTrace 違反了PatchGuard 對系統的保護措施,禁用PatchGuard 才可以讓DTrace 進行需要的修改,正常完成工作。
微軟開發者表示,他們已經有了“將來怎麼用符合PatchGuard標準的方式啟用DTrace”的想法。不過現在來說,用戶只能在選擇其中一個。
目前在Windows 上安裝和運行DTrace,需要Windows 10 insider build 18342 或更高版本,且只支持64 位系統。