Re: Java's poor performance? Not really - pick the right tool for the job!

Michael Bender <Michael.Bender-UdXhSnd/[email protected]>
Newsgroups gmane.comp.hardware.microcontrollers.tini
Organization Sun Microsystems, Inc.
Message-ID <[email protected]>
NZG wrote:

> I agree different OS's have different system calls to access the IO.
> That's why you should always use Linux or linux derivatives for
> everything :-) .

Or 8051 code :-). Seriously, you use the best tool for the job.
I wouldn't use Linux in a pacemaker or a flight control system
for a commercial airplane or the control system for a nuclear
power plant - those are applications that demand a much higher
level of security, robustness and availability, not to mention
real-time requirements than I think that Linux, or any GPOS
(General Purpose OS) can provide.

If my Linux desktop machine crashes, it's an inconvienience.

If my 7E7 crashes because someone created a bug in the sourceforge
code that controls the fly-by-wire system, it's slightly more
serious.

You always have to look at the task at hand and understand what
the constraints, parameters and requirements are. That's why for
critical systems like life support and aviation and so on we have
specialized hardware and software that may seem "old" to us used
to a six-month cycle time in the non-critical consumer and hacker
world, but is necessary for these types of applications and
environments.

>> This is a big win for Java: How secure is "Joe's TCP/IP Stack for C"?
 >> I'd bet my application on Java's security model any day over Microsoft
 >> or Rabbit or ______.
>
> Now you know that is misleading. Maybe Joe's TCP/IP stack isn't secure
 > but I'll bet you Linux's is waaaay more secure than Java.

Java doesn't have a TCP/IP stack per-se, it uses whatever the underlying
OS provides, with a few exceptions in embedded Java and in products
like Sun's old JavaStation running JavaOS, but even in those examples,
the TCP/IP stack isn't part of Java proper.

I think that Bruce is talking about Java's security model, which is
different than a TCP/IP stack; the Java security model is layered on
top of the underlying TCP/IP stack.

>>This is also a big win for OpenSource - a lot of critical eyes looking at
>>an open standard tends to produce a much more robust product than some
>>proprietary by an handful of people behind closed doors.
>>
>>And really the benefit of Java is reliability and programmer efficiency.
>>There, it's far more efficient than C, as most users who've done both will
>>attest.
>
> I'm sure not attesting. I have to write device drivers for linux and embedded 
> devices on almost a daily basis, and when it gets low down and dirty java is 
> nowhere to be seen.

How much of that is due to the types of projects that you work on and
perhaps even the prejudice of the people that designed the system,
rather than any inherent probles with Java? I'm not saying that Java
is the ultimate solution to everything, it has strenghts and weaknesses
just like any other language/platform, but my experience is that for
an embedded application where a device like the TINI or other Java-based
embedded controllers can fit, it is a pure pleasure to write in Java
compared to C or assembly language! Using Java for embedded applications
means that I can spend my time in the design and architecture of the
project, and not in the coding. Is there a performance/code size hit
for this? Sure, but you need to balance all the factors, it's not fair
to just pick and choose the ones that you want to use to make your
point. Ultimately, I could say that everyone that writes in assembly
is wasting their time and why don't the just go out and fab an ASIC
to do what they need done.

mike

-- 
----------------------------------------------------------------------------
   Michael Bender                       E-Mail: [email protected]
   Sun Microsystems, Inc.                  Tel: 831-401-9510
   14 Network Circle                       Tel: x.31807
   Menlo Park, Ca. 94025
   Mailstop: UMPK14-260                    MD: VPN/IMAP

            Never make assumptions... they are usually wrong.

----------------------------------------------------------------------------

_______________________________________________
TINI mailing list
TINI-6tN4nzCoH/[email protected]
To UNSUBSCRIBE, edit your profile, or see list archives:
http://lists.dalsemi.com/mailman/listinfo/tini
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.