缓冲区表

缓冲区表将跟踪共享内存池中单个缓冲区的地址和状态。当使用缓冲区时,该缓冲区将包含来自磁盘的数据或索引页的映像。有关磁盘页的用途和内容的更多信息,请参阅

缓冲区表中的每个缓冲区都包含以下缓冲区管理所需的控制信息:
缓冲区状态
缓冲区状态可以描述为空的、未修改的或已修改的。 未修改的缓冲区包含数据,但可以覆盖这些数据。 已修改的(脏)缓冲区包含必须在可以覆盖前写入磁盘的数据。
当前®锁定访问级别
缓冲区将根据用户线程正在执行的操作类型接收锁定访问级别。数据库服务器支持两种缓冲区锁定访问级别:共享和互斥。
等待缓冲区的线程
每个缓冲区头都保留一系列正在等待缓冲区的线程以及每个处于等待状态的线程所要求的锁访问级别。

每个数据库服务器缓冲区在缓冲区表中都有一个条目。

有关数据库服务器缓冲区的信息,请参阅共享内存的常驻部分。有关如何监视缓冲区的信息,请参阅监视缓冲区

数据库服务器根据已分配的缓冲区数确定缓冲区表散列表中的条目数。散列值的最大数是小于 buffers 值的 2 的最大幂数,它是在某个 BUFFERPOOL 配置参 数字段中指定的。