| General > General Technical Chat |
| When will MS replace the NT-kernel in windows? |
| << < (19/25) > >> |
| Karel:
--- Quote from: magic on January 25, 2024, 07:09:35 am ---I had to hard poweroff the machine when systemd got stuck on shutdown trying to kill an unkillable task and wouldn't give up after a few minutes |O --- End quote --- Try OpenSuse Leap 15.4, that happens about 50% of the time when shutting down :-- Although it shutsdown after 2.5 minutes, it's annoying... Leap 15.5 behaves better now. |
| Nominal Animal:
The reason behind portability across Unix/BSD/Linux is Single Unix Specification and POSIX, which assume a very specific set of services/features the kernel must provide, including signals. It also kinda-sorta assumes C, because POSIX and SuS system interfaces are defined in terms of their C bindings as part of the standard C library. Microsoft's POSIX subsystem only supported the 1990 version of POSIX, IEEE Std 1003.1-1990 / ISO/IEC 9945-1:1990, which is only a small fraction of what the current/practical 2001 version (and later versions; current is from 2018) is. There was no threads, minimal support for signals. It really only existed to minimally fulfill FIPS-152, so that Windows NT could be considered for some US government purchases. The later Windows Services for Unix targeted BSD (and thus Unix), and not POSIX. Well over a decade after those were deprecated and no longer supported, Microsoft came up with Windows Subsystem for Linux. WSL1 didn't work too well, so the much better (but still not comparable to running Linux in a virtual machine) WSL2 uses an actual Linux kernel port, virtualized under an internal hypervisor. In other words, even to be able to run Linux binaries satisfactorily in Windows, Microsoft had to include a virtualized Linux kernel. WSL1 was an attempt to do that via a lightweight process model and services forming a "library + services" layer on top of the Windows kernel, but it could not support all Linux syscalls. I did not realize it before, but this alone should be sufficient indication of how different the Windows and Linux kernels are, making it unfeasible to replace one with another. (Note: The POSIX subsystem for Windows NT was crap, but other than that, I am in no way saying that one thing is better than the other. I'm only talking about the facts related to interoperability between kernels here.) |
| nctnico:
Still, I think the fact that Apple has changed OS and platforms several times already (as pointed out by others), shows that it is possible to radically change what is under the hood of a computer without the users objecting to it to an extend that they buy something else. |
| shapirus:
--- Quote from: magic on January 25, 2024, 07:09:35 am ---My latest systemd nonsense: a fresh Arch installation hasn't had systemd removed from it yet. I had to hard poweroff the machine when systemd got stuck on shutdown trying to kill an unkillable task and wouldn't give up after a few minutes |O --- End quote --- It's a long-standing issue with systemd. It does have some settings to configure a maximum time to wait for a service to shut down, but by default they are set to infinity (or that's the practical outcome of whatever they are set to). That they are still not set to sane default, say, 5 seconds, with higher values set specifically only for those very few services which genuinely may need more time for a clean shutdown, is a good indicator of the systemd developers' attitude. |
| shapirus:
--- Quote from: nctnico on January 25, 2024, 09:13:18 am ---without the users objecting to it to an extend that they buy something else. --- End quote --- They will never object regardless of how breaking the change is, because, you know, rounded corners, zero old fart's USB ports, non-existent repairability, and, of course, the logo on the lid... you won't find all those goodies neatly fitted in one package in other products. |
| Navigation |
| Message Index |
| Next page |
| Previous page |