|
Multiprocessors Need Distributed Objects
After decades of anticipation, multiprocessors
are becoming a fact of life for most software engineers, especially
in embedded systems. Symmetric multiprocessors which use a number
of identical processors, one operating system and a shared memory
are relatively easy to program, because we can use additional processors
to execute additional threads. (But watch out for multi-threaded
software that assumes it's running on a uniprocessor, so when a
high priority thread is running, a low priority thread isn't.)
Asymmetric multiprocessors, which lack shared memory, have dissimilar
processors or run different operating systems on different processors
are more difficult to program, but increasingly common. Threads
of execution on different processors are isolated from each other
and cannot directly access the same data. The software must ensure
that threads have the data they need when they need it. Results
may be affected by the order in which events occur on different
processors.
Full
Article
This article originally appeared
on www.embedded.com in January
2006 in the Embedded Soapbox Section
|
 |
Save 10-50% of Development
redFOX reduces software
development cost for distributed embedded system both directly and
indirectly.
It saves cost directly
by automatically generating middleware that would otherwise have
to be hand coded to achieve the same performance. Such hand coded
middleware routinely accounts for a large proportion of a software
development project, running to thousands of lines of middleware
per class. One company developing embedded systems estimates that
adopting redFOX will eliminate 25% of its source code.
In addition to reducing
implementation effort, redFOX reduces cost and time indirectly in
two ways.
First, it makes design
easier and quicker by allowing developers to work at a higher level
of abstraction and by making design changes easy to implement.
Second, by supporting
a distributed object methodology, redFOX allows software to be more
independent of the hardware architecture and therefore more portable
and reusable.
For a discussion of distributed object
technology in embedded systems, see Distributed
Processing in a Box [PDF 130 Kb]
|
 |
Evaluate redFOX
redFOX can be downloaded
(for non-commercial use) for Linux and Windows (Cygwin) -- see the
downloads area.
redFOX requires the
GCC toolchain. It adds a stage to compilation which generates some
additional code in your application.
redFOX can be ported
easily to other platforms.
If you hav other requirements
or require commercial support please use this form.
to request further information.
contact
us
|