Disk Layout/Productization Proposal Ron Rechenmacher and Geoff Savage.

Slides:



Advertisements
Similar presentations
05/11/2001 CPT week Natalia Ratnikova, FNAL 1 Software Distribution in CMS Distribution unitFormContent Version of SCRAM managed project.
Advertisements

1 1999/Ph 514: Working With an IOC EPICS Working with an IOC Marty Kraimer APS.
1 1999/Ph 514: Channel Access Concepts EPICS Channel Access Concepts Bob Dalesio LANL.
EPICS Noboru Yaamamoto Jan 27, 2009 for EPICS seminar at RRCAT, Indore Installing EPICS.
LINUX-WINDOWS INTERACTION. One software allowing interaction between Linux and Windows is WINE. Wine allows Linux users to load Windows programs while.
Finding, Deploying and Managing EPICS Support Modules Andrew Johnson Computer Scientist, AES Controls.
Server-Side vs. Client-Side Scripting Languages
Pete Owens MICE Controls & Monitoring Workshop 25th September 2006 MICE Control and Monitoring: General Architecture Subsystem Integration User Interface.
Source Code Version Management and Configuration Control Art Amezcua Status 11/5/2007.
Low level CASE: Source Code Management. Source Code Management  Also known as Configuration Management  Source Code Managers are tools that: –Archive.
Systems Architecture, Fourth Edition1 Internet and Distributed Application Services Chapter 13.
Packaging of EPICS-basedControl System Software
Source Control Repositories for Enabling Team Working Svetlin Nakov Telerik Corporation
–Streamline / organize Improve readability of code Decrease code volume/line count Simplify mechanisms Improve maintainability & clarity Decrease development.
Julie McEnery1 Installing the ScienceTools The release manager automatically compiles each release of the Science Tools, it creates a set of wrapper scripts.
Linux Operations and Administration
Introduction to The Linaro Toolchain Embedded Processors Training Multicore Software Applications Literature Number: SPRPXXX 1.
1 Introduction to Tool chains. 2 Tool chain for the Sitara Family (but it is true for other ARM based devices as well) A tool chain is a collection of.
Input/Output Controller (IOC) Overview Andrew Johnson Computer Scientist, AES Controls Group.
Module - Technical Basics
Selected Topics in Software Computing Distributed Software Development CVSQL Final Project Presentation.
EPICS and EDM Overview 03 October 2008 Matt Boyes EPICS and EDM Overview Lecture 1 Matt Boyes.
Co-allocation Using HARC IV. ResourceManagers HARC Workshop University of Manchester.
SchwartzGBIF Nodes III29 April 2003 DiGIR Portal Installation And Configuration.
1 Lecture 19 Configuration Management Software Engineering.
ICS – Software Engineering Group 1 Cross Compiling vxWorks on Linux EPICS Collaboration Meeting l May 2002 at BESSY, Germany May 2002 at BESSY,
IBM OmniFind Enterprise Edition V9.1 – July 2010 Data Source – FileNet P8 crawler overview  Key features: –Access to FileNet P8 Content Engine by using.
Configuration Management Geant4 Review 19 June 2001 Gunter Folger.
Tutorial build Main ideas –Reuse as much previously obtained configuration information as possible: from Babel, cca-spec-babel, etc. –Extract all irrelevant.
A U.S. Department of Energy Office of Science Laboratory Operated by The University of Chicago Argonne National Laboratory Office of Science U.S. Department.
Running EPICS on NI CompactRIO Initial Experience Eric Björklund (LA-UR )
Making LabVIEW look like an IOC Kay-Uwe Kasemir, LANL May 2002.
ATCA based LLRF system design review DESY Control servers for ATCA based LLRF system Piotr Pucyk - DESY, Warsaw University of Technology Jaroslaw.
The report on the current situation of the BESIII framework zhangxiaomei maqiumei 10/3/2004.
NA-MIC National Alliance for Medical Image Computing Slicer Building and Deployment Steve Pieper, PhD.
CVS – concurrent versions system Network Management Workshop intERlab at AIT Thailand March 11-15, 2008.
1 1999/Ph 514: IOC Development Environment EPICS IOC Development Environment Marty Kraimer APS.
Linux Introduction What is Linux? How do you use it?
Final Review of ITER PBS 45 CODAC – PART 1 – 14 th, 15 th and 16 th of January CadarachePage 1 FINAL DESIGN REVIEW OF ITER PBS 45 CODAC – PART 1.
Manage Directories and Files in Linux. 2 Objectives Understand the Filesystem Hierarchy Standard (FHS) Identify File Types in the Linux System Change.
Processes Introduction to Operating Systems: Module 3.
Integrating EPICS and LabVIEW on Windows using DCOM Freddie Akeroyd ISIS Computing Group.
National Center for Supercomputing ApplicationsNational Computational Science Grid Packaging Technology Technical Talk University of Wisconsin Condor/GPT.
EPICS Application Development At The Canadian Light Source Glen Wright.
Apr. 8, 2002Calibration Database Browser Workshop1 Database Access Using D0OM H. Greenlee Calibration Database Browser Workshop Apr. 8, 2002.
Solve problem of integrating other control systems Solve problem of extending our control system Minimize the latency for data Minimize the implementation.
Plug-in Architectures Presented by Truc Nguyen. What’s a plug-in? “a type of program that tightly integrates with a larger application to add a special.
Connecting LabVIEW to EPICS network
Jan Hatje, DESY CSS – Control System Studio EPICS collaboration meeting CSS – Control System Studio Update EPICS collaboration meeting 2008 Shanghai.
Yannick Patois - Datagrid Software Repository Presentation - March, n° 1 Datagrid Software Repository Presentation CVS, packages and automatic.
Linux Operations and Administration
Slide 1 Running NEMO at ECMWF Slide 1 NEMO under Perforce at ECMWF Kristian S. Mogensen Last revised:
EPICS Noboru Yaamamoto July 11, 2006 for EPICS seminar at VECC,Kolkata Installing EPICS.
1 Channel Access Concepts – IHEP EPICS Training – K.F – Aug EPICS Channel Access Concepts Kazuro Furukawa, KEK (Bob Dalesio, LANL)
Design and implementation Chapter 7 – Lecture 1. Design and implementation Software design and implementation is the stage in the software engineering.
Overview of Windows Driver Development Reference: us/gstart/hh/gstart/gs_intro_031j.asp.
Disk Layout/Productization Proposal Ron Rechenmacher and Geoff Savage.
Control System Overview J. Frederick Bartlett Fermilab June 1,1999.
 Project Team: Suzana Vaserman David Fleish Moran Zafir Tzvika Stein  Academic adviser: Dr. Mayer Goldberg  Technical adviser: Mr. Guy Wiener.
