WEB开发网
开发学院数据库Oracle Oracle进程结构和内存结构的实例 阅读

Oracle进程结构和内存结构的实例

 2007-05-10 12:16:05 来源:WEB开发网   
核心提示: LE实例可以有许多后台进程,但它们不是一直存在,Oracle进程结构和内存结构的实例(2),后台进程的名字为: DBWR 数据库写入程序 LGWR 日志写入程序 CKPT 检查点 SMON 系统监控 PMON 进程监控 ARCH 归档 RECO 恢复 LCKn 封锁 Dnnn 调度进程 S

LE实例可以有许多后台进程,但它们不是一直存在。后台进程的名字为:

DBWR 数据库写入程序

LGWR 日志写入程序

CKPT 检查点

SMON 系统监控

PMON 进程监控

ARCH 归档

RECO 恢复

LCKn 封锁

Dnnn 调度进程

Snnn 服务器

每个后台进程与ORACLE数据库的不同部分交互。

下面对后台进程的功能作简单介绍:

DBWR进程:该进程执行将缓冲区写入数据文件,是负责缓冲存储区管理的一个ORACLE后台进程。当缓冲区中的一缓冲区被修改,它被标志为“弄脏”,DBWR的主要任务是将“弄脏”的缓冲区写入磁盘,使缓冲区保持“干净”。由于缓冲存储区的缓冲区填入数据库或被用户进程弄脏,未用的缓冲区的数目减少。当未用的缓冲区下降到很少,以致用户进程要从磁盘读入块到内存存储区时无法找到未用

的缓冲区时,DBWR将管理缓冲存储区,使用户进程总可得到未用的缓冲区。

ORACLE采用LRU(LEAST RECENTLY USED)算法(最近最少使用算法)保持内存中的数据块是最近使用的,使I/O最小。在下列情况预示DBWR 要将弄脏的缓冲区写入磁盘:

当一个服务器进程将一缓冲区移入“弄脏”表,该弄脏表达到临界长度时,该服务进程将通知DBWR进行写。该临界长度是为参数DB-BLOCK-WRITE-BATCH

的值的一半。

当一个服务器进程在LRU表中查找DB-BLOCK-MAX-SCAN-CNT缓冲区时,没有查到未用的缓冲区,它停止查找并通知DBWR进行写。

出现超时(每次3秒),DBWR 将通知本身。

当出现检查点时,LGWR将通知DBWR在前两种情况下,DBWR将弄脏表中的块写入磁盘,每次可写的块数由初始化参数DB-BLOCK-WRITE-BATCH所指定。如果弄脏表中没有该参数指定块数的缓冲区,DB

上一页  1 2 3 4 5 6  下一页

Tags:Oracle 进程 结构

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接