SQLOS 内存管理器组件的关系

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
简介:   内存节点 内存节点是内存被划为了几块。在numa体系中一个numa节点对应一个内存节点。 主要功能是提供分配位置。这句话来自 sql server 求生秘笈 很难理解。应该是分配内存用的。

 
内存节点
内存节点是内存被划为了几块。在numa体系中一个numa节点对应一个内存节点。
主要功能是提供分配位置。这句话来自 sql server 求生秘笈 很难理解。应该是分配内存用的。也可以理解为物理内存最原始的位置。
 
内存clerk
内存clerk,如果内存管理器的客户端需要分配内存,那么必须先建立内存clerk。
dmv 
2008:返回 SQL Server 实例中当前处于活动状态的全部内存 Clerk 的集合。
2012:返回 SQL Server 实例中当前处于活动状态的全部内存分配器的集合。
干嘛要翻译成内存clerk呢,翻译成分配器多好大家都看的懂。
 
内存对象
内存对象是一个堆,通过请求内存clerk分配内存,有3中类型的内存对象。
1.可变的内存对象
2.递增的内存对象
3.固定大小的内存对象
 
缓存
缓存在sql server 里面主要是2类一个是 buffer pool 一个是 高速过程缓存
buffer pool 由 8k固定大小的分配器 和 页缓存组成
 
图上面的各个框都解释了一下,接下来讲讲图,这个图的tip 是内存管理器的组件及其关系。
但是我看来感觉像是内存分配的过程。
 
1个内存对象通过页分配器 可以从buffer pool 中获取内存,也可以从内存clerk中获取内存。但是2者的内存终究是来至于 内存节点的,可以看出 实际安装的内存。内存的分配只是把物理内存的指针赋给了一个变量
相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
目录
相关文章
|
20天前
|
Java 程序员 测试技术
【Qt底层之内存管理机制】Qt 对象 父子关系、运行时机制与高效编程技巧
【Qt底层之内存管理机制】Qt 对象 父子关系、运行时机制与高效编程技巧
121 2
|
3月前
|
存储 索引
池式组件-内存池的原理及其实现
池式组件-内存池的原理及其实现
31 0
|
6月前
|
存储 C++
C++:内存分布和管理方式以及底层实现对比
C++:内存分布和管理方式以及底层实现对比
|
9月前
|
缓存 前端开发 调度
根据Nehalem架构了解CPU内部细节
根据Nehalem架构了解CPU内部细节
194 0
|
数据采集 负载均衡 搜索推荐
会计学包含的两种程序设计思想
会计学包含的两种程序设计思想
会计学包含的两种程序设计思想
【自然框架】内部类库、控件的引用关系(最新整理,基本稳定)
  和以前相比,减少了一个项目,把Control_Interface合并到CommonFunction里面。这样引用关系就简单多了。   基本上分为三个层次:类库、自定义控件、页面基类。其中的 MetaData 负责元数据的定义和加载。
627 0
|
Linux
linux内存管理之全局框架
讲解复杂繁琐的机制原理,最通俗的方法就是用模型架构的方式向读者呈现,先要在整体上了解大方向大架构,再根据大方向大架构来进行分支深入,犹如毛主席那句话“战略上蔑视敌人,战术上重视敌人”。下面我也以这种方式把各个大模型方式向大家画出,并作出简略解述。
832 0