[20220303]oracle如何定位使用library cache mutex 3.txt

[20220303]oracle如何定位使用library cache mutex 3.txt

–//这个问题实际上困扰我很久,我开始以为library cache bucket在1个chunk内,只要知道 基地址+40buckect值 获得偏移,定位
–//library cache bucket 的地址。
–//注:11g 下每个library cache bucket占用16字节,后面跟着mutex,mutex结构占用24字节(注:有朋友讲占用16字节,我想与转储看
–//到mutex仅仅有4个值有关,4
4=16,我个人还是按照24字节来算),这样整个结构占用40字节。

–//可以参考我前面的测试 [20210524]分析library cache转储 3.txt

–//而实际上的情况被分成好几个chunk,显然无法简单的通过 基地址+40*buckect值 计算获得偏移,那么oracle计算sql语句的
–//hash_value,通过hash_value值计算出bucket值, 等于hash_value % (2^_kgl_bucket_count * 256) ,知道bucket数值,
–//如何通过bucket数值来定位library cache muext的地址呢?自己尝试做这方面的探究。

–//测试_kghdsidx_count <> 1 的情况。

1.环境:
SCOTT@book> @ ver1
PORT_STRING VERSION BANNER
_kgl_bucket_count Library cache hash table bucket count (2^_kgl_bucket_count * 256) TRUE 9 9 FALSE FALSE
–//缺省2^9*256 = 131072.

–//重启数据库略.

SYS@book> @ hide _kghdsidx_count
NAME DESCRIPTION DEFAULT_VALUE SESSION_VALUE SYSTEM_VALUE ISSES ISSYS_MOD

Original: https://www.cnblogs.com/lfree/p/15963466.html
Author: lfree
Title: [20220303]oracle如何定位使用library cache mutex 3.txt

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/606236/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Redis分布式锁的使用与实现原理

    模拟一个电商里面下单减库存的场景。1.首先在redis里加入商品库存数量。 2.新建一个Spring Boot项目,在pom里面引入相关的依赖。 <dependency&gt…

    Linux 2023年5月28日
    0105
  • 链栈

    #pragma once #ifndef _LINKSTACK_ #define _LINKSTACK_ #include using namespace std; typedef…

    Linux 2023年6月7日
    066
  • Linux IP 命令略解

    help 为该命令的帮助信息。 实例ip link show # 显示网络接口信息 ip link set eth0 up # 开启网卡 ip link set eth0 down…

    Linux 2023年6月14日
    075
  • Linux内核驱动–硬件访问I/O【转】

    寄存器与内存 寄存器和内存之间有什么区别? [En] What is the difference between registers and memory? 寄存器和RAM的主要…

    Linux 2023年5月27日
    068
  • ubuntu redis 集群配置

    1.下载并编译redis 去http://download.redis.io/releases/查看自己想要下载的redis,右键复制一下链接我的原始目录:/root wget h…

    Linux 2023年6月7日
    0104
  • 编程入门之日志聚合系统

    (关心具体部署的同学,可以移步我的另外一篇《Centos部署Loki日志聚合系统 》https://www.cnblogs.com/uncleguo/p/15975647.html…

    Linux 2023年6月13日
    076
  • 虚拟机的NAT网络配置

    写在前面: 本篇文章介绍如何使虚拟机使用VMware的NAT网络模式。NAT,即Network Address Translation的缩写,在NAT模式下虚拟机被接入到物理机的虚…

    Linux 2023年6月8日
    0118
  • Linux 下 SVN 的安装和配置

    SVN 是一个自由开源的版本管理系统,它可以按照时间的顺序去管理文件、目录以及对其进行的修改。于今,它被广泛的用于互联网公司的项目版本管理中 工作原理 它的工作原理如下图所示 它是…

    Linux 2023年6月13日
    092
  • shell运算符

    算术运算符 下表列出了常用的算术运算符,假定变量 a 为 10,变量 b 为 20: 运算符说明举例 + 加法 expr $a + $b 结果为 30。 – 减法 ex…

    Linux 2023年5月27日
    067
  • CentOS 文本编辑器

    Linux 终端的文本编辑器中,较著名的有:Nano、Vim、Emacs。其它文本编辑器还有 Gedit、Sublime,Atom 等等。 1.1、基础命令 nano:打开 nan…

    Linux 2023年6月8日
    0109
  • redis启动失败 提示Unregistered Authentication Agent for unix-process:6176

    使用宝塔软件安装的redis 一直没启动起来。 使用 journalctl -xe 命令查看原因,发现redis.pid已经存在。 进入该目录,删除redis.pid。 再使用sy…

    Linux 2023年5月28日
    0331
  • 【原创】Linux虚拟化KVM-Qemu分析(十)之virtio驱动

    背景 Read the fucking source code! –By 鲁迅 A picture is worth a thousand words. –…

    Linux 2023年6月8日
    088
  • Tomcat性能优化方案

    你使用过tomcat的话,简单的说就是”内存溢出”. 通常情况下,这种问题出现在实际的生产环境中.产生这种问题的原因是tomcat使用较少的内存给进程,通过…

    Linux 2023年6月14日
    099
  • LeetCode-443. 压缩字符串

    题目来源 题目详情 给你一个字符数组 chars ,请使用下述算法压缩: 从一个空字符串 s 开始。对于 chars 中的每组 连续重复字符 : 如果这一组长度为 1 ,则将字符追…

    Linux 2023年6月7日
    0101
  • python递归查找文件目录

    1 # -*- coding:utf-8 -*- 2 3 import os 4 5 allfile = [] 6 def get_all_file(path): 7   allf…

    Linux 2023年6月6日
    077
  • oracle 触发器trigger(主键自增长)

    触发器我们也可以认为是存储过程,是一种特殊的存储过程。 存储过程:有输入参数和输出参数,定义之后需要调用 触发器:没有输入参数和输出参数,定义之后无需调用,在 适当的时候会自动执行…

    Linux 2023年6月7日
    081
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球