Question on libInit working way

H

hx

Guest
Hello,

does any one know how libInit is exactly working?
I know that it is loaded once each time the library is accessed, but
how does the environment knows that it is the first time?
Is it using a check on the list of functions that are already loaded,
or setting some variables, or setting some libraries properties to a
different state?
How does the stream out knows that it has to recompile everything
(re-execute the libInit)? By refreshing memories (or erasing them?)?
Thanks for your help
 
On Mon, 30 May 2005 03:10:22 -0500,
hxdelecourt@yahoo-dot-fr.no-spam.invalid (hx) wrote:

Hello,

does any one know how libInit is exactly working?
I know that it is loaded once each time the library is accessed, but
how does the environment knows that it is the first time?
Is it using a check on the list of functions that are already loaded,
or setting some variables, or setting some libraries properties to a
different state?
How does the stream out knows that it has to recompile everything
(re-execute the libInit)? By refreshing memories (or erasing them?)?
Thanks for your help
The libInit.il file is executed the first time a library is opened. No
property or other flag would be needed since the database code knows it
is opening the library for the first time since the control structures
for accessing the library are being created.

PIPO handles all GDSII Stream I/O and runs as a separate process. Each
process maintains it's own database access control structures, unless
heroic efforts are made in the code, so reading or writing Stream
appears to reload the libInit.il when it is actually only loading it for
the first time, for the PIPO process.
 
Thanks for the clear explanations! I have everything I wanted to know!
 

Welcome to EDABoard.com

Sponsor

Back
Top