Cache BuffersLRU Chain闩锁竞争与解决
当用户进程需要读数据到Buffer Cache时或Cache Buffer根据LRU算法进行管理等,就不可避免的要扫描LRU List获取可用Buffer或更改Buffer状态,我们知道,Oracle的Buffer Cache是共享内存,可以为众多并发进程并发访问,所以在搜索的过程中必须获取Latch(Latch是Oracle的一种串行锁机制,用于保护共享内存结构),锁定内存结构,防止并发访问损坏内存中的数据(我们必须认识到对于数据的访问、Bu...
分类:
其他好文 时间:
2014-08-02 15:36:23
阅读次数:
393
首先是概念层面的几个问题: Java中运行时内存结构有哪几种?Java中为什么要设计堆栈分离?Java多线程中是如何实现数据共享的?Java反射的基础是什么?然后是运用层面:引用类型变量和对象的区别?什么情况下用局部变量,什么情况下用成员变量?数组如何初始化?声明一个数组的过程中,如何分配内存?声明...
分类:
编程语言 时间:
2014-08-01 13:16:51
阅读次数:
330
一共用体的概念
当需要把不同类型的变量存放到同一段内存单元或对同一段内存单元的数据按不同类型处理则
需要使用共用体数据结构
例把一个整型变量一个字符型变量一个实型变量放在同一个地址开始的内存单元中
共用体的定义形式
union 共用体名
成员列表
变量列表
注意区分
共用体各成员占相同的起始地址所占内存长度等于最长的成员所占内存
结构体各成员占不同的地址所占内存长度等于全部成...
分类:
其他好文 时间:
2014-07-28 15:55:13
阅读次数:
339
1.2.2 UGA和CGA
UGA(用户全局区)由用户会话数据、游标状态和索引区组成。在共享服务器模式下,一个共享服务进程被多个用户进程共享,此时UGA是Shared Pool或Large Pool的一部分,而在专用服务器模式下,UGA则是PGA的一部分。
不考虑Shared Server模式,在Dedicated模式下,PGA与UGA关系,就如同Process和Session的关系,PGA是服务于进程的内存结构,包含进程信息;而UGA是服务于会话的,它包含的是会话的信息。UGA中包含如下信息:...
分类:
数据库 时间:
2014-07-28 00:18:39
阅读次数:
410
PGA的管理:
sys@felix SQL>show parameter area_size
NAME TYPE VALUE
------------------------------------ ----------------------------------------------------
bitmap_merge_area_size integer ...
分类:
数据库 时间:
2014-07-28 00:17:29
阅读次数:
413
Oracle的体系结构大体上分为两部分:Instance(实例)和Database(数据库)。Instance(实例):在Oracle Instance中主要包含了SGA以及一些进程(例如:PMON、SMON、DBWn、LGWR、CKPT等)。如果一个用户的进程连接到Oracle Server时,其...
分类:
数据库 时间:
2014-07-23 15:47:49
阅读次数:
316
一、jvm内存结构程序计数器(Program Counter Register)、JVM虚拟机栈(JVM Stacks)、本地方法栈(Native Method Stacks)、堆(Heap)、方法区(Method Area)(1)PCR尾随线程生命周期,记录当前运行到的.class字节码行数,用于...
分类:
编程语言 时间:
2014-06-16 13:40:31
阅读次数:
266
上一篇介绍了MySQL源码中保护内存结构或变量的锁,这里开始介绍下MySQL事务中的表锁。注1: 在表锁的实现上面,使用【mutex+condition+queue】的结构实现并发,阻塞,唤醒的表锁功能。注2: 本文进行的一些实验,重要的配置项:1. autocommit=02. tx_isol.....
分类:
数据库 时间:
2014-06-15 09:36:39
阅读次数:
250
我们可以通过show
sga命令查看共享池的整体组成部分:....待截图....一、SGA内存结构Oracle中SGA主要包括: 1、固定数据结构部分(FIXED Size)
2、数据块缓冲区(DATABASE BUFFER) 3、REDO LOG缓冲区(redo buffers) 4、共享池(在....
分类:
其他好文 时间:
2014-06-13 16:07:59
阅读次数:
384
MySQL的锁: MySQL内部有很多种类的锁,按照用途不同,可以分为两类: 1.
保护内存结构的锁 server层对于线程共享的变量,基本上使用mutex,rwlock来做保护。 innodb层会增加使用spinlock自旋锁 2.
提供或者保...
分类:
数据库 时间:
2014-06-12 13:27:02
阅读次数:
293