TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Peter Hansen
from: Hank Barta
date: 1994-09-13 21:50:00
subject: Real-time

PH> I have not used C++ directly in a *time critical* system (to date)
PH> for two reasons.  The first is that a C++ compiler has not been
PH> available for the majority of the embedded systems on which I've
PH> worked.  The second is that when it comes to *true* time critical
PH> systems, such as the microsecond response you mention, I have never
PH> had the luxury of such incredibly fast hardware that I can afford to
PH> use a high-level language, period.  I have always resorted to
PH> assembly for the inner loop of any fast response system.
PH>
PH> I have, however, written two real-time systems using C++ features
PH> (even with virtual classes) in the inner loop.  As Craig S. said in
PH> his well-crafted response to you, there is nothing in C++ that makes
PH> it unsuitable for real-time, just marginally slower than certain
PH> alternatives.  In the two systems I built with it I didn't need
PH> such fast response that the extra overhead was a problem.  They were
PH> real-time but not so time critical that I couldn't afford to use
PH> C++.

I think that that you need to be a bit cautious about dismissing
higher level languages out of hand for real time or other 'bounded'
systems. Several years ago I helped rewrite the software for an
embedded system that ran on an 8088 and had 8K of RAM and 48K of
EEPROM. We evaluated a number of compilers and compared the results to
what might be obtained in using an assembler. The top compiler (from
Watcom) generated tighter code than we could write in assembler. (Mind
you, we weren't topnotch assembler programmers.) But the code generator
did a number of things that would be nearly unmaintainable in
assembler. (Such as sharing exit processing between a number of
procedures.) A good optimizer can apply scores of code size of speed
reduction techniques to the code that would be way too tedious and
error prone for any 'human' programmer (IMHO) and thus has distinct
advantages over an assembler.

[drift....]

hank

 þ KWQ/2 1.2g NR þ Look Ma, I'm a *Beta Tester*: KWQ Mail/2 for OS/2 v2.X!


--- WM v2.04/92-0551

* Origin: GREATER CHICAGO Online!! (708) 895-4083 (1:115/895)
SEEN-BY: 12/2442 54/54 620/243 624/50 632/348 640/820 690/660 711/409 410 413
SEEN-BY: 711/430 807 808 809 934 942 712/353 623 713/888 800/1
@PATH: 115/895 109/347 2 7 3615/50 229/2 12/2442 711/409 54/54 711/808 809
@PATH: 711/934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.