GSI Operating Software – Migration OpenVMS to Linux
description
Transcript of GSI Operating Software – Migration OpenVMS to Linux
![Page 1: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/1.jpg)
GSI Operating Software – Migration GSI Operating Software – Migration OpenVMS to LinuxOpenVMS to Linux
Ralf Huhmann
PCaPAC 2008
October 20, 2008
![Page 2: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/2.jpg)
October 20, 2008 2
Migration OpenVMS to LinuxMigration OpenVMS to Linux
Motivation
Present Situation
Migration Aims
Details of Porting
Conclusions
![Page 3: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/3.jpg)
October 20, 2008 3
GSI Accelerator FacilitiesGSI Accelerator Facilities
![Page 4: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/4.jpg)
October 20, 2008 4
GSI Accelerator Facilities + FAIRGSI Accelerator Facilities + FAIR
To be integrated
into FAIR controls
Java based
Software
Architecture for
FAIR controls
![Page 5: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/5.jpg)
October 20, 2008 5
Migration OpenVMS to LinuxMigration OpenVMS to Linux
Motivation
Present Situation
Migration Aims
Details of Porting
Conclusions
![Page 6: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/6.jpg)
October 20, 2008 6
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)
Present SituationPresent Situation
![Page 7: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/7.jpg)
October 20, 2008 7
GSI Main Control RoomGSI Main Control Room
Operating Software on VMS/X11Migration to Linux
to enable integration into FAIR controls
to protect investment (source code)
![Page 8: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/8.jpg)
October 20, 2008 8
VMS based Application SoftwareVMS based Application Software
DEC-Fortran Applications
Control-
UnitsSMG
Device-
Access
Oracle
DBVMS-System-API
GSI-APIs
X11/Motif
GSI-APIs
![Page 9: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/9.jpg)
October 20, 2008 9
Migration OpenVMS to LinuxMigration OpenVMS to Linux
Motivation
Present Situation
Migration Aims
Details of Porting
Conclusions
![Page 10: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/10.jpg)
October 20, 2008 11
Migration AimsMigration Aims
Integration to FAIR Controls (Java Environment)
Native Unix/Linux Run-Time Environment
Porting of current VMS-Applications with minimal source-modification
![Page 11: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/11.jpg)
October 20, 2008 12
Migration OpenVMS to LinuxMigration OpenVMS to Linux
Motivation
Present Situation
Migration Aims
Details of Porting
Conclusions
![Page 12: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/12.jpg)
October 20, 2008 13
Details of PortingDetails of Porting
DEC-Fortran Extensions
VMS System API
X11 / Motif
GSI specific APIs
Connectivity to new Java Applications
![Page 13: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/13.jpg)
October 20, 2008 14
DEC Fortran77 ExtensionsDEC Fortran77 Extensions
Type definitions: STRUCTURE built-in-functions: %LOC(), %REF(), %VAL() Compiler Directives: cDEC ...
Covered either by Intel Fortran Compileror to be replaced by suitable Fortran90 constructs
![Page 14: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/14.jpg)
October 20, 2008 15
Details of PortingDetails of Porting
DEC-Fortran Extensions
VMS System API
X11 / Motif
GSI specific APIs
Connectivity to new Java Applications
![Page 15: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/15.jpg)
October 20, 2008 16
VMS-System API and -Runtime LibraryVMS-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 ...
![Page 16: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/16.jpg)
October 20, 2008 17
““VMS-API” Architecture on LinuxVMS-API” Architecture on Linux
Fortran Interface:
Subset of VMS’
SYS$, LIB$, STR$, ..
C Library: Abstraction Layer for
Events, Timer, Multiplexed I/O,
IPC, SHM, Threads, Logging, ...
SYSVPOSIX
ix
vx
libc
Subset of VMS-API implemented by an emulation library
![Page 17: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/17.jpg)
October 20, 2008 18
Details of PortingDetails of Porting
DEC-Fortran Extensions
VMS System API
X11 / Motif
GSI specific APIs
Connectivity to new Java Applications
![Page 18: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/18.jpg)
October 20, 2008 19
X11 / MotifX11 / 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
![Page 19: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/19.jpg)
October 20, 2008 20
Example: Motif-Program on Example: Motif-Program on VMS/X11/DECwindowsVMS/X11/DECwindows
![Page 20: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/20.jpg)
October 20, 2008 21
Done with minor code changes
Same Program on Linux/X11/KDESame Program on Linux/X11/KDE
![Page 21: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/21.jpg)
October 20, 2008 22
Details of PortingDetails of Porting
DEC-Fortran Extensions
VMS System API
X11 / Motif
GSI specific APIs
Connectivity to new Java Applications
![Page 22: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/22.jpg)
October 20, 2008 23
GSI specific APIsGSI 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
![Page 23: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/23.jpg)
October 20, 2008 24
IPC Architecture (VMS) IPC Architecture (VMS)
Ethernet
VMS Host 1 VMS Host 2
App2
App1App3
Communication-Server
IPC-API
VMS-Mailbox
App5
App4App6
Communication-Server
![Page 24: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/24.jpg)
October 20, 2008 25
IPC by TCP/IP peer-to-peer networkIPC by TCP/IP peer-to-peer network
App1App4 App5App2
App3
TCP/IP
Linux Host 1 Linux Host 2
Registration-Service (Broker) to map Process-Name to Host/Port
![Page 25: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/25.jpg)
October 20, 2008 27
IPC Registration Service (Broker)IPC Registration Service (Broker)
![Page 26: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/26.jpg)
October 20, 2008 28
GSI specific APIsGSI 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
![Page 27: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/27.jpg)
October 20, 2008 29
Details of PortingDetails of Porting
DEC-Fortran Extensions
VMS System API
X11 / Motif
GSI specific APIs
Connectivity to new Java Applications
![Page 28: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/28.jpg)
October 20, 2008 30
Connectivity to Java ApplicationsConnectivity 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)
![Page 29: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/29.jpg)
October 20, 2008 31
UV-Client
Java
UV (Universal Value Architecture)UV (Universal Value Architecture)
Fortran
Application
uv
xfer
TCP/IP
...
- Read Tree
- Subscribe for Changes- Set Values
File Properties:- Name- Value- Timestamp- ....
UV-Server
- Nodes addressed by path
![Page 30: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/30.jpg)
October 20, 2008 33
Example: Browser as UV-Java ClientExample: Browser as UV-Java Client
![Page 31: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/31.jpg)
October 20, 2008 34
UV-Java ClientUV-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
![Page 32: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/32.jpg)
October 20, 2008 35
Details of PortingDetails of Porting
DEC-Fortran Extensions
VMS System API
X11 / Motif
GSI specific APIs
Connectivity to new Java Applications
![Page 33: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/33.jpg)
October 20, 2008 36
Migration OpenVMS to LinuxMigration OpenVMS to Linux
Motivation
Present Situation
Migration Aims
Details of Porting
Conclusions
![Page 34: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/34.jpg)
October 20, 2008 37
Conclusions and OutlookConclusions 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
![Page 35: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/35.jpg)
October 20, 2008 38
Thank you!
![Page 36: GSI Operating Software – Migration OpenVMS to Linux](https://reader036.fdocuments.in/reader036/viewer/2022062321/56813a25550346895da202de/html5/thumbnails/36.jpg)
October 20, 2008 39
GSI Operating Software – Migration GSI Operating Software – Migration OpenVMS to LinuxOpenVMS to Linux
FINE