Real-Time with Managed Code

Managed code offers many advantages to the developer of embedded devices that must operate 24x7, often using advanced power management features of their CPU.

Demands on such software are intensified for real time systems. To keep power consumption low, software needs to be aware of processor state, including sleep, and needs to initialize in microseconds. Yet the mandate for 24x7 operations means that no shortcuts can be taken; code must not create any stacks, buffers or reserved memory areas it does not clean up.

Likewise, software for ARM-native interfaces can be complex and demand significant processing. Tests were run to compare both ‘speed’ of C# to C++, and latency associated with the transfer of data across the managed code and unmanaged code boundary since the actual silicon interface is, by necessity, an un-managed environment.

Real Time Csharp for Single Board Computers

What do you see?

Here, some test code toggles a GPIO every 250 nano-seconds- as fast as this scope can measure effectively. The pulses repeat with perfect regularity, indicating no interaction with a background process like ‘garbage collection’.

Is this C, C++ or C# managed code?

Find out the Details - Get the Whitepaper Here

Eurotech