5

I have an Microsoft .NET application that needs to be sped up, so it can have more deterministic round trip response times to incoming TCP/IP internet packets.

Are there any realtime builds of Windows, or realtime OS's that will run Microsoft .NET code?

Ward - Reinstate Monica
  • 12,788
  • 28
  • 44
  • 59
Contango
  • 1,130
  • 5
  • 15
  • 31
  • 1
    I have deep doubts that running a .NET app on a non-MS OS is going to improve performance. – mfinni May 25 '11 at 20:49
  • 2
    In the context of an internet-connected, ethernet-networked machine handling TCP/IP packets, is Windows' lack of *determinism* your real issue? That is, are you simply looking for a way to increase average response times instead? – magma May 25 '11 at 23:53
  • Just looking to increase the average response times. – Contango May 27 '11 at 08:45

4 Answers4

5

The obvious OS to look at is Windows Embedded, which can give you soft real-time, or hard (depending on your app), but I don't know offhand how good its support for .Net is. There are certainly versions of Win Embedded that have some support for .Net but the devil is going to be in the details.

Added later: another alternative - if you're a masochist - is that you might be able to port your app to run on a PLC using these libraries.

Ward - Reinstate Monica
  • 12,788
  • 28
  • 44
  • 59
3

You could look into RTX from IntervalZero: http://www.intervalzero.com/rtx.htm

It's a commercial realtime extension to Windows that may give you the determinism you're seeking.

Is this a financial trading app?

ewwhite
  • 194,921
  • 91
  • 434
  • 799
2

You can run Mono on Linux. Mono is an "open source, cross-platform, implementation of C# and the CLR that is binary compatible with Microsoft.NET"

Richard Keller
  • 2,270
  • 2
  • 18
  • 31
1

I'm not a realtime expert, but you could try to run your app under Windows CE.

I don't know if .Net is available, but worth checking.

petrus
  • 5,287
  • 25
  • 42