EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

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

Subject: rsrv and cas
From: Jack Smith <[email protected]>
To: "[email protected]" <[email protected]>
Date: Mon, 7 Jan 2013 14:44:03 -0500
On Fri, Nov 30, 2012 at 11:21 AM, Ralph Lange <[email protected]> wrote:
> On 30.11.2012 16:51, Jack Smith wrote:
>> I am trying to look through base-3.14.*/src/misc/iocInit.c. I guess
>> the only function related to caRepeater would be rsrv_init(). Then I
>> take a quick look at src/rsrv/caservertask.c, but still don't see how
>> the caRepeater get spawned. Could you tell me how the caRepeater is
>> started during iocInit?
>
> The repeater is a *client* side thing, as it fans out incoming beacons
> from other CA servers to local CA clients.
>
> In the "ca" directory (that has the ChannelAccess client code), the
> constructor of the udpiiu class (in udpiiu.cpp) calls
> caStartRepeaterIfNotInstalled(), which spawns off the repeater (around
> line 590 in udpiiu.c).
> There, depending on the architecture, the repeater is started as a
> process or (if not supported) as a thread.
>
>> Also what does "rsrv" mean / stand for?
>
> It is the old C Channel Access server. "srv" is for "server", I don't
> know what the "r" is for.
>
> Hope this helps,
> ~Ralph
>

I am starting a new thread about the two modules related to Channel
Access server: rsrv and cas.

As Ralph said below, rsrv is the old C Channel Access server. I
suppose cas is the new C++ Channel Access server. Here are my
questions:

1. Why do we need both rsrv and cas? What functionalities are provided
in each module?

2. When I use makeBaseApp to create an example IOC application, there
is one line "example_LIBS += $(EPICS_BASE_IOC_LIBS)" in the app's
src/Makefile and there is an output message "-lrecIoc -lsoftDevIoc
-lmiscIoc -lrsrvIoc -ldbtoolsIoc -lasIoc -ldbIoc -lregistryIoc
-ldbStaticIoc -lca -lCom"  during the app building. I see "rsrvIoc"
and "ca" are included in the IOC. I suppose the "ca" is the Channel
Access Client library because an IOC could be Channel Access Server as
well as Channel Access Client. But I don't see something like 'cas' in
the linked EPICS base libraries. Where is 'cas' included, dbIoc or
dbStaticIoc or some else?

Thanks,

Jack

Replies:
Re: rsrv and cas Andrew Johnson

Navigate by Date:
Prev: RE: streamDevice: how to read a value as fast as possible? Hu, Yong
Next: Re: rsrv and cas Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: APS Web Server upgrade in ~5 hours Andrew Johnson
Next: Re: rsrv and cas Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 20 Apr 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·