EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  <19951996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  <19951996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: use VxWorks task to load databases
From: [email protected] (Jim B. Kowalkowski)
Date: Fri, 7 Apr 1995 07:18:32 -0500
Johnny,

> 
>   Have you thought about using a VxWorks task to load databases
> to ioc ? So that only one startup file is needed for all the iocs.
> Also it will load what ever in the specified production tree so that
> it will not be impacted by changes of products in the production
> tree.  It can be called "Dynamic Shared Directory Loading".
> 
>   Say, I have a production tree like this:
> 
>   <prod> ---- <ioc1> --- <app1> --- app1db1.database 
>            |          |             app1db2.database
>            |          |             app1.o
>            |          |- <app2> --- app2db1.database 
>            |                        app2db2.database
>            |                        app2.o
>            |              . . .
>            |
>            |- <ioc2> --- <app1> --- app1db1.database 
>                       |             app1db2.database
>                       |             app1.o
>                       |- <app3> --- app3db1.database 
>                                     app3db2.database
>                                     app3.o
>                           . . .
>          . . . . . .
> 
>   Let me know how do you think about this.
> 

It could work like this without to much trouble:

------------------------------------------------
 # startup file for all the iocs 
 ld  < epics/iocCore
 ld  < epics/drvSup
 ld  < epics/recSup
 ld  < epics/devSup
 ld  < epics/seq
 .
 .
 .
 dbLoad "default.dctsdr"
 rcmd(xx,xx,xx,xx,"make_pattern_file")
 dbLoadTemplate "the_pattern_file"
 .
 .
 .
 iocInit
------------------------------------------------

Where make_pattern_file is a script that runs on the workstation that
looks like this:

------------------------------------------------
#!/bin/sh

if [ -e the_pattern_file ]
then
 exit 0
fi

find $app_top -name "*.db" -print |
	awk '{ print "file " $1 }' > the_pattern_file

------------------------------------------------

The pattern file could now be user directly by dbLoadTemplate().  The
file the_pattern_file would look something like this:

file ../theApp/Db/my.db
file ../theApp/Db/another.db
file ../theApp/Db/yetanother.db
file ../testApp/Db/my.db
file ../testApp/Db/another.db
.
.
.

I haven't tested this or anything, it's just an idea.

Jim

---------------
Jim Kowalkowski
 Argonne National Laboratory
 Advanced Photon Source
 708/252-9410
 [email protected]
 [email protected]

Navigate by Date:
Prev: Re: use VxWorks task to load databases Jeff Hill
Next: Success of the Duke storage ring commissioning ... Ying Wu
Index: 1994  <19951996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: use VxWorks task to load databases Jeff Hill
Next: Success of the Duke storage ring commissioning ... Ying Wu
Index: 1994  <19951996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 10 Aug 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·