EPICS Controls 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  2020  2021  2022  2023  2024  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  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Build failure under QNX 6.1
From: David Eisert <[email protected]>
To: David Dudley <[email protected]>, [email protected]
Date: Fri, 08 Sep 2006 17:12:25 -0500
David Dudley wrote:
Is QNX closer to Linux, or to BSD or Solaris?

In working on the NetBSD port, I started with the Solaris port, since NetBSD is a derivative of BSD4.4, which Solaris is also (distant relative, I understand). Linux is fairly close, but not as close.

David Dudley

Sorry my knowledge of Unix is limited. But QNX was developed as a MS-DOS competitor in the early '80s. It didn't quite reach mainstream so they focused on the RTOS market. The original developers/owners got bought out recently by Harman (automotive parts company) for $138 million in cash. Their marketing focus has changed a little and they a racking up big contracts for in car entertainment systems. They haven't made major changes to the system that would prevent its use for the more general purpose RTOS buyers. So the automotive focus may help the product overall. The kernel is very unique and I wouldn't think it could be described as a derivative of any prior Unix. If you can ask a more specific question to help determine its linage I would be happy to check it out. You can also download an evaluation copy from QNX. It's the full blown version that runs for 30 days.


The advantage of QNX is its modular architecture. All driver modules are reloadable on the running system. Most of my drivers are 1-2k lines of code and they all run in their own address space. If one crashes the other drivers continue to run. I replace my network interface driver with updated versions by just telneting into the system and writing the new version to the CF card. I can reload I/O board drivers without dumping the stored beam. When I run the new driver, it passes a message to the old driver asking for some driver specific data. It grabs the data, tells the old driver to kill itself (releasing IRQs) and then
fires itself up. Its down for only a few milliseconds and most of our slower feedback systems never see a problem. Of course, I don't do this every day but it is really impressive when you come from the single executing image all running in the same address space. This modularity should allow me to run a copy of EPICS base with a small driver that can pass messages to my existing drivers. Both of them should be able to play nice together while I make changes to other code.


Dave



References:
Re: Build failure under QNX 6.1 David Dudley

Navigate by Date:
Prev: Re: EPICS source Documentation Andrew Johnson
Next: EPICS: Visualization 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  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Build failure under QNX 6.1 David Dudley
Next: Looking for an IOC for Wiener PL512 Bertrand H.J. Biritz
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  2020  2021  2022  2023  2024 
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 ·