Shared memory usually is not an acceptable implementation technique for these kinds of things, except when used point-to-point, or between a pool of very closely related processes. If one of the processes crashes the memory is left in a inconsistent state. There nothing preventing a rogue process from writing all over it while the others are running. And so on.
Worse, how does it work if one of the process is privileged? I smell a giant security whole right there.
The only robust solution is to have central "server" process (ala Wine). I think the performance overhead and additional complexity of such a solution are obvious.
Not to mention that the benefit of mandatory locking between cooperating processes a little dubious :-)
But my bigger point was that such workarounds (not to mention potential security vulnerabilities) and the complexity they bring should not be needed and are not desirable in a Linux programming language. When developing, administering or debugging something sufficiently complex in Linux, the last thing anyone needs is an additional tangle of semi-emulated Win32 semantics.
I am not bashing Mono or other .NET re-implementations - I think it is a great product - but in my mind it is primarily a vehicle for porting Win32 .NET apps to Linux, and not really an ideal tool for Linux-only development.
Posted Dec 16, 2010 15:57 UTC (Thu) by dgm (subscriber, #49227)
[Link]
> I am not bashing Mono or other .NET re-implementations - I think it is a great product - but in my mind it is primarily a vehicle for porting Win32 .NET apps to Linux, and not really an ideal tool for Linux-only development.
Let the bashing to me, then. How many .NET apps have you seen ported to Linux recently?
Mono not well suited for Linux development
Posted Dec 16, 2010 18:49 UTC (Thu) by dlang (✭ supporter ✭, #313)
[Link]
well, if mono does what it's supposed to, there is no need to do anything for any .NET app to make it run on linux other than to run it under mono.
so you would never see any apps explicitly ported to linux, they are all implicitly ported by the mono project.
Mono not well suited for Linux development
Posted Dec 16, 2010 19:09 UTC (Thu) by mikov (subscriber, #33179)
[Link]
I suspect many of those apps might be of the closed source "enterprise" kind - not something that many of us would necessarily see.
The first time I played with mono I was put off by something completely superficial - the output files have a ".exe" extension by default :-)