4 ms·
Those are two of the smallest parts -- there is the entire Windows API, and kernel API. The line ending character used by notepad isn't what would stop a total
by CJefferson 6y ago
Those are two of the smallest parts -- there is the entire Windows API, and kernel API. The line ending character used by notepad isn't what would stop a total re-write of Word.
Tens of thousands of methods which power the majority of paid-for software. Microsoft has spent decades, and huge amount of man-power keeping all that software working, why would they flush all that away?
- pjc50 6y agoThe API is quite shim-able; WINE has done that in the reverse direction, and there is (or was) the "POSIX subsystem" and cygwin. People build cross-compilable C code that works on both. It's just a bit of a hassle because the semantics are different in key places. Leaving aside things which touch the GUI (which is a lot! You need a window to receive messages to use certain APIs!), the next big differences are the process API (no fork, starting processes is a lot more time consuming) and the advanced filesystem API (completion ports). There are frankly a few pieces of the API that I would like to see go in the other direction, like WaitForMultipleObjects().
- JdeBP 6y agoIndeed. kevent() isn't quite there on FreeBSD yet, and the Linux kevent() library doesn't work the same as the BSD one. * https://freebsd.org/cgi/man.cgi?kevent https://freebsd.org/cgi/man.cgi?kevent * https://news.ycombinator.com/item?id=23549116 https://news.ycombinator.com/item?id=23549116
- tracker1 6y agoI don't think MS would ever switch the UI out for Linux... but it wouldn't completely surprise me to see MS helping with WINE, DXVK and Proton. More surprised if there haven't been MS contacts that have at least helped to clarify things on occasion.