Sql-Server
DBMS(例如 SQL SERVER 2008)是否使用虛擬記憶體?
或者換句話說…… DBMS 是否以某種方式繞過作業系統記憶體管理器並直接訪問記憶體,或者它讓作業系統完成其工作,作為正常程序執行並使用虛擬記憶體的概念?
虛擬記憶體是一種將虛擬地址映射到物理地址的間接機制,並通過PTE在硬體層進行轉換。一個程序只能引用和定址虛擬記憶體。只有特權執行(核心)才能定址物理記憶體。我推薦你讀一本關於這個主題的書,經典的是 Russinovich/Solomon 的Windows Internals。
您的解釋是在問一個完全不同的問題,即作業系統“記憶體管理器”是否被規避。虛擬記憶體不是記憶體,在記憶體管理器架構(在任何作業系統上)的任何討論中都沒有任何類型的“記憶體”。目前尚不清楚您指的是什麼“記憶體管理器”。SQL Server 是否執行緩衝 IO(即使用 OS 文件記憶體)?一般不會,請參閱工作原理:Bob Dorr 的 SQL Server I/O 展示。