What is virtual about Informix "virtual segment of shared memory"?
Posted in 2011
Topics: General Discussion
In the IDS memory architecture, why is the "virtual" portion of shared memory called "virtual?" It seems to reside in that portion of physical memory that the O/S designates to share between multiple processes, but never seems to have anything to do with swapping/paging to disk.
The "Virtual" designation is an internal Informix term referring to the
internal management of memory that can be transient and shared between
multiple oninit processes and user sessions. Basically it contains all of
the server's in-memory data structures except the buffer cache which mostly
resides in the RESIDENT segment (new buffer caches added after the server
starts by creating a dbspace with a pagesize that was not being used by the
server at startup will create a new buffer cache in the virtual segment).
As you observe, it has nothing directly to do with the operating system
concept of "virtual" meaning using disk space to expand the capacity of
physical memory.
Art
Art S. Kagel
Advanced DataTools (www.advancedatatools.com)
Blog: http://informix-myview.blogspot.com/
Disclaimer: Please keep in mind that my own opinions are my own opinions and
do not reflect on my employer, Advanced DataTools, the IIUG, nor any other
organization with which I am associated either explicitly, implicitly, or by
inference. Neither do those opinions reflect those of other individuals
affiliated with any entity with which I am affiliated nor those of the
entities themselves.
On Thu, Jul 21, 2011 at 8:34 AM, red_valsen <red_valsen@yahoo.com> wrote:
> In the IDS memory architecture, why is the "virtual" portion of shared
> memory called "virtual?" It seems to reside in that portion of
> physical memory that the O/S designates to share between multiple
> processes, but never seems to have anything to do with swapping/paging
> to disk.
> _______________________________________________
> Informix-list mailing list
> Informix-list@iiug.org
> http://www.iiug.org/mailman/listinfo/informix-list
>
On Jul 21, 6:34 am, red_valsen <red_val...@yahoo.com> wrote: > In the IDS memory architecture, why is the "virtual" portion of shared > memory called "virtual?" It seems to reside in that portion of > physical memory that the O/S designates to share between multiple > processes, but never seems to have anything to do with swapping/paging > to disk. The folks back when wanted something to distinguish the fixed memory segments from the ones we added. You're correct, vitrual is probably not the best term, but it's what was chosen. Personally, I think "dynamic segments" might make more sense.
Yes - I agree with both of the guys on this actually. But I've always described it more as virtual since we can "add additional segments on the fly", but as Madison points out, "dynamic" would be better. Kinda like "Informix DYNAMIC Server", eh? Mark Scranton The Mark Scranton Group, LLC www.markscranton.com 1-855-GET-IFMX "All Informix ... all the time." On Jul 21, 10:21 am, mpruet <mpr...@us.ibm.com> wrote: > On Jul 21, 6:34 am, red_valsen <red_val...@yahoo.com> wrote: > > > In the IDS memory architecture, why is the "virtual" portion of shared > > memory called "virtual?" It seems to reside in that portion of > > physical memory that the O/S designates to share between multiple > > processes, but never seems to have anything to do with swapping/paging > > to disk. > > The folks back when wanted something to distinguish the fixed memory > segments from the ones we added. You're correct, vitrual is probably > not the best term, but it's what was chosen. Personally, I think > "dynamic segments" might make more sense.