問題
最近發現經常使用的一台安裝有server2008r2的虛擬機內存占用很高,且確認系統幾乎沒運行什么服務。(虛擬機是安裝在基於hyper-v的宿主機上。)
分析
一直以為是server2008r2的系統問題,或者是安裝程序造成的內存泄露。
1.嘗試停掉所有非微軟服務的自啟動,重啟虛擬機發現剛開始占用800M,不到一分鍾后,又被占用到快8個G。
2.也曾試過DynCache,修改注冊表,但是還是未解決問題。
3.后來用RAMMap查看具體哪里占用的大量內存,發現大部分內存被Driver Locked。
解決方案
google搜索下Driver Locked關鍵詞,摘錄出幾篇文章。
http://blog.luxem.org/2013/05/driver-locked-memory-on-hyper-v-guests.html
大體總結:是由於hyper-v啟用了“動態虛擬內存"造成的。內存被hyper-v動態調整,閑置了會被抽走,不夠了又會被還回來,屬於正常現象。
如果感覺不爽,可以自行關閉。(打開關閉hyper-v動態虛擬內存參考https://blog.51cto.com/wuyvzhang/1722264)。