Difference between revisions of "Evolution of EPICS Core"

From EPICSWIKI
Line 119: Line 119:
**,02 as 2 hundreds of a second
**,02 as 2 hundreds of a second


=='''V???? – Resource Consumption Quotas'''==
=='''V???? – Avccess Security Upgrades'''==
*Kerberos style authentication
*User specific CA client resource consumption quotas in access security system
*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)

Revision as of 23:55, 10 May 2005

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)