物理地址空间是处理器用来访问位于总线上的所有部件的集合。
在32位处理器上,地址总线为32位,寻址空间为4GB。
在使用PAE的32位服务器上,地址总线为36位,寻址空间为64GB。
在64位的处理器上生产商将地址总线限制为44位,寻址空间为2TB。
在32位系统上,系统中运行的每个进程有共计4GB的虚拟地址空间(VAS),用来存放应用程序所使用的程序代码和数据。4GB的VAS由内核模式和用户模式共享,用户模式地址空间和内核模式地址空间各占2GB,如果激活/3GB或者/USERUA选项后,用户模式地址空间占3GB。
在X64系统上,系统为进程分配8TB的VAS
在IA64系统上,系统为进程分配7TB的VAS
不同的操作系统版本,所支持的最大物理内存不一样。
虚拟地址空间只是虚拟内存,不是物理内存,而且它只是空间,不是实际内存。
虚拟内存管理器(Virtual Memory Manager VMM)负责所有的物理内存,将物理内存在所有需要内存的进程间共享,当进程请求内存或者需要加载数据是,OS接受请求,将进程中一块虚拟内存空间和实际物理内存相互关联起来。
虚拟内存管理器可以将内存中数据取走并存放到页面文件中,直到进程试图访问该段数据时重新将数据从页面中加载到物理内存中并完成虚拟内存和物理内存之间的映射。
如果进程再次使用数据而数据需要从页面文件中重新载入,该操作被称为Hard page Fault(硬页面错误)
当物理内存缺乏而多个进程争用有限内存时,会导致数据频繁地从物理内存中换入和换出,从而导致系统响应速度变慢,性能下降。
通过修改Boot.ini文件来打开/3GB选项或/UserVA选项。
/UserVA选项是Windows Server 2003中新增加的。
当/3GB选项被打开时,操作系统会受限于最多使用16GB的物理内存,故如果服务器拥有16GB或更多内存时,不要使用3GB选项

PAE--physical Address Extensions
PAE是Intel引入一种突破32位地址总线的方式,将地址总线物理扩展到36位,从而允许32位操作系统最多使用64GB内存。
在Datacentrt版本的OS中,如果硬件允许热内存交换,即使不在Boot.ini文件中激活PAE,仍然会运行PAE内核

在拥有多于4GB的服务器上,则激活PAE选项。

AWE--Address Windowing Extensions
AWE是一位Windows API,允许32位进程映射其虚拟地址空间以外的内存,使得进程可以使用物理内存来存储数据,但是在使用数据时,必须将它映射到进程中的VAS中。AWE的思想类似于Windows中的页面文件,由于AWE中的数据存放在内存中,内存到内存的数据传递更快。

Enable AWE option for SQL SERVER
1.Use sp_configure to set the value as 1 for the option 'awe enabled'
2.Grant the right of 'Lock Page in Memory' to the service account.

To enable AWE
exec sp_configure 'show advanced options', 1 
RECONFIGURE 
exec sp_configure 'awe enabled', 1 
RECONFIGURE

To enable the lock pages in memory option
1.On the Start menu, click Run. In the Open box, type gpedit.msc. The Group Policy dialog box opens.
2.On the Group Policy console, expand Computer Configuration, and then expand Windows Settings.
3.Expand Security Settings, and then expand Local Policies.
4.Select the User Rights Assignment folder.
The policies will be displayed in the details pane.
5.In the pane, double-click Lock pages in memory.
6.In the Local Security Policy Setting dialog box, click Add.
7.In the Select Users or Groups dialog box, add an account with privileges to run sqlservr.exe.

User could not set AWE option on 64-Bit SQL Server, but if the service account have the right of 'Lock Pages in Memory', SQL Server will use AWE to access buffer pool memory automaticlly.
即使在64位系统上,SQL SERVER依然可以通过AWE来提升性能。

