Start
A
Solution?
Best
of Both Worlds
Two
Approaches
A
Win32 Compatible RTOS
Development
Process
Scalability
Software
& Sources
TWO
APPROACHES
There
are two approaches to implementing a Win32-compatible
RTOS. A Win32 API layer may be added as an extension
to a preexisting traditional RTOS, or an RTOS may
be designed from the ground up with implementation
of a Win32 subset as a core design goal.
An
example of the first approach is the Willows RT toolkit
from Willows Software (also known as APIAccess from
Award Software). The Win32 layer is supplied as a
library that can be linked with an application built
under one of several standard non-Win32 RTOSs, giving
the application source-level compatibility with a
Win32 subset.
However,
binary compatibility is limited, since it is supplied
through the use of virtual machine and other slow
emulation techniques that simulate the native Win32
run-time environment for binary code. And, mainstream
Win32 development tools cant be used with a
non-Win32 RTOS.
The
second approach does not suffer from the same problems.
Both source and binary compatibility with desktop
Win32 are possible without performance penalties.
Standard Win32 development tools can be used. Because
there are no extra implementation layers, applications
have maximum performance and minimum size.
Commercial
RTOSs using this approach include Phar Laps
Embedded Tool Suite and On Times Win32/NT-compatible
RTOS. Windows CE satisfies some of the requirements,
but its nondeterministic performance, high interrupt
latency, and large memory requirements (often above
2 MB) make it unsuitable for hard real-time use and
small embedded systems.
Special
versions of Microsoft development tools are required
to create Windows CE applications, so standard desktop
Win32 tools cant be used. Finally, to boot Windows
CE on standard embedded-PC hardware, MS-DOS must be
present.