C Copyright © 2006, Oracle. All rights reserved. Oracle Secure Backup Additional Installation Topics.
Monitoring Dynamic IOC Installations Using the alive Record Dohn Arms Beamline Controls & Data Acquisition Group Advanced Photon Source.
Using COTS Hardware with EPICS Through LabVIEW – A Status Report EPICS Collaboration Meeting Fall 2011.
EPIC S Noboru Yaamamoto July 11, 2006 for EPICS seminar at VECC,Kolkata Installing EPICS.
Stephanie Allison Software Mar 2, 2006 IOC Applications Host Applications Directory Structure Environment Setup Issues.
EIN 6133 Enterprise Engineering
Using DataStore Plus ActiveX in FactoryTalk View Studio ME Projects
Chapter 15: File System Internals
Channel Access Concepts
EPICS: Experimental Physics and Industrial Control System
Web Servers (IIS and Apache)
Presentation transcript:

Disk Layout/Productization Proposal Ron Rechenmacher and Geoff Savage

9 Apr 2007Software Productization2 Goals Flexibility - environment variables Organization – EPICS and DOOCS (and Everything) –Development –Production –Distribution –Configuration –Complete example Methodology - a set or system of methods, principles, and rules for regulating a given discipline, as in the arts or sciences –CVS –UPS –Scripts –make –Native (EPICS and DOOCS) build systems

9 Apr 2007Software Productization3 “Epics will be built the Fermi way - ie no hard coded paths.” Use environment variables set via UPS in EPICS and DOOCS build systems to locate components.

9 Apr 2007Software Productization4 Environment Variables “A set of dynamic values that can affect the way running processes will behave on a computer” - Wikipedia –In our case we want to change locations of components Example: –Change header in EPICS base for doocs2epics –Edit configure/RELEASE –What if change in EPICS base for all components? –How do we trigger the rebuild of all components? Debated EPICS issue – disagreement –Some flexibility exists without Environment Variables (flexibility has value) –Many years CD/elsewhere experience –Basic UNIX (along with symlinks) Similar to logicals from VMS; should not be too surprising

