Andrew Johnson wrote:
**************
Modified
**************
# source files
(1) base-3.14.9/src/db/dbAccess.c
dbPutSpecial() is added for CCE. This function is just a pipe to
call the static function putSpecial(). dbPutSpecial() is written
by John L. Dalesio and Bernd Schoeneburg originally.
Rather than add a new function, rename the existing static
putSpecial() function to dbPutSpecial() and remove the static
keyword. All callers to the static putSpecial() routine are local to
this source file.
(2) base-3.14.9/src/db/dbScan.c
Register periodic scan tasks at RMT. When the IOC is SLAVE, these
tasks are changed to be inactive.
The #ifndef vxWorks block will not be accepted.
The changes here that provide the ability to stop periodic scan tasks
represent functionality that should be part of Base, although I may
want to change their implementation somewhat.
The code that registers the periodic scan tasks with the RMT should be
replaced with a call through a global function pointer that the RMT
initialization code can set before iocInit(). By removing any need
for the scan code to perform the registration itself this also drops
the requirement for epicsFindSymbol() and for the rmtDrvIf.h header to
be included in Base.
(3) base-3.14.9/src/dbStatic/dbBase.h
enum type "redUp" and the element of struct dbFldDes "red_update"
are added for CCE. They are added by Bernd Schoeneburg originally.
(4) base-3.14.9/src/dbStatic/dbLexRoutines.c
Deal with pdbFldDes->red_update for CCE, by Bernd Schoeneburg
originally.
This change adds 2 bytes to the field description structure of every
field of every record type in every IOC (that's about 1.7 KBytes for all
the record types in Base, which will be completely wasted on IOCs that
are not redundant) and provides the means for these values to be set
from the DBD file that defines the record type. We might want to
include a switch in the site configuration to turn on/off whether this
structure should include the red_update field.
I note that you did not include any modified record.dbd files; was that
an oversight, or do redundant IOCs have to use a completely different
set of record types? If you have to add a redUp() line to any of the
base record.dbd files then those changes need to go into Base too — you
should never use a record.dbd file in an IOC if a different record.dbd
file was used to generate the record.h file.
**************
Added
**************
(1) base-3.14.9/src/db/rmtDrvIf.h
The head file for RMT driver interface.
This header is not required if the task registration code is moved into
the redundancy application and hooked into the IOC by setting a global
function pointer before iocInit(). In any case it also appears in the
rsrv patch; only one instance of any header file should be included.
- Andrew
--
When a distinguished but elderly scientist states that something is
possible, he is almost certainly right. When he states that something
is impossible, he is very probably wrong. -- Arthur C. Clarke
- Replies:
- Re: Redundancy Patch: db Liu, Gongfa
- References:
- Redundancy Patch: db Andrew Johnson
- Navigate by Date:
- Prev:
Re: Redundancy Patch: iocsh Andrew Johnson
- Next:
Re: Redundancy Patch: libCom Andrew Johnson
- Index:
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:
Redundancy Patch: db Andrew Johnson
- Next:
Re: Redundancy Patch: db Liu, Gongfa
- Index:
2002
2003
2004
2005
2006
<2007>
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
|