EPICS Base 3 13 and 3 14 Status
EPICS Base 3. 13 and 3. 14 Status and License IHEP August 2002 Marty Kraimer and Andrew Johnson 1
EPICS u Latest release is 3. 13. 7 u u EPICS Base 3. 13 Only available via the new EPICS base License Some bug fixes A few minor enhancements Future 3. 13 releases u Only bug fixes and minor enhancements 2
EPICS u Release 3. 14. 0 beta 2 is the latest release u u u EPICS Base 3. 14 Only available via the new EPICS base License Many bug fixes since beta 1 Some enhancements Should be much more stable than beta 1 Future 3. 14 releases u u u Major emphasis is stability Only minor enhancements Major changes will go into 3. 15 3. 14 releases should be more frequent. Should be ready soon to release 3. 14. 1 3
EPICS u Main Goal for 3. 14 – Port ioc. Core u u u u u Base 3. 14 Overview vx. Works – 5. 4 (Tornado 2) required RTEMS – Open Source Real Time Operating System Solaris – Solaris 6 and Solaris 8 tested Linux – Redhat 6. 1, 6. 2, 7. 0, 7. 1, 7. 2 tested Win 32 – NT tested Darwin – Open Source for Mac OSX HPUX - Soon Marty Kraimer, Jeff Hill, Janet Anderson, Eric Norum, and Ralph Lange primary developers. Hardware Support u u u vx. Works support unbundled Some for RTEMS Requires major changes for Unix, Linux, win 32 4
EPICS u Base 3. 14 Overview Support for other platforms u HPUX SOON!!! u u Main Porting Problem is multithreading u u u Versions before 11 do not properly support pthreads Support will require version 11 BESSY (Ralph Lange) is working on the port. Ready soon (R 3. 14. 1). Good support for pthreads OR Threads support for implementing epics. Thread, epics. Mutex, and epics. Event Multithreading now required u u ioc. Core is intrinsically multithreaded CA is also multithreaded but transparent to existing applications. 5
EPICS u Epics Base Release 3. 14 Status Supporting many platforms is a challenge u u u Each platform has many versions Many versions of G++ C++ is particular challenge u u Most implementations still don’t fully support standard especially C++ library. Implementations still immature but getting better. Status u u Second beta release is now available. Ready for test stands, commissioning, etc. Operational systems should still wait. I have tested vx. Works Test stand with many VME I/O modules Encourage users to try Win 32, Solaris, Linux, RTEMS, Darwin. Killer Applications: Sequencer and LAN Gpib 6
EPICS u Sequencer u u Epics Base Release 3. 14 Status Eric Norum & Marty Kraimer started with latest SLAC version Has been tested on all supported beta 1 platforms SLAC has taken back responsibility (Michael Laznovsky) GPIB: HP 2050 LAN Gpib u u Eric Norum & Marty Kraimer started with latest BESSY release. Has been tested on all but win. NT and Darwin. NI 1014, bitbus and bitbus gpib supported only on vx. Works BESSY is again responsible for GPIB (Benjamin Franksen). 7
EPICS u Epics Base Release 3. 14 Status Additional Features for 3. 14 u Large Arrays – available in beta 1 u u u Multipriority CA servers – available in beta 1 u u St. cmd command: rsrv. Config(bufsize, maxbufs) Transparent to existing clients but must be relinked Purpose is ease of use not performance In next release PCAS will also support large arrays. Client must request, i. e. not transparent to existing clients. Provides incremential improvement for performance degradatation. Purpose is to allow inter IOC communication to have higher priority than other clients. No other new features for 3. 14 Testing -One test still fails. It is a very tough test. 8
EPICS u u u u License Overview Old License Agreement Replacing the Old License New EPICS Base License Current Status of Base EPICS Open License Other Licenses Copyleft Licenses 9
EPICS u u u Old License Agreement EPICS was provided for “research, development, evaluation and demonstration purposes only” No royalties were charged because of “the collaborative nature” of the agreement EPICS was “loaned” to other collaborators, and must be returned or destroyed on termination of the agreement. All enhancements must be made available to LANL for royalty-free distribution to other EPICS users Licensees are not allowed to distribute EPICS to other sites without further written permission 10
EPICS u u Commercial licenses for EPICS ran out in 1998/99 Several false starts have occurred since then to try to make EPICS available under an Open Source license The last attempt revealed that EPICS has been given an Export Control Classification Number EAR 99 Until/unless that is removed, EPICS Base cannot be released using a true Open Source license u u u Replacing the Old License Export regulations require ANL to ensure that no recipients are on the US government’s lists of Denied Persons or Entities Any license used must be acceptable to Do. E Getting the EAR 99 classification removed could take some time, and there is no guarantee it will be allowed 11
EPICS u EPICS Base License ANL Legal department developed a new license for EPICS Base that meets both Do. E and EAR 99 needs: u u Permits copying and modification with an organization Allows distribution of modified copies outside of the licensee’s organization, but only to other (verified) licensees u u u Verification involves checking the web-published list of licensees, contacting APS only if the destination site is not publicly listed Lists the US Government’s rights to use the software Contains warranty disclaimer and liability limitation clauses 12
EPICS u u u Current Status To change the EPICS Base license, ANL obtained permission to redistribute all code that was written elsewhere A signed ‘Grant of License’ has been received from all sites that contributed code to EPICS Base R 3. 13. 7 and R 3. 14. 0 beta 2 have both been released using the new license. 13
EPICS u The EPICS Open License was derived from the Base License, with the EAR 99 restrictions removed: u u u u EPICS Open License Permits modifications and redistribution of the software Requires the copyright notice and license agreement be retained Requires any modifications made to be marked as such Contains disclaimers that make it acceptable to Do. E APS unbundled support modules and extensions will use the new EPICS open license. Outside collaborators will have to provide a signed ‘Grant of License’. A license may also include additional copyright notices. We can only do this for code written at Argonne Other sites: talk to your management about licensing your locally-produced code, preferably as Open Source 14
EPICS u Other Possible Licenses There are many Open Source licenses available http: //www. opensource. org/licenses/ u Don’t write your own license if you can avoid it u u Your code can only be combined with someone else’s if the two licenses are legally compatible — GPL+NPL=Illegal The legal compatibility of existing Open Source licenses is reasonably well known, but new licenses complicate matters DOE may not accept some Open Source licenses Choose your license carefully (if you have any influence) 15
EPICS u u Copyleft Licenses The GNU LGPL is the best license for advocates of the principles of Free Software who work with EPICS The GNU GPL is incompatible with the Base License u u u An executable or library file containing both GPL code and the Channel Access library cannot be distributed to anyone, and it may be illegal to create such an executable in the first place If you insist on using the GPL, include a statement explicitly permitting your code to be linked with EPICS Base You probably can’t include or link to any other GPL code if you add that exception, unless it already has the same exception 16
- Slides: 16