which way to go? Linux or QNX?

Hi all,

We are looking for a RTOS for our new product. After looking at some
commecial RTOSs such as VxWorks, Win CE, QNX, Linux(maybe this is not a real
RTOS), we may go with
Linux or QNX.

Can anybody tell me why you switch from Linux to QNX or
from QNX to Linux?

I am wondering why Bill Gates does not want to adopt some good ideas in
their RTOS!

Jun

“Jun” <jxuhot@hotmail.com> wrote in message news:al8knp$krc$1@inn.qnx.com

Hi all,

We are looking for a RTOS for our new product. After looking at some
commecial RTOSs such as VxWorks, Win CE, QNX, Linux(maybe this is not a
real
RTOS), we may go with
Linux or QNX.

Can anybody tell me why you switch from Linux to QNX or
from QNX to Linux?

I am wondering why Bill Gates does not want to adopt some good ideas in
their RTOS!

I guess because they want to stick with their Win32API which
isn’t real time friendly in the first place.

Jun
\

Jun <jxuhot@hotmail.com> wrote:

Hi all,

We are looking for a RTOS for our new product. After looking at some
commecial RTOSs such as VxWorks, Win CE, QNX, Linux(maybe this is not a real
RTOS), we may go with
Linux or QNX.

Can anybody tell me why you switch from Linux to QNX or
from QNX to Linux?

I am wondering why Bill Gates does not want to adopt some good ideas in
their RTOS!

http://www.dedicated-systems.com/encyc/

They have a QNX 6.2 vs ELDS 1.1 evaluation report. There are numbers
in it, so you can see…

-xtang

Jun wrote:

Hi all,

We are looking for a RTOS for our new product. After looking at some
commecial RTOSs such as VxWorks, Win CE, QNX, Linux(maybe this is not a real
RTOS), we may go with
Linux or QNX.

Can anybody tell me why you switch from Linux to QNX or
from QNX to Linux?

Well, you are asking this in a QNX NG :slight_smile: In all seriousness though;
LinuxRT is a very crude RTOS. In LinuxRT you only have a small API
available to your RT apps (QNX extends the full Posix API to all apps).
If you have very basic real-time requirements (perhaps one module requires
hard real-time capability) LinuxRT might fit the bill, but if you are
doing a complex multi-process real-time application you would spend far
more development dollars getting around Linux limitations, than you would
save by not having to pay for QNX licensing.

Rennie

Hi Jun…

We work with both Linux and QNX, and QNX is by far the more sound choice
worth every dollar that you spend. This is based on a number of years of
work and experience.

Read some of the whitepapers at

http://www.qnx.com/whitepapers/

That should tell you some of the story.

Also, you will hear about availability of drivers, well, it is a trade
off. Linux has lots of drivers that will frustrate you and drive you
crazy when debug time comes around, whereas QNX gives you a superior
-and easier- platform where you can port and debug drivers, and voila.
(we know this by experience in our research). It is a matter of where
you want to spend your time and resources.

Best Regards…

Miguel.


Jun wrote:

Hi all,

We are looking for a RTOS for our new product. After looking at some
commecial RTOSs such as VxWorks, Win CE, QNX, Linux(maybe this is not a real
RTOS), we may go with
Linux or QNX.

Can anybody tell me why you switch from Linux to QNX or
from QNX to Linux?

I am wondering why Bill Gates does not want to adopt some good ideas in
their RTOS!

Jun
\

We went through a similar decision process about a year ago and ended up
with QNX. Here are some of the key decision factors:

  • VxWorks is very expensive to get started with - pretty much disqualified
    it. Furthermore I am not too impressed with its memory model.
  • WinCE does not seem to be a very stable platform. I read some paper where
    the tested the API robustness compared up against Linux, Win2K and Win9x and
    it came out last among those.
  • Linux as RT is very limited in the sense of real-time api. I think in most
    LinuxRT your real-time process runs in its own little real-time area - so I
    don’t think you can use any of the device drivers from there. The device
    drivers written for Linux was not written with real-time considerations
    either. The same goes for RTX for Win2K/WinXP.


    So that leaves you with QNX - the choice is simple.

    Jens


    “Jun” <jxuhot@hotmail.com> wrote in message news:al8knp$krc$1@inn.qnx.com