Buffer Pool--内存总结1的更多相关文章

  1. 14.6.3.3 Making the Buffer Pool Scan Resistant

    14.6.3.3 Making the Buffer Pool Scan Resistant 相比使用一个严格的LRU算法,InnoDB 使用一个技术来最小化数据总量 带入到buffer pool 而 ...

  2. 谁占用了我的Buffer Pool

    原文:谁占用了我的Buffer Pool 转自:http://blogs.msdn.com/b/apgcdsd/archive/2011/01/11/buffer-pool.aspx 我在做SQL S ...

  3. MySQL · 引擎特性 · InnoDB Buffer Pool

    前言 用户对数据库的最基本要求就是能高效的读取和存储数据,但是读写数据都涉及到与低速的设备交互,为了弥补两者之间的速度差异,所有数据库都有缓存池,用来管理相应的数据页,提高数据库的效率,当然也因为引入 ...

  4. 谁占用了我的Buffer Pool?--【转】

    转自:http://blogs.msdn.com/b/apgcdsd/archive/2011/01/11/buffer-pool.aspx 我在做SQL Server 7.0技术支持的时候有客户问我 ...

  5. 查看Buffer Pool使用情况--[转]

    ----源自:微软官方博客论坛 我的SQL Server buffer pool很大,有办法知道是哪些对象吃掉我的buffer Pool内存么?比方说,能否知道是哪个数据库,哪个表,哪个index占用 ...

  6. InnoDB缓存---InnoDB Buffer Pool

    InnoDB Buffer Pool 定义 对于InnoDB存储引擎,不管用户数据还是系统数据都是以页的形式存储在表空间进行管理的,其实都是存储在磁盘上的. 当InnoDB处理客户端请求,需要读取某页 ...

  7. 【大白话系统】MySQL 学习总结 之 缓冲池(Buffer Pool) 如何支撑高并发和动态调整

    如果大家对我的 [大白话系列]MySQL 学习总结系列 感兴趣的话,可以点击关注一波. 一.上节回顾 在上节< 缓冲池(Buffer Pool) 的设计原理和管理机制>中,介绍了缓冲池整体 ...

  8. 【MySQL】InnoDB 内存管理机制 --- Buffer Pool

    InnoDB Buffer Pool 是一块连续的内存,用来存储访问过的数据页面 innodb_buffer_pool_size 参数用来定义 innodb 的 buffer pool 的大小 是 M ...

  9. SQL Server 2014新特性探秘(2)-SSD Buffer Pool Extension

    简介     SQL Server 2014中另一个非常好的功能是,可以将SSD虚拟成内存的一部分,来供SQL Server数据页缓冲区使用.通过使用SSD来扩展Buffer-Pool,可以使得大量随 ...

  10. 理解innodb buffer pool

    今天组里有个同事说可以查看innodb buffer pool每个表和索引占的大小,为此我搜了下,还真有方法,记录下. innodb buffer pool有几个目的: 缓存数据--众所周知,这个占了 ...

随机推荐

  1. UI“三重天”之selenium--封装(二)

    基础示例代码: /** * @author Richered **/ package com.sample; import org.openqa.selenium.By; import org.ope ...

  2. OpenCL 事件的使用,以及回调函数

    ▶ 事件的两种使用方法.第一种是用事件 a 标记进入命令队列的操作 A,于是后续进入命令队列的操作 B 可以被要求等到前面事件 a 完成(即操作 A 完成)以后才能开始调度执行.第二种是使用用户自定义 ...

  3. How to Integrate JCaptcha in Spring Security

    The repository for JCaptcha is this one: <repository> <id>sourceforge-releases</id> ...

  4. Jmeter Http接口性能测试

    Jmeter Http接口性能测试 1.      启动Jmeter Jmeter下载解压即可使用,Jmeter启动,点击D:\ProgramFiles\jmeter\apache-jmeter-2. ...

  5. css常用属性总结:文本属性中的text-align

    前面提到text-indent属性,用来实现文本的缩进,今天的text-align使用率可比文本缩进高的多.拿自己现在做的项目上来说,水平居中和垂直居中估计是用到最多了,那我们就先看看它的语法吧! t ...

  6. 2015年传智播客JavaEE 第168期就业班视频教程14-登录功能需求分析+模块结构命名规范

    得先造一个模块,来封装我们的员工模型.登录的就是我们的员工嘛.员工模块属于权限校验系列的,校验叫做auth.进销存模块叫做cn.itcast.erp.invoice.权限模块叫做cn.itcast.e ...

  7. Debian 如何使用测试版更新软件包到最新的版本

    #vim /etc/apt/sources.list 将版本代号替换成 testing 然后更新,应可以安装最新的软件包了.

  8. [SoapUI]怎样保存response到本地文件夹

    def myOutFile = "D:/AUS/Aspect Huntley feed URLs/Automation Save Responses/ahresearch.xml" ...

  9. 我读《从Paxos到zookeeper分布式一致性原理与实践》

    从年后拿到这本书开始阅读,到准备系统分析师考试之前,终于读完了一遍,对Zookeeper有了一个全面的认识,整本书从理论到应用再到细节的阐述,内容安排从逻辑性和实用性上都是很优秀的,对全面认识Zook ...

  10. 给tabhost加上点击监听,不是onTabChanged(String)监听

    给tabhost加上点击监听,不是onTabChanged(String)监听 2012-08-11 01:43 5209人阅读 评论(0) 收藏 举报 stringandroidlayoutnull ...