Table of Contents Previous Chapter Chapter 2: EPICS Introduction

Chapter 2: EPICS Introduction

1. The EPICS Release

An EPICS "release" is defined as a Tar file that contains the source code for EPICS base along with a set of configuration files (called "config") for building base and extensions. Since base and config are distributed in the same Tar file, the current EPICS revision number is associated with both of these directories.

The EPICS release number consists of a major, minor, and bug fix release number. In EPICS R3.12, for example, 3 is the major release number and 12 is the minor release number. Bug fix releases would be named R3.12.1, etc. A change in the major release number indicates a change in the channel access protocol, whereas a change in the minor release number indicates a minor change, such as an improvement to database processing. Since the channel access protocol does not change very often, it is usually possible to use older versions of unbundled extension software against newer versions of base and config. This is not always guaranteed, however.

Extension developers must provide release notes that indicate which versions of EPICS base their products are compatible with.

2. EPICS Base

EPICS base contains the following UNIX and VxWorks components:

3. EPICS Extensions

An EPICS extension may be obtained from the site that developed it. Here is a partial list of extensions and where to obtain them:

4. Who to Blame

Jim Kowalkowski (ANL) and John Winans (ANL) developed the first set of config files to replace the original imake files. This first set provided support to build extension products for a single architecture. Janet Anderson (ANL) took over this responsibility and, working with the various tools developers, unbundled the tools that now reside in extensions (the original version used the term add_on products rather than extensions).

Matthew Needes (LANL) and Mike Bordua (LBL) then completely revised the config files in order to address portability concerns and support multiple architectures simultaneously in EPICS base. In addition they took time to greatly simplify the structure of individual makefiles as well as make them more consistent. The configuration files now support single host and multiple target architectures simultaneously. Janet Anderson made further changes to fix what Matt Needes broke in the extensions. She added support for make depends and added refinements to the make environment.

Matt Bickley and Johnny Tang of CEBAF developed the HP architecture specific config files. In addition, Pratik Gupta (CEBAF) made extensive changes in the source code, increasing its portability. Mark Anderson (ANL) developed DEC alpha/OSF configuration files.

Table of Contents Next Chapter