1 / 36

GSI Operating Software – Migration OpenVMS to Linux

GSI Operating Software – Migration OpenVMS to Linux. Ralf Huhmann PCaPAC 2008 October 20, 2008. Migration OpenVMS to Linux. Motivation Present Situation Migration Aims Details of Porting Conclusions. GSI Accelerator Facilities. Java based Software Architecture for FAIR controls.

swann
Download Presentation

GSI Operating Software – Migration OpenVMS to Linux

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. GSI Operating Software – Migration OpenVMS to Linux Ralf Huhmann PCaPAC 2008October 20, 2008

  2. Migration OpenVMS to Linux • Motivation • Present Situation • Migration Aims • Details of Porting • Conclusions

  3. GSI Accelerator Facilities

  4. Java based Software Architecture for FAIR controls To be integrated into FAIR controls GSI Accelerator Facilities + FAIR

  5. Migration OpenVMS to Linux • Motivation • Present Situation • Migration Aims • Details of Porting • Conclusions

  6. Present Situation • Hardware: Cluster of DEC-Alphas (Hewlett-Packard) • OS: OpenVMS 8.3 • Distributed Client-Server Architecture • User-Interface: X11/Motif-based, Hardware Display and Control Units (Knobs, Key, LED) • Database: Oracle 10g on Linux-Cluster (migrated from Oracle RDB on OpenVMS) • Code base: DEC-F77 (F90, F95, 2million lines of code)

  7. GSI Main Control Room Migration to Linux Operating Software on VMS/X11 • to enable integration into FAIR controls • to protect investment (source code)

  8. X11/Motif Control- Units SMG GSI-APIs DEC-Fortran Applications Device- Access GSI-APIs VMS-System-API VMS based Application Software Oracle DB

  9. Migration OpenVMS to Linux • Motivation • Present Situation • Migration Aims • Details of Porting • Conclusions

  10. Migration Aims • Integration to FAIR Controls (Java Environment) • Native Unix/Linux Run-Time Environment • Porting of current VMS-Applications with minimal source-modification

  11. Migration OpenVMS to Linux • Motivation • Present Situation • Migration Aims • Details of Porting • Conclusions

  12. Details of Porting • DEC-Fortran Extensions • VMS System API • X11 / Motif • GSI specific APIs • Connectivity to new Java Applications

  13. DEC Fortran77 Extensions • Type definitions: STRUCTURE • built-in-functions: %LOC(), %REF(), %VAL() • Compiler Directives: cDEC • ... Covered either by • Intel Fortran Compiler or • to be replaced by suitable Fortran90 constructs

  14. Details of Porting • DEC-Fortran Extensions • VMS System API • X11 / Motif • GSI specific APIs • Connectivity to new Java Applications

  15. VMS-System API and -Runtime Library • Non POSIX • System API to support event driven architectures • Fortran Utility Libraries • Commercial Products: inadequate implementation in detail or lacking support GSI In-house-library and Tools support • Events • Timer • Global Section • Message Compiler • ...

  16. Fortran Interface: Subset of VMS’ SYS$, LIB$, STR$, .. C Library: Abstraction Layer for Events, Timer, Multiplexed I/O, IPC, SHM, Threads, Logging, ... “VMS-API” Architecture on Linux vx ix libc POSIX SYSV Subset of VMS-API implemented by an emulation library

  17. Details of Porting • DEC-Fortran Extensions • VMS System API • X11 / Motif • GSI specific APIs • Connectivity to new Java Applications

  18. X11 / Motif • Porting Fortran-X11-Programs using VMS-Fortran-X-lib: Wrapper functions to Linux X11 Library • Porting Fortran-Motif-Programs using VMS-Motif-Library: Same C-API • But porting software using Motif-XtAppMainLoop()/XtAppAddInput() framework: VMS-specific feature handled in a special GSI-in-house-library

  19. Example: Motif-Program on VMS/X11/DECwindows

  20. Same Program on Linux/X11/KDE Done with minor code changes

  21. Details of Porting • DEC-Fortran Extensions • VMS System API • X11 / Motif • GSI specific APIs • Connectivity to new Java Applications

  22. GSI specific APIs Example: GSI-API for Inter Process Communication • Written in Modula-2 • Transfers binary data between programs • VMS-Events • VMS-Mailboxes • Communication Server • Raw Ethernet Protocol

  23. App2 App5 App3 App6 App1 App4 IPC Architecture (VMS) VMS-Mailbox VMS Host 1 VMS Host 2 IPC-API Communication-Server Communication-Server Ethernet

  24. App1 App4 App5 App2 App3 IPC by TCP/IP peer-to-peer network Linux Host 1 Linux Host 2 TCP/IP Registration-Service (Broker) to map Process-Name to Host/Port

  25. IPC Registration Service (Broker)

  26. GSI specific APIs • Another example: device access Part of our front end renovation project, see “Integration of a Renovated Networking Middleware into a Running Control System Environment” by Udo Krause, PCaPAC 20.10.2008

  27. Details of Porting • DEC-Fortran Extensions • VMS System API • X11 / Motif • GSI specific APIs • Connectivity to new Java Applications

  28. Connectivity to Java Applications • Constraints: • Minimal source code modification for existing Fortran Applications • Flexible data structures • Simple and generic interface to avoid API adaptations Solution: Universal Value Architecture (UV)

  29. Fortran Application uv xfer UV-Client ... Java TCP/IP UV (Universal Value Architecture) • File Properties: • Name • Value • Timestamp • .... UV-Server - Read Tree - Nodes addressed by path - Subscribe for Changes - Set Values

  30. Example: Browser as UV-Java Client

  31. UV-Java Client • A Java Client can survey and modify any set of values presented by the ported VMS software • Values can be handled in a single tree • Tree structure can be changed at run-time

  32. Details of Porting • DEC-Fortran Extensions • VMS System API • X11 / Motif • GSI specific APIs • Connectivity to new Java Applications

  33. Migration OpenVMS to Linux • Motivation • Present Situation • Migration Aims • Details of Porting • Conclusions

  34. Conclusions and Outlook • Proof of concept (minimal source modification, Java integration) • Libraries and Tools build solid basis for migration • Further efforts will be made to integrate into FAIR controls

  35. Thank you!

  36. GSI Operating Software – Migration OpenVMS to Linux • FINE

More Related