Originally posted by oiaohm
View Post
I guess you can count yourself lucky that Windows isn't actually running...
I think what you are saying would perhaps mean that in the extreme you need a global lock at the entry point of each emulation of related Windows API calls, which would be unfortunate in so far as it prevents parallel execution. So that any Windows API call will only encounter the completed state from another API call. Instead of the "big kernel lock" that you mention.
However, a global lock would also simplify implementation *a lot*. So maybe not that bad overall. And BTW, even a global lock requires a syscall only when there is contention.
And why would you want the code, handling all that mess, to go inside the Linux kernel? A recipe for disaster...
I think I'm going to watch a video about eBPF now, I just read it got atomic operations added...
Comment