????SQL Server??????????????????????????????: buffer pool???????+??buffer pool??????????+multiPageAllocator??????buffer pool??棬???9?????

    ?9.????????????sql server????????

Memory Object

    menory object????????????????Page Allocator???з??????????sys.dm_os_memory_objects???DMV???в??????DMV????????????Page_Allocator_Address?У???????Memory Clerk?????????????Memory Object???????Memory Clerk???з?????

 32λSQL Server????????

    ????????????????Щ???????????????????32λ??SQL Server??????VAS???е????????????????????4GB????4GB??????????Windows?????Buffer Pool????????2G????棬?????32λSQL Server????ж??????????棬??????á?

    ????????????????Windows???????2G??1G?????SQL Server?????????????3G??????????????Windows Server 2008?е??????м??? BCDEdit /set????increaseuserva?????????3072MB??????Windows Server 2003??????????boot.ini?м???/3gb?????????

   ???????????AWE??Address Window Extension????????檔AWE?????????????????(Physical Address Extension PAE)??????4λ?????32λ??CPU????Χ?????2??36?η??????64GB???????????????Χ??????????

VirtualAlloc??AllocateUserPhysicalPages

    VirtualAlloc??AllocateUserPhysicalPages??SQL Server??Windows???????????????????????????£?SQL Server?????????????涼?????VirtualAlloc?Windows??????棬?????????????????????????????????????檔??????????????????VirtualAlloc???????涼??????Windows??????????????????????????С???????IO???????

    ?????AllocateUserPhysicalPages?????????棬????????????(Page Table)???????????????????????????治?????????檔??32λSQL Server??????£????????AWE??????棬buffer pool?е?data cache?????????????????????MemToLeave?????Buffer Pool?е??????????棨???????м?????棩??????VirtualAlloc??????????

    ???????????AWE???????????SQL Server???????????????????????????б???????10?????

    ?10.????AWE???п???????????

    ???????????????????????SQL Server??????????????????11?????

    ?11.????????(Lock Page In Memory)

 64λSQL Server??????

    64λWindows??????????????????????????????????????????????£?64λ??SQL Server?????????VirtualAlloc??????????????ζ?????з??????涼????Windows?????????????????????????????????Buffer Pool Churn??????????????SQL Server Buffer Pool?е??????????????????????????IO???(???????sys.dm_exec_query_memory_grants???DMV???????????)?????64λSQL Server??Buffer Pool?е?Date Page???AllocateUserPhysicalPages??????????????????????????32λSQL Server????????64λSQL Server???????????AWE????迪?????11?????“Lock Page In Memory”?????

    ????????????????????????SQL Server??????????????Windows???漱???SQL Server?????Windows?????漱??????????????Buffer Pool?е??data cache??MemToLeave?????????????????????????????????????Data Cache?????С???????SQL Server????????????ж??????????????п??????????????Windows?????????????Windows????????????????????????”Lock Page In Memory”????????SQL Server Buffer Pool?????????????2????????????????????

    ??????????????Buffer Pool???AllocateUserPhysicalPages??????????????????????????п?????sqlservr.exe??????????????Buffer Pool?з?Data Cache?????MemToLeave?????????????Data Cache??????????????п??????sqlservr.exe??????????????????????????G??????????????Perfmon.exe?в?SQL Server:Memory ManagerTotal Server Memory??????????SQL Server?????????檔

 ???

    ?????????SQL Server????????????????SQL Server?????????????????????SQL Server????????????????????????????????????????IO?????п????????????????