Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019 
<== Date ==> <== Thread ==>

Subject: Re: Porting EPICS to NetBSD
From: Eric Norum <norume@aps.anl.gov>
To: David Dudley <DavidDu@cctexas.com>
Cc: tech-talk@aps.anl.gov
Date: Wed, 16 Aug 2006 13:20:24 -0500
On Aug 15, 2006, at 11:08 AM, David Dudley wrote:

I have a future requirement for replacing/ upgrading our SCADA system.

The current system we are using, which is based on National Instruments Lookout has proven in the past three years to be basically useless, temperamental, unreliable, and relatively impossible to expand to include all of the capabilities we are looking for.

I've been looking around for a while, and ran across EPICS.  What I read is really impressive.  This sounds like a system I could learn to even "enjoy" working with.

Now for a question or two.  In order to expand our system sufficiently, it would be extremely helpful to port the EPICS system to NetBSD, which we can run on the PLC systems we have installed in the field.

These systems have  a 256MB Compact Flash Memory card for program storage, and 128MB of memory to operate with.  Putting Linux on them is a waste, because even if I can find the proper support for all the specialized hardware, by the time I get it all installed, I have very little Flash left for storage, and forget it if you want to run a reasonably large program.  Also, the Linux I have managed to squeeze into this system didn't exactly like not having a swap disk.

NetBSD is much faster on this hardware, and uses only a small portion of the memory space available.

NetBSD is fairly close in concept to Solaris, I believe (its a port of BSD4.4).

Is there anything available that provides any documentation on how to port EPICS to a new architecture?

We run EPICS on Linux on diskless machines with as little as 32 MB of RAM so the footprint can be made pretty small.
Having said that, though, I would expect that rebuilding EPICS base on NetBSD would be very little different than building it on Linux or Mac OS X.  As a quick first check you could just set the EPICS_HOST_ARCH environment variable to linux-x86 and then run 'make' in the top directory of the EPICS  base distribution.   

The Mac OS X version of EPICS has only four files different than the Linux version.  In fact, the OS X versions of these files might be all you'd need.

To add support for a new architecture you need to:
1) Create a new directory in src/libCom/osi/os to hold your architecture-specific files.
2) Go into the configure/os directory and add configuration files for your architecture.  Again, you might want to start with the three OS X files: CONFIG.Common.darwin-ppcx86, CONFIG_SITE.darwin-ppcx86.Common and CONFIG.darwin-ppcx86.Common.
3) Set the EPICS_HOST_ARCH environment variable to match the names you gave to the configuration files.


-- 
Eric Norum <norume@aps.anl.gov>
Advanced Photon Source
Argonne National Laboratory
(630) 252-4793



References:
Porting EPICS to NetBSD David Dudley

Navigate by Date:
Prev: Re: Porting EPICS to NetBSD David Dudley
Next: Re: Porting EPICS to NetBSD David Dudley
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019 
Navigate by Thread:
Prev: RE: Porting EPICS to NetBSD Allison, Stephanie
Next: Re: Porting EPICS to NetBSD David Dudley
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  <20062007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019 
ANJ, 02 Sep 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·