Afriza N. Arief
Afriza N. Arief

Reputation: 7886

Real-time APIs for Windows Embedded Compact

In Linux, there are separate APIs like the APIs from RTAI that need to be used if we want to make use of the real-time extensions.

Are there specific APIs that need to be used if we want to make use of the real-time features of Windows Embedded Compact?

Edit:
This time I don't really need to make application for WinCE, I just need to make comparison (for school assignment).

Upvotes: 1

Views: 1711

Answers (2)

Afriza N. Arief
Afriza N. Arief

Reputation: 7886

There are misperceptions among some software developers about the Windows Embedded Compact’s real-time capability. In general, you should look at the real-time behavior from a total system point of view, including the OS, hardware, BSP, device driver, and application that make up the complete system.

The Windows Embedded Compact 7 OS is developed to meet hard real-time requirements, and to support timing-critical applications. To take advantage of Compact 7’s hard real-time capability, applications created for the Compact 7 device must be written to meet the requirements and adhere to the hard real-time development principle.

An embedded device built with Compact 7 OS, or any other real-time OS, does not automatically inherit the real-time behavior. A Compact 7 device can be rendered to lose its real-time behavior when the application or BSP for the device is poorly written, or not intended to be in real time.

(Source: Professional Windows Embedded Compact 7, CHAPTER 14 APPLICATION DEVELOPMENT | page 175 | 2011 | ISBN: 978-1-118-05046-0)

Description of Real-time capabilities in Windows CE 6.0 is well explained in this webinar: Windows Embedded CE 6.0 – Real Time Capabilities, including some APIs that are specific to Windows Embedded Compact.

Upvotes: 1

ctacke
ctacke

Reputation: 67198

Windows CE doesn't have any real-time extensions because the OS is inherently real time to begin with. So the question for you is "what real time features are you trying to use that you need APIs for?" Generally speaking you'll have real time behavior by making sure your priority is appropriate (to prevent preemption) and by not making non-deterministic calls in your code (like memory allocations).

Upvotes: 2

Related Questions