Hi all,

We are looking for a RTOS for our new product. After looking at some
commecial RTOSs such as VxWorks, Win CE, QNX, Linux(maybe this is not a
real
RTOS), we may go with
Linux or QNX.

Can anybody tell me why you switch from Linux to QNX or
from QNX to Linux?

I am wondering why Bill Gates does not want to adopt some good ideas in
their RTOS!

Jun
\

Thanks!


“Mario Charest” postmaster@127.0.0.1 wrote in message news:al8sff$pfm$1@inn.qnx.com

“Jun” <> jxuhot@hotmail.com> > wrote in message news:al8knp$krc$> 1@inn.qnx.com> …
Hi all,

We are looking for a RTOS for our new product. After looking at some
commecial RTOSs such as VxWorks, Win CE, QNX, Linux(maybe this is not a
real
RTOS), we may go with
Linux or QNX.

Can anybody tell me why you switch from Linux to QNX or
from QNX to Linux?

I am wondering why Bill Gates does not want to adopt some good ideas in
their RTOS!

I guess because they want to stick with their Win32API which
isn’t real time friendly in the first place.


Jun



\

So that leaves you with QNX - the choice is simple.

Ok, but which one? With several years of QNX6 being on the market
can anyone pinpoint the real-life advantages comparing to QNX4.25?

I’ve been working with QNX4.25 for the past two years and I’ve
been playing with QNX6.0.1 for some time. I’m wondering, should
I switch to QNX6 in my real-life projects, and if yes, why?

tia,
dmitri

Alain Magloire wrote:


: who thinks Eclipse is better is only thinking that because they believe
: any IDE is better than no IDE. Since I can still stick with command line
: tools, I will continue to do so.

Your choice, the command line tools will not go away anytime soon.
But the IDE will still improve and provide ergonomic ways to do things
like System Information, Profiling, Tracing, Debuguing etc …
True, the IDE is still young, there is on going work to make it
a first class environment.

I am equally comfortable with the command line or an IDE. Eclipse is
one of the best IDE’s out there (I’ve tried many of them). There is no
question that there will always be something that you can’t do
conveniently in an IDE; but for the things you can do conveniently, you
are more productive (given an equivalent amount of IDE training and
command line training - myth: IDE’s can be learned in a day). Any s/w
engineer worth their salt should be able to use both, and any
development environment worth its salt should provide both.

off topic
Lots of youngster out of school seems to be lost, if they do not have
Windows or visual basic.
/off topic

Yes, and it is this fact, that (IMO) leads to (unfounded) anti-IDE bigotry.

PS: one can only be more productive in Eclipse after it’s loaded :wink:

Robert Krten wrote:

Not only that, but IDEs (and GUIs in general) are impossible to automate.

Impossible is a strong word.

You can’t write a script that moves the mouse, clicks on “File”, pulls down
a menu, and clicks on a selection at 2 am based on a cron script!

Actually, you can (at least on Windows). Rational has a tool called
Visual Test that does exactly that. We use it here and it performs well
for us. Could we theoretically use it to do automated builds ? Yes.
Would it be the easiest and most convenient way to do automated builds ?
No.

This means that for automated build, regression testing, and a host of
other issues (which can be the basis of a flamewar) GUI-based tools
are completely useless.

Again, “completely useless” is a strong phrase. Visual Test is most
definately not “completely useless”.

Hence, we need command lines to be guaranteed
to be around forever.

Forever is a very long time :slight_smile:

Alain Magloire wrote:

Rennie Allen <> rallen@csical.com> > wrote:

Eclipse JDT(Java developement) is probably one of the best out there,
and getting better(see Eclipse-2.0.1).

