Buffer Pool--内存相关术语
虚拟地址空间(virtual address space):
供应用程序能够申请访问的最大地址空间,32位系统上为4GB,64位系统上是8TB,虚拟地址空间映射的数据不一定存放在物理内存中,还可能存放在页面文件(page file)中
Reserved Memory(保留内存):
应用程序通过windows api向虚拟地址空间上申请保留的一块内存地址空间,该空间不是物理内存空间,甚至尚未分配空间/建立页面映射
保留内存只是虚拟内存空间上的一段地址,而非真正的物理内存空间,甚至根本没有分配空间/建立页面映射
保留地址空间不能被其他程序访问
Committed Memory(提交内存)
将预先保留(reserved)内存正式提交(committed)使用,提交的页面在访问时最终转化成物理内存中的有效页面,即在物理内存中申请到一段空间来存放数据。
Shared Memory(共享内存):
在进程和操作系统间可以相互共享的内存,对多个进程可见的内存或存在于多个进程的虚拟地址空间
Private Bytes
某个进程提交的地址空间(committed memory),非共享部分
Working set(工作集)
进程提交的并且存放在物理内存的内存空间
Page Fault(页面访问错误)
1.soft Page Fault:目标页面不存在于当前工作集下,需要一次跳转才能访问到的其他进程工作集下的物理地址空间,成为软错误,该错误切换速度快,可以不考虑
2.Hard Page Fault:目标页面存在硬盘上,需要一次硬盘读,管理员需要关注该错误
System Working Set:
系统使用的物理内存
System Cache:
用于映射在系统高速缓存中打开的文件页面,以提高磁盘IO任务的速度
Non Paged Pool:
包括一定范围的系统虚拟地址的内存交换区,保证在任何时候都驻留在物理内存的页面
Paged Pool:
系统空间中可以调入调出系统进程工作集的虚拟内存区域,页交换区在系统初始化时建立,被内存模式组件用来分配系统内存
stack(栈)
每个线程有两个栈,一个内核模式(kenel model),一个用户模式(user model)
Lock Page In Memory:
当SQL的启动系统有Lock Page In Memory的权限时,会将申请到的物理内存一直锁住不释放,不会被Windows的换页机制换出到磁盘上。
但当windows有内存压力时,SQL Server仍需释放内存。
SQL Server企业版会默认开启该选项
SQL Server中NonBuffer Pool中的内存在windows存在内存压力时也不释放。
SQL Server中Min Server Memoery 是逻辑概念,不表示SQL Server 使用最小物理内存数,当SQL Server申请内存超过该值后,SQL server内存值到达该值后便不会在释放
SQL Server中Max Server Memoery 是逻辑概念,表示SQL sever的使用内存不超过该值,但该值不代表物理内存值。
请不要使用sp_configure 'set working set size'来配置内存,可能会引发错误
Buffer Pool--内存相关术语的更多相关文章
- innodb buffer pool相关特性
背景 innodb buffer pool作为innodb最重要的缓存,其缓存命中率的高低会直接影响数据库的性能.因此在数据库发生变更,比如重启.主备切换实例迁移等等,innodb buffer po ...
- SQL Server 2014新特性——Buffer Pool扩展
Buffer Pool扩展 Buffer Pool扩展是buffer pool 和非易失的SSD硬盘做连接.以SSD硬盘的特点来提高随机读性能. 缓冲池扩展优点 SQL Server读以随机读为主,S ...
- Oracle buffer cache与相关的latch等待事件
buffer cache与相关的latch等待事件 1.buffer cache 2.latch:cache buffers lru chain 3.latch:cache buffers chain ...
- MySQL · 引擎特性 · InnoDB Buffer Pool
前言 用户对数据库的最基本要求就是能高效的读取和存储数据,但是读写数据都涉及到与低速的设备交互,为了弥补两者之间的速度差异,所有数据库都有缓存池,用来管理相应的数据页,提高数据库的效率,当然也因为引入 ...
- 14.6.3.3 Making the Buffer Pool Scan Resistant
14.6.3.3 Making the Buffer Pool Scan Resistant 相比使用一个严格的LRU算法,InnoDB 使用一个技术来最小化数据总量 带入到buffer pool 而 ...
- 谁占用了我的Buffer Pool
原文:谁占用了我的Buffer Pool 转自:http://blogs.msdn.com/b/apgcdsd/archive/2011/01/11/buffer-pool.aspx 我在做SQL S ...
- 谁占用了我的Buffer Pool?--【转】
转自:http://blogs.msdn.com/b/apgcdsd/archive/2011/01/11/buffer-pool.aspx 我在做SQL Server 7.0技术支持的时候有客户问我 ...
- 查看Buffer Pool使用情况--[转]
----源自:微软官方博客论坛 我的SQL Server buffer pool很大,有办法知道是哪些对象吃掉我的buffer Pool内存么?比方说,能否知道是哪个数据库,哪个表,哪个index占用 ...
- InnoDB缓存---InnoDB Buffer Pool
InnoDB Buffer Pool 定义 对于InnoDB存储引擎,不管用户数据还是系统数据都是以页的形式存储在表空间进行管理的,其实都是存储在磁盘上的. 当InnoDB处理客户端请求,需要读取某页 ...
随机推荐
- Hive组件以及执行过程
对Hive的基本组成进行了总结: 1.组件: 元存储(Metastore )-存储“系统目录以及关于表.列.分区等的元数据”的组件.驱动(Driver )- 控制 HiveQL 生命周期的组件,当 H ...
- 【UVALive】4094 WonderTeam(神结论)
题目 传送门:QWQ 分析 好神的结论啊 看代码吧(Length只有85) 代码 顺手压了压代码 目前代码长度rk1 vjudge #include <iostream> ?:n ...
- 在Windows命令行窗口中输入并运行PHP代码片段(不需要php文件)的方法
有时候只是简单的为了测试某个php函数的效果,以前总是需要建一个php文件,复制这个文件的路径,再通过web访问或者用php命令执行这个php文件. 一直想要怎么才能不用创建文件,才能直接执行PHP代 ...
- Apache Kylin本地启动
首先:kylin是一种Online Analytics Platform. kylin 在Apache的首页是http://kylin.apache.org/cn/. kylin git代 ...
- Spring Boot SSO单点登入
https://github.com/ITDragonBlog/daydayup/tree/master/SpringBoot-SSO 流程图: 1: Redis 保存用户信息 到Redis(KEY- ...
- 基础 ByteBuffer 和 ByteBuf
缓冲区 ByteBuffer buffer = ByteBuffer.allocate(); ByteBuf https://www.jianshu.com/p/3fbf54b8e8ec
- Java 目标
Java 技术 其次掌握的技能树主要有三个方面:第一个是基础,比如对集合类,并发包,IO/NIO,JVM,内存模型,泛型,异常,反射,等有深入了解,最好是看过源码了解底层的设计.比如一般面试都会问Co ...
- PM2 介绍
[源引]https://github.com/Unitech/pm2 pm2 是一个带有负载均衡功能的Node应用的进程管理器.当你要把你的独立代码利用全部的服务器上的所有CPU,并保证进程永远都活着 ...
- 使用rem的原理,62.5%,根据屏幕宽度等比压缩网页
一.前言 我们在编写网页时,往往需要兼顾网页在不同屏宽情况下的显示 而有时为了省事,没时间写新的页面,也为了兼容考虑,这就需要使用等比压缩了 等比压缩的核心是rem 二.正文 (一).rem的使用 ...
- IoC和DI的区别
------------------siwuxie095 IoC 和 DI 的区别 1.区别 (1)Io ...