Operating System - HP-UX
1833504 Members
2649 Online
110059 Solutions
New Discussion

system buffer cache question

 
Aashish Raj
Valued Contributor

system buffer cache question

Hi ,

1)Is it true that whenever a block is read using synchronous i/o from the disk into memory, it is first copied into system buffer cache(whose size depends on dbc_min_pct and dbc_max_pct) , and then from here it is copied into user's address space like in the case of oracle , a oracle data block(8k) read from disk is first copied into system buffer cache and then from here it is copied into oracle's buffer cache.
What i heard is in old unixes, this used to be the case, now a days only the metadata of the block is copied into system buffer cache and the actual block is copied directly into users address space thus avoiding two copies of same block in memory.

2)Is the system buffer cache(dynamic buffer cache) is also paged out to swap space if required.

Thanks
AR
2 REPLIES 2
Luc Bussieres_1
Trusted Contributor

Re: system buffer cache question

Hi,

I could answer to part 2 of your question and I will leave question number to someone else since I'm not sure of the answer.

The buffer cache is never swapped out but if you need more memory for your applications then it will be reduce down to the minimum value: dbc_min_pct. This is very time consuming for a system because it needs to write on disk all the dirty buffer (after a write) that are still in memory. This is what the vhand process is in charge of doing. That's the reason why on large memory system you need to reduce the value of dbc_max_pct to reduce the risk of having to reduce the size of the buffer cache.

Luc
steven Burgess_2
Honored Contributor

Re: system buffer cache question

Hi Aashish

The chap you want to answer this question is Bill Hassell - If he spots this post he will no doubt reply

In the meantime have a look at the docs on your system in /usr/share/doc

mem_mgt.txt and proc_ mgt.txt

The above will keep you busy for a while

Regards

Steve
take your time and think things through