My experience is with Eclipse 1.0, 2.0, and 2.0.1 when I refer to it’s
capabilities I am refering to the latest and greatest.

: PS: one can only be more productive in Eclipse after it’s loaded > :wink:

:sunglasses:> , touche’!
At this moment, it’s not a priority, maybe the gcj(Gcc Java compiler) will
help in the very long run > :sunglasses:

I leave Eclipse running all the time. The only problem with that, is
the memory usage; but, memories cheap, so I am not suggesting changing
priorities (a complete CDT definately is what I see as the #1 prio).

Rennie

Superior thread and SMP support, better Posix compliance, better development
tools (Eclipse), more hosts (Windows, Solaris, Linux, RTP), more targets
(x86, arm, sh4, xscale, mips, powerpc), better networking support… I’m
sure others could list more yet.

cheers,

Kris

“Dmitri Ivanov” <ivdal@yahoo.com> wrote in message
news:am97s4$1n0$1@inn.qnx.com

So that leaves you with QNX - the choice is simple.

Ok, but which one? With several years of QNX6 being on the market
can anyone pinpoint the real-life advantages comparing to QNX4.25?

I’ve been working with QNX4.25 for the past two years and I’ve
been playing with QNX6.0.1 for some time. I’m wondering, should
I switch to QNX6 in my real-life projects, and if yes, why?

tia,
dmitri

Kris Warkentin wrote:

Superior thread and SMP support, better Posix compliance, better development
tools (Eclipse), more hosts (Windows, Solaris, Linux, RTP), more targets
(x86, arm, sh4, xscale, mips, powerpc), better networking support… I’m
sure others could list more yet.

I was considering holding back my reply to this, but since it IS in the
advocacy group, I just had to reply. :slight_smile:

Superior thread and SMP support.

Given there was only application level threading in QNX4 and no SMP, it
make it easy to be superior.

better Posix compliance

True.

better development tools (Eclipse)

Not in 1000 years. I will give you the gcc route is better only because
of the portability issues, not because it is a better compiler. Anyone
who thinks Eclipse is better is only thinking that because they believe
any IDE is better than no IDE. Since I can still stick with command line
tools, I will continue to do so.

More hosts

One of QNX’s strength (IMHO) has always been self hosting. Since this
is true for both versions, it only matter to those who want to give up
the advantages of self hosting.

more targets

Yes, this is definitely a great advantage. It allows you to postpone
the hardware choice (in some designs) til later in the process, thus
choosing the latest processor, regardless if it was even the same family
that you started with.

better networking support

In that you have a newer tcp stack and support IPv6, true. I am not
convinced you have either the stability or performance that you had in
QNX4. And certainly QNET is no where near as useful in QNX6 as it is in
QNX4.

Other advantages of QNX6 include documented DDK’s and BSP’s. It is very
easy (in relative terms) to bring QNX up on any new board which has
adequate documentation.

On the other hand, QNX6 has neither the stability or performance that we
came to expect with QNX4.

Having said all of that, I have used QNX4 since it was still an alpha
quality product which forced you to reboot back to QNX2 in order to
report bugs and have used QNX6 since it was only Neutrino 1.0. On a day
to day basis, I develop in QNX6 and will continue to do that for any
projects I have a choice over. It has it’s issues, but it is well on
it’s way to be the superior product that QNX4 is.

Rick…

Rick Duff Internet: rick@astranetwork.com
Astra Network QUICS: rgduff
QNX Consulting and Custom Programming URL:
http://www.astranetwork.com
+1 (204) 987-7475 Fax: +1 (204) 987-7479

Rick Duff <rick@astranetwork.com> wrote:

better development tools (Eclipse)

Not in 1000 years. I will give you the gcc route is better only because
of the portability issues, not because it is a better compiler. Anyone
who thinks Eclipse is better is only thinking that because they believe
any IDE is better than no IDE. Since I can still stick with command line
tools, I will continue to do so.

I couldn’t agree more. When I first saw the training videos for Eclipse
it looked amazing, and in many ways it is. I too am a “die hard” command
line kind of guy and eclipse has so far failed to convince me to give up
my old ways. If you are and IDE personality, than you will find the new
eclipse environment very beneficial.

It is always important to bear in mind that there is little that the
IDE does that is not possible from the command line itself. In reality,
the IDE uses command line utils for most things.

More hosts

One of QNX’s strength (IMHO) has always been self hosting. Since this
is true for both versions, it only matter to those who want to give up
the advantages of self hosting.

Absolutely, the people doing xdev from Windows, or Solaris [last time I
checked Kris, QSS had not released or announced xdev support for Linux,
so that one is news to us] have either been forced to use work within
those operating systems, or have not experienced the TRUE POWER of working
in the self-hosted environment. As someone on IRC is fond of saying…

“Self-Hosted is the One True Path! Submit!”

better networking support

In that you have a newer tcp stack and support IPv6, true. I am not
convinced you have either the stability or performance that you had in
QNX4. And certainly QNET is no where near as useful in QNX6 as it is in
QNX4.

Neither am I. FLEET and the global namespace in QNX4 was light-years ahead
of QNET in QNX6. With that being said, QNET still has a lot of potential.
The entire networking model in QNX6 is much nicer, allowing for multiple
protocol support and translation to be implimented relatively easy. The
ability to use the ipfilter package for NAT and firewalling is a very useful
addition. QNET over IP is virtually useless due to security issues.

Having said all of that, I have used QNX4 since it was still an alpha
quality product which forced you to reboot back to QNX2 in order to
report bugs and have used QNX6 since it was only Neutrino 1.0. On a day
to day basis, I develop in QNX6 and will continue to do that for any
projects I have a choice over. It has it’s issues, but it is well on
it’s way to be the superior product that QNX4 is.

I am in the same situation, I’ve been done QNX2, QNX4, NTO 1.0, and now QNX6
development. I would choose and reccomend QNX6 for all new projects.

One thing that (surprisingly) Kris neglected to mention is that of runtime
pricing. QNX4 had no pricing model for low and medium volumes of runtime
licensing. That made the OS costs of a QNX4 system with OS, TCP/IP, and
Photon that represented < 1000 units annually was full price, approximately
$850 + $200 + $100 = $1150 US. QNX6 has single and low-volume runtimes an
order of magnitude less, with volume discounts available after only a few
units. That alone makes QNX6 a much better choice than QNX4.

Cheers,
Camz.

Rick Duff <rick@astranetwork.com> wrote:
: Kris Warkentin wrote:
:>
:> Superior thread and SMP support, better Posix compliance, better development
:> tools (Eclipse), more hosts (Windows, Solaris, Linux, RTP), more targets
:> (x86, arm, sh4, xscale, mips, powerpc), better networking support… I’m
:> sure others could list more yet.
:>

: I was considering holding back my reply to this, but since it IS in the
: advocacy group, I just had to reply. :slight_smile:

Same here :sunglasses:

:> better development tools (Eclipse)

: Not in 1000 years. I will give you the gcc route is better only because
: of the portability issues, not because it is a better compiler. Anyone

The Integrated Developement Environment(IDE) will use whatever tools to do
the job. You have issues with gcc, ok, but not the same problem.

: who thinks Eclipse is better is only thinking that because they believe
: any IDE is better than no IDE. Since I can still stick with command line
: tools, I will continue to do so.

Your choice, the command line tools will not go away anytime soon.
But the IDE will still improve and provide ergonomic ways to do things
like System Information, Profiling, Tracing, Debuguing etc …
True, the IDE is still young, there is on going work to make it
a first class environment.

In any case, what your saying goes the opposite of what customers/sales etc …
been saying; to get better integrated tools. Arcane command line, a la
Unix hacker is hardly sufficient.

Lots of youngster out of school seems to be lost, if they do not have
Windows or visual basic.
</off topic>

PS:
BTW, I’m an “old” Unix hacker, and will not touch anything but vi/make
but will not push my way of working on others.

Of course:
#include “disclaimer.h”
etc …

Alain Magloire <alain@qnx.com> wrote:

Your choice, the command line tools will not go away anytime soon.

They should not go away EVER.

But the IDE will still improve and provide ergonomic ways to do things
like System Information, Profiling, Tracing, Debuguing etc …
True, the IDE is still young, there is on going work to make it
a first class environment.

There is one HUGE, MASSIVE issue with ALL IDEs and that is that they
force a particular “work flow”. If the work flow they enforce matches
how you develop then the IDE will seem very intuitive, and very useful.
If your personal work flow differs from what the IDE enforces, then you
have problems. In this scenario, the IDE is seen to be non-intuitive,
and the cause of much frustration as well as forcing additional and/or
unnecessary steps.

The painful reality is that we do not all work in the same way, so an
IDE can NEVER satisfy everyone. The Eclipse IDE can actually exaggerate
this furthur due to it’s plug-in design. Each plugin can have its own
work flow, which may or may not be “compatible” with the end user’s
work flow, or even with other plug-ins. That means that as more and more
plugins become available for Eclipse, the effort of making them all
consistent can be quite daunting or simple impossible with multiple
vendors are involved.

Providing basic development functionality exclusively in the IDE is a
HUGE mistake IMHO. The debugger is a prime example of this. Customers
that have purchased PE can use the debugger in Eclipse which works the
way most of us expect a debugger to. Customers that have purchased SE
are no better off in terms of debugger usability that those using NC,
this is hardly a differentiator for the commercial SE offering.

QSS needs to be very careful that they do not lock required development
functionality exclusively into the IDE.

In any case, what your saying goes the opposite of what customers/sales etc …
been saying; to get better integrated tools. Arcane command line, a la
Unix hacker is hardly sufficient.
off topic
Lots of youngster out of school seems to be lost, if they do not have
Windows or visual basic.
/off topic

We never said the IDE was not important.
I agree that many inexperienced developers seem lost without an IDE
to guide them. That is a sad situation, but with experience the dependance
on such tools declines unless no alternatives are provided. Blindingly
following the requests of the newest/least experienced developers as the
strategic plan is destined for failure. Pay heed to the comments from the
experienced camp. We are not always making noise because we no not like
change. We embrace change, but only when it provides value.

The reality of the “get better integrated tools” is more a requirement to
make the QNX development environment easier to compare with those from
your competitors. Don’t forget that QNX offers an option for development
that they do NOT provide, namely self-hosted. This should not be overlooked.
If the only way to develop for your OS is xdev from windows, then command
line tools are not a viable option, you HAVE to provide an IDE, or leverage
an existing one. That means that most QNX competitors can not viably offer
command line tools. This is an advantage that QNX has, and it should be
leveraged, promoted, and marketed as such. I realise that QSS has seen
a significant number of requests for xdev, to the point were the value of
self-hosted is ignored by the marketing materials. This is a mistake, QSS
needs to get it through their heads that self-hosted is one of the BIGGEST
differentiators that QNX has over it’s competitors, the promotional
materials should indicate the advantage of this. There IS a measurable
increase in productivity in the self-hosted environment.

And don’t confuse self-hosted with the IDE either, it’s available there too.

Cheers,
Camz.

Rennie Allen <rallen@csical.com> wrote:

are more productive (given an equivalent amount of IDE training and
command line training - myth: IDE’s can be learned in a day).

I think this is key, and I suppose I kind of eluded to that in another
post when I mentioned workflow. There is a perception (often propagated
by marketing / sales folk) that IDEs require little training and are so
intuitive that everyone can just use them. That’s not the case as you
point out.

PS: one can only be more productive in Eclipse after it’s loaded > :wink:

point taken :slight_smile:

Cheers,
Camz.

camz@passageway.com wrote:

Alain Magloire <> alain@qnx.com> > wrote:
Your choice, the command line tools will not go away anytime soon.

They should not go away EVER.

I’ll second that!

But the IDE will still improve and provide ergonomic ways to do things
like System Information, Profiling, Tracing, Debuguing etc …
True, the IDE is still young, there is on going work to make it
a first class environment.

There is one HUGE, MASSIVE issue with ALL IDEs and that is that they
force a particular “work flow”. If the work flow they enforce matches
how you develop then the IDE will seem very intuitive, and very useful.
If your personal work flow differs from what the IDE enforces, then you
have problems. In this scenario, the IDE is seen to be non-intuitive,
and the cause of much frustration as well as forcing additional and/or
unnecessary steps.

Not only that, but IDEs (and GUIs in general) are impossible to automate.
You can’t write a script that moves the mouse, clicks on “File”, pulls down
a menu, and clicks on a selection at 2 am based on a cron script!
This means that for automated build, regression testing, and a host of
other issues (which can be the basis of a flamewar) GUI-based tools
are completely useless. Hence, we need command lines to be guaranteed
to be around forever.

[snip]

Cheers,
-RK


Robert Krten, PARSE Software Devices +1 613 599 8316.
Realtime Systems Architecture, Books, Video-based and Instructor-led
Training and Consulting at www.parse.com.
Email my initials at parse dot com.

Rennie Allen <rallen@csical.com> wrote:
: Alain Magloire wrote:


:> : who thinks Eclipse is better is only thinking that because they believe
:> : any IDE is better than no IDE. Since I can still stick with command line
:> : tools, I will continue to do so.
:>
:> Your choice, the command line tools will not go away anytime soon.
:> But the IDE will still improve and provide ergonomic ways to do things
:> like System Information, Profiling, Tracing, Debuguing etc …
:> True, the IDE is still young, there is on going work to make it
:> a first class environment.

: I am equally comfortable with the command line or an IDE. Eclipse is
: one of the best IDE’s out there (I’ve tried many of them). There is no

Although, you remarks did not target the CDT of eclipse only, I will happilly
forward it to the rest of Tools group :sunglasses:. They work very hard, and
some with no previous GUI/Java knowledge to turn things around, facing heavy
skepticisms(An IDE!!? in … Java?? are you ^&#^%&*?), and all this in a very
small timeframe.

Eclipse JDT(Java developement) is probably one of the best out there,
and getting better(see Eclipse-2.0.1).

: question that there will always be something that you can’t do
: conveniently in an IDE; but for the things you can do conveniently, you
: are more productive (given an equivalent amount of IDE training and
: command line training - myth: IDE’s can be learned in a day). Any s/w
: engineer worth their salt should be able to use both, and any
: development environment worth its salt should provide both.

200% with you on this.
The IDE will provide an environment to make things easier, yes. But
I do not expect the secretary sitting in front of an IDE to magically
transform to an efficient senior programmer.
Thanks for pushing, this point.

:>
:> Lots of youngster out of school seems to be lost, if they do not have
:> Windows or visual basic.
:> </off topic>

: Yes, and it is this fact, that (IMO) leads to (unfounded) anti-IDE bigotry.

: PS: one can only be more productive in Eclipse after it’s loaded :wink:

:sunglasses:, touche’!
At this moment, it’s not a priority, maybe the gcj(Gcc Java compiler) will
help in the very long run :sunglasses:

“Alain Magloire” <alain@qnx.com> wrote in message
news:amafrg$789$1@nntp.qnx.com

Rennie Allen <> rallen@csical.com> > wrote:
: PS: one can only be more productive in Eclipse after it’s loaded > :wink:

:sunglasses:> , touche’!
At this moment, it’s not a priority, maybe the gcj(Gcc Java compiler) will
help in the very long run > :sunglasses:

I was playing with Eclipse 2.0 at home and it seemed to load a fair bit
quicker.

Kris