ITPub博客

首页 > Linux操作系统 > Linux操作系统 > oracle 成长历程-第三章:内存组件详解-buffer cache-概述及相关术语-3

oracle 成长历程-第三章:内存组件详解-buffer cache-概述及相关术语-3

原创 Linux操作系统 作者:qwj801207 时间:2009-11-17 19:14:27 0 删除 编辑

16、    典型的buffer descriptor包括如下信息(位于PGA中):

n   Full RDBA(Rdba = relative data block address ,buffer header所对应的数据块的地址)

n   Class

n   Object#

n   指向buffer header的提示

n   Pin (buffer state object with which to associate it)

n   Examination function (if CR or CRX)

n   If multiblock read, then the number of buffers to be read

17、    write-out一个老化的buffer的流程如下:

1)         Buffer最初是在LRU-AUX.

2)         移动到LRU-MAIN.

3)         被修改后(释放闩),移出LRUW-MAIN。 DBWR稍后把它移动到LRUW-AUX.

4)         出列到I/O 槽 通过 kcbbxsv(Oracle内部程序模块名称).

5)         Queue writes from I/O slots 通过 kcfqueuewr.

6)         写入disk 通过kcfdowr。完成

18、    Touch 的数量 touch count

当一个buffer被touch到缓存中,touch数量就会增加1。

19、    Buffer Cache Latches与Cache buffers chains

n   块被hash为一个链,基于一对。每一个chain被一个子cache buffers chains保护,防止在扫描过程被改变。

20、    Cache buffers LRU chain

n   保护LRU链。当进程需要移动buffer到某个LUR set的时候,需要获得latch。在Oracle server里面,它是最繁忙latch之一。为了减少竞争,可以设置多个_DB_BLOCK_LRU_LATCHES

21、    Checkpoint queue latch

n   在进程把buffer放在checkpoint queue之前,它必须确保queue没有正在被使用。这有点和LRUlist 类似。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/347643/viewspace-619859/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-11-16

  • 博文量
    23
  • 访问量
    21637