WEB开发网
开发学院数据库MSSQL Server SQL Server 2000内存管理内幕 阅读

SQL Server 2000内存管理内幕

 2007-05-19 09:40:34 来源:WEB开发网   
核心提示: 这个4GB的地址空间被分成两部分:user mode部分和kernal mode部分,默认情况下,SQL Server 2000内存管理内幕(2),每个部分的大小为2GB,在Windows NT系列的操作系统上,但并不会增加user mode的空间,换句话说,可以通过BOOT.INI中的开

这个4GB的地址空间被分成两部分:user mode部分和kernal mode部分。默认情况下,每个部分的大小为2GB,在Windows NT系列的操作系统上,可以通过BOOT.INI中的开关来改变这个默认设置(Windows NT, Windows 2000, Windows XP和Windows Server 2003属于Windows NT系列,Windows 9x和Windows ME不属于)。

图1:Windows将进程的虚拟地址空间分成user mode(应用程序)和kernal mode(操作系统)两个部分

每个应用程序拥有自己的虚拟内存地址空间,但操作系统和设备驱动程序共享同一个私有地址空间。每一个虚拟内存页(memory page)都和特定的处理器模式(processor mode)相关联,为了存取某个虚拟内存页,处理器必须工作在要求的模式下。这意味着应用程序不能直接存取kernal mode的虚拟内存,系统必须切换到kernal mode才能存取kernal mode的内存空间。

Application Memory Tuning

3GB启动选项(Windows 2000的Advanced Server和DataCenter及后续Windows版本中可用)允许改变这两个地址空间部分的默认大小。它允许将进程的user mode地址空间从2GB扩展到3GB,相应的代价是kernal mode的地址空间从2GB减小到1GB。用Windows的说法,这个功能叫做Application Memory Tuning或者是4GB Tuning(4GT)。你可以通过在BOOT.INI文件的[Operating Systems]部分添加/3GB开关启用应用Application Memory Tuning。通常情况下,人们通过设置BOOT.INI文件的[Operating Systems]部分,将系统配置为可以使用3GB或者不使用3GB启动,以使在系统启动时可以进行选择。

警告:你也可以在Windows 2000 Professional和Windows 2000 Server上使用/3GB开关,这样做的负面结果是,将kernal mode的空间减小到了1GB,但并不会增加user mode的空间。换句话说,你减小了kernal mode的空间但并没有获得任何好处。

上一页  1 2 3 4 5 6 7  下一页

Tags:SQL Server 内存

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接