DBMS(例如 SQL SERVER 2008)是否使用虚拟内存?

Ond*_*rka 2 sql-server-2008 sql-server memory

或者换句话说…… DBMS 是否以某种方式绕过操作系统缓存管理器并直接访问内存,或者它让操作系统完成其工作,作为正常进程运行并使用虚拟内存的概念?

Rem*_*anu 5

虚拟内存是一种将虚拟地址映射到物理地址的间接机制,并且通过PTE在硬件层进行转换。的方法,可以参考和地址唯一虚拟内存。只有特权执行(内核)才能寻址物理内存。我建议你阅读一本关于这个主题的书,经典的是Russinovich/Solomon 的Windows Internals

您的解释是问一个完全不同的问题,是否绕过了操作系统“缓存管理器”。虚拟内存不是缓存,在任何关于内存管理器架构的讨论中(在任何操作系统上)都没有任何类型的“缓存” 。目前尚不清楚您指的是什么“缓存管理器”。SQL Server 是否执行缓冲 IO(即使用操作系统文件缓存)?通常不会,请参阅工作原理:Bob Dorr 的 SQL Server I/O 演示