9 Apr 2007Software Productization5 UPS Unix Product Support savage]$ setup epics savage]$ printenv | grep EPICS EPICS_DIR=/p/epics/v3_14_8_f2 EPICS_LIB_DIR=/p/epics/v3_14_8_f2/lib/linux-x86 EPICS_HOST_ARCH=linux-x86 SETUP_EPICS=epics v3_14_8_f2 -f Linux -z /p

9 Apr 2007Software Productization6 …/base/configure /ups /extensions/configure /src/alh /edm /ups /support/genSub/configure /ups /sequencer/configure /ups Makefile …/vxWorksIoc/configure /ups /plcIoc/configure /ups Makefile /p/epics/v1 /p/epics/v2 /p/epics/v3 /p/epics_iocs/v1 /p/epics_iocs/v2 /p/epics_iocs/v3 In cvs epics/epics In cvs epics/epics_ioc

9 Apr 2007Software Productization7 Controls System Components EPICSDOOCS Contents base Serverlib, Clientlib, ENS Engine, Protocol supportSupport libs Sequencer, VME access, field bus, … iocServers Applications extensionsClients Display manager Configuration vxworks ConfigurationDifference: vxworks

9 Apr 2007Software Productization8 Doocs/Linux/SunOS_compat /build_tools /clients/cmdline /ddd /rpc_util /save_restore /doc /ens /iid /libs/ lib /clientlib /dddlib /fsmlib /serverlib /servers/bpm /ip177timer /multiknob /simcon Makefile /ups Doocs_ilcta/ddd_panels /eq_conf driver stuff vhdl interface fieldbus libraries Display Sequencer Displays server config

9 Apr 2007Software Productization9 …/base/configure /ups /extensions/configure /src/alh /edm /ups /support/genSub/configure /ups /sequencer/configure /ups Makefile …/iocs… /p/epics/v1 /p/epics/v2 /p/epics/v3 The RELEASE file in the configure directory specifies the locations of external software modules, an example is EPICS base. Each version is tagged in CVS. extensions = CA client applications ioc = user application, CA server support = libraries used in ioc base = engine, CA protocol

9 Apr 2007Software Productization10 Installations Installation CVS Module Development Directory Make installs libraries, executables, headers Tar -> Untar Production Directory Distribution Directory cvs export (no CVS directories) cvs checkout (CVS directories) Configuration CVS Module Configuration Directory ups table file specifies version to use cvs checkout Make Make?

9 Apr 2007Software Productization11 Development Installation CVS Module Development Directory Make installs libraries, executables, headers cvs checkout New Component Set an environment variable to point to the new location.

9 Apr 2007Software Productization12 Decisions and Discoveries Logging of build configurations –Makefile in ups directory (not tried yet) What scripts are necessary? –Epics_hard_coded_path.sh (not coded yet) –Ups_dir_init.sh (not coded yet) How many configuration CVS modules? –One for each area –Example: a0/server module What should our Makefiles do? –Make help –Make local_install –Make prod_install –Note: Config is separate

9 Apr 2007Software Productization13 Decisions and Discoveries How to install UPS directories? –Script needed Using CVS –Install starting version into cvs with import Cvs import –m’initial’ epics/ioc/plc INITIAL vX_Y other epics/epics/extensions/…. –Install new version with commit after installing on top of the previous version Cvs ci –m’comment’ –Cvs tag vs cvs rtag --- use cvs tag. 3rd party products –???

9 Apr 2007Software Productization14 Other Technical Issues (and non-issues) Host architecture isn’t enough –Unless always build on “oldest” distribution –Compatibility libraries Dependency conflicts –Each release version will not have all product versions 3 rd party libraries and products: –National Instruments (GPIB) (LD_LIBRARY_PATH *) Note difference from labview product: non-licensed (free) –matlab interface - (MATLABPATH *) –labview interface (?) * Does not have to be installed into installation directory – non-issue

9 Apr 2007Software Productization15 Time Marches On … Develop and install –Documentation, makefiles, UPS files, Scripts –For EPICS: perl script “Estimate of 80 hours of an FTE” –One meeting, 12 people * 0.25 hr = 3 hrs –Ron and Geoff meeting * 6 hrs = 12 hrs And some coffee and doughnuts –Ron for 20 hrs –This talk - 6 hrs and counting –This meeting 10 people * 0.5 hr = 5 hr

9 Apr 2007Software Productization16 New Discoveries “setup” seems to be working Need system startup –Component startup Doocs watchdog server suggested Vxworks_boot as install area –Same as /p except under /home/vxworks_boot /home/vxworks/p/kekbpm