Evolution of EPICS Core
From EPICSWIKI
Revision as of 23:55, 10 May 2005 by JeffHill (talk | contribs) (→'''V???? – Resource Consumption Quotas''')
V4 – Executive Summary
- Provide online add/delete of I/O to support continuous operation.
- Provide redundant control of remote I/O to support improved reliability.
- Provide name introspection and domain control in support of seamless *integration of large control systems
- Provide triggers, filters, and rate limits to improve resource use of network and client side processing
- Provide hierarchical devices to support higher level view of application in the front-end processors.
- Provide automatic backup and restore to support bump-less reboot and synchronization of redundant controllers.
- Provide atomic read, write, and write with read-back to multiple channels to support synchronized access of arbitrary sets of channels.
- Support international users with uni-code and time.
- Remove limitations on string lengths, device states, number of input links to support arbitrary sizes.
- Internationalize Time Stamps
V4 – Structure and Array Support
- Allows definition and access to complex devices and multi-dimensional arrays
- Name hierarchy in Channel Access
- <arbitrary string>.structure. Element[n]
- e.g. Arc3PwrSupply.readback.status, ArcPwrSupply.readback.value
- Device description in database
- Support arbitrary number of inputs to calculations and subroutines.
- Support multi-state devices of an arbitrary number of states
V4 – Data Acquisition Capabilities
- New subscription parameters
- Rate limit
- Value changes (as before but also % change)
- Triggers
- Filters
- Examples
- Send BPM at 1 Hz (where 1 Hz across IOCs is the same)
- Send BPM when trigger specifies that this pulse is e-
- Send RF reading when filter says that vacuum is higher than 10e-6 torr
- Allows more accurate requests for data on client applications
- Reduces the amount of network and client CPU usage
- Specify priority for circuit - QOS
V4 – Device Read/Write Operations
- Allows multiple fields to be read/written as an atomic operation
- Reads/Writes can be triggered
- e.g. Put( Corr1.K, Corr2.K, Corr3.K, on trigger event)
- All puts take place when the trigger event occurs
- Write with return data support (Command/Response)
- Ramping/arb function outputs – given two end points
V4 – Name Resolution Extensions
- Allow wildcard searches
- Allow request to send all names supported in the IOC
- Support redundancy by allowing connections to specify that they are not active
- Support multiple name servers by allowing connections to specify how close to the source they are.
- Name aliasing supported.
V4 – Online Add / Delete
- Support hardware address change during operation
- Allow new record instances to be loaded at any time
- Support addition of hardware of an already supported type (64x)
- Support addition of new hardware during operation.
- Remove records during operation.
V4 – Redundancy: Multiple masters of remote I/O
- Support name responses from multiple controllers of the same database.
- Support request for all fields from a primary database to its backup.
- Support a request for all fields that have changed since the last synchronization of the backup to the primary.
- Support a mechanism for switching from the primary to the backup.
- Provide a mechanism for synchronizing primary and the backup.
- Support multiple communication paths that provide
- an isolated network for synchronization traffic
- redundant checks to synchronize switch over behavior.
- Provide a mechanism to start/stop scanning
- Provide a mechanism to start/stop sequences
- Provide a mechanism to start/stop drivers from scanning
V4 – Support Large / Multi-segmented Control System
- Support load balancing between multiple data sources (1st order gateway, 2nd order gateway, IOC, and load).
- Support domain control independent of network topology
- Beamline data is not available to the control room
- Only insertion gap and beam quality information is available to the beamline controls from the ring control room.
V4 – Extendable Metadata / Properties
- Metadata can be extendable –
- Add array dimensions
- Add time base to an array
- Application programmers can add metadata
- Specify metadata by field rather than record
- Only get metadata when it is meaningful
- No display limits for the high display limit
- Calc and subroutine records have arrays of inputs
- No limit to the number of variables
V4 – Channel Access Diagnostics
- Server Diagnostics
- Connections
- Channels
- Events per second
- State of Health
- Beacon Periodicity
- Etc…
- Client Diagnostics
- Number of connections/server per client
- Number of channels
- Events per second
- State of connection
- Etc…..
V4 – Limitations Remediation
- Multi-line text
- Variable length strings
- Removes current limitations of 40 characters
- Reduces size of memory use in most cases
- Reduces network traffic in most cases
- Unicode
- Support alternate character sets
- Multidimensional arrays
- Variable size arrays
V4 – Time Stamp Internationalization
- Support ISO 8601 Format
- Year-month-date-hours-minutes-seconds-fractional seconds
- Country specific time stamps
- Support Locale Settings for conversions
- ,02 as 2 hundreds of a second
V???? – Avccess Security Upgrades
- Kerberos style authentication
- User specific CA client resource consumption quotas in access security system
- Confirmation requested hint (no mods w/o poping an are-you-sure dialog box)