When will MS replace the NT-kernel in windows? - Page 1
Forum section: electronics / general

author: Karel
author_rank: Super Contributor
timestamp: January 20, 2024, 10:40:06 am
content: Given the facts that:- Linux is the most used operating system in the world.- Most instances on MS Azure are running Linux.- MS maintains and offers their own Linux distro called "Mariner".- MS has implented Linux into windows called "WSL2".- MS has joined the Linux Foundation.- MS hires Lennart Poettering, the inventor and lead programmer of systemd.- MS has released the Edge webbrowser for Linux.- MS has released Visual Studio Code for Linux- MS enforces the TPM >=2.00 so that nobody can tamper with their (modified) Linux kernel.- MS has implemented SSH client in windows powershell.- MS will implement the "sudo" command in windows powershell.The last step missing is the replacement of the NT kernel with the Linux kernel.When do you think this will happen?edit: added Edge webbrowser, Lennart Poettering, Visual Studio Code

author: magic
author_rank: Super Contributor
timestamp: January 20, 2024, 12:17:41 pm
content: It can only happen when "Windows" becomes a meaningless label slapped on something that isn't Windows.The kernel APIs on Windows are completely different, you can't reasonably port Windows to run on top of Linux.

author: RoGeorge
author_rank: Super Contributor
timestamp: January 20, 2024, 12:40:47 pm
content: I don't care about the NT kernel, but I found that trend rather scary.It looks like Linux might get extinguished in the next 10-20 years.Another aspect, at some point Linus will have to retire anyway.Dark times will come for Linux. Not something to celebrate.

author: nightfire
author_rank: Frequent Contributor
timestamp: January 20, 2024, 01:46:57 pm
content: Well, with about 30 years experience in IT, and having had a look into the open source world beginning with FreeBSD in 1998:- Linux ist just a kernel- what you call "Linux" usually is the GNU Operating System with the linux kernel- Operating systems are divided in many sections, mainly kernel, userland and 3rd party apps- Linux as a kernel is replaceable, and probably someone else will continue to develop this thing further after Linux retires- Most important are the whole API and interfaces to the userland/3rd party appsThis said, it would not surprise me if the NT kernel would be exchanged with some other kernel (be it Linux, BSD or something like the kernel in Mac OS X), retaining all that API stuff M$ introduced in the past. Or the cut old ties and announce that only .NET applications will be allowed to run in the future...Actually, it seems that M$ has understood that operating systems nowadays are primarily used to provide a foundation for launching apps that rely on servers to be able to function- like facebook, instagram, google etc.

author: magic
author_rank: Super Contributor
timestamp: January 20, 2024, 01:57:31 pm
content: Quote from: nightfire on January 20, 2024, 01:46:57 pmIf they are very generous, they might buy the Wine project, invest in it and bundle it with Windows LT for those wanting to run Win32 applications.

author: tom66
author_rank: Super Contributor
timestamp: January 20, 2024, 02:05:41 pm
content: The Windows operating system and NT kernel are quite fundamentally different to Linux which is based on a POSIX-like architecture.I don't see it happening because it would reduce vendor lock in to the Microsoft world. For instance you would likely be able to run any "Windows" application on any Linux if the kernels were similar. Microsoft could make some parts proprietary but the difficulty of porting those over would be less. Drivers for graphics cards, networking and so on would be more reliable on Linux.

author: nctnico
author_rank: Super Contributor
timestamp: January 20, 2024, 03:31:53 pm
content: Quote from: tom66 on January 20, 2024, 02:05:41 pmIt looks to me Microsoft is losing money on Windows so it would make sense if they can dump Windows and replace it by some form of Linux. Their cash cow has always been applications that run on Windows.

author: Jeroen3
author_rank: Super Contributor
timestamp: January 20, 2024, 03:52:23 pm
content: Why would Microsoft dump the NT-Kernel?That would alienate their customers. Do you know how much tooling depends on Windows?You know, tooling that people use to actually do work. No I don't mean office. I mean CAD software and such.There is decades of work in tools like Altium, Eplan, ArcGIS, Revit.What will happen is Windows 12 push for ARM cores. Maybe an x86 emulator? They're doing their own silicon.It will probably become a subscription model, or at least the AI copilot part will.They will have to do something for the Home users, because Microsoft lost the young generation to Chromebooks and iPads on schools.

author: nightfire
author_rank: Frequent Contributor
timestamp: January 20, 2024, 04:07:25 pm
content: Quote from: nctnico on January 20, 2024, 03:31:53 pmWell, They still manage to make money on Windows, but they also see that the trend points to other things nowadays- one of the reasons why MS is heavily going cloud and offering services- because those can be billed monthly and will generate a steady cashflow.

author: nctnico
author_rank: Super Contributor
timestamp: January 20, 2024, 04:13:40 pm
content: Quote from: Jeroen3 on January 20, 2024, 03:52:23 pmThe makers of those tools should have started porting to Linux a long time ago. Linux is much more suitable to run CAD software compared to Windows anyway.

author: Bud
author_rank: Super Contributor
timestamp: January 20, 2024, 04:28:14 pm
content: You can't do that without porting hardware to Linux first, such as graphics. CADs do not draw straight on the display, they call graphics hardware.

author: tom66
author_rank: Super Contributor
timestamp: January 20, 2024, 04:46:50 pm
content: To be fair whilst Linux did historically have difficulty with graphics drivers, the situation is much much better now. Nvidia, AMD and Intel all have their own proprietary or open source drivers available, and Linux has display modesetting (drm) built in to the kernel now which works way better than the Windows solution. So that should not be a barrier for CAD software.

author: DimitriP
author_rank: Super Contributor
timestamp: January 20, 2024, 06:42:27 pm
content: QuoteWhat you call "understood" I call MIS-understood.You are describing chrome-os , and they attempted a mild version of it with the windows "S mode" abomination.Hosted services are easier to manage , support and control than individual installations.The user just wants to "get their stuff done".

author: nctnico
author_rank: Super Contributor
timestamp: January 20, 2024, 06:48:05 pm
content: Quote from: Bud on January 20, 2024, 04:28:14 pmNo they don't. CAD software uses abstraction layers like OpenGL, Vulkan or (when ignorant) DirectX. The DOS days are long gone.Graphics support on Linux has been excellent for over a decade already assuming you are not being stubborn by wanting to use open source drivers or buying a graphics card for which the manufacturer doesn't want to provide Linux drivers. For example: I used to be a big fan of Matrox video cards but stopped buying these because Matrox stopped providing Linux drivers.

author: Karel
author_rank: Super Contributor
timestamp: January 20, 2024, 06:53:28 pm
content: Technically, MS could replace the NT kernel with the Linux kernel and run their (proprietary / closed source) userlandand windows GUI on top and still charge the same $ for it.Regarding backwards compatibility, they could also implement a binary translator or emulator.Question is only, what would be more profitable in the long term. Keeping on maintaining the windows kernel or aone time investment in the transition to a Linux kernel...

author: AG6QR
author_rank: Frequent Contributor
timestamp: January 20, 2024, 07:48:11 pm
content: Quote from: nctnico on January 20, 2024, 04:13:40 pmI was a software developer for Autodesk, working on AutoCAD and related products, from 1991 through 2016, so I have some historical insight.When I started in 1991, most developers had a Sun workstation running Unix (SunOS, later Solaris) for software development, and a DOS box running DOS 5.0 for porting and testing. AutoCAD made the vast portion of its money on the DOS platform, because it was cheap for customers to buy. But it was also a lousy platform for software development for something as big as AutoCAD. We had to wrestle with a Phar-Lap DOS extender, and a primitive Watcom compiler that didn't really have much of an IDE or debugger. So everything was developed and initially tested on Unix. We also sold AutoCAD on HP-UX, Silicon Graphics, and a bunch of other Unix-ish platforms.Autodesk had a significant body of software that was used to encapsulate UI and device drivers, so that menus and display code could be developed once at displayed on DOS, Windows, and various flavors of Unix.Circa 1993-1996, after Windows NT was introduced, Windows became a platform that was workable for software development. Management decided that it was too much effort to support all the different ports of AutoCAD, so AutoCAD became Windows-only. It took almost no time for Windows-isms to creep into the code such that it couldn't be compiled on anything except Windows. MFC, use of the registry, COM, and similar things were everywhere.Funny thing was, around the time AutoCAD was becoming hopelessly mired in Windows, Linux distributions were becoming usable. If the timelines had been only slightly different, a Linux port of AutoCAD could have been possible in the 1990s. Alas, it was not to be.It may be possible to run some versions of AutoCAD under Linux using some form of emulation (a VM running Windows could certainly do it!), but as of October 23, Autodesk has posted an official position that AutoCAD and its verticals are not supported on Linux.https://www.autodesk.com/support/technical/article/caas/sfdcarticles/sfdcarticles/AutoCAD-and-verticals-on-Linux.htmlMaybe someday...

author: Zero999
author_rank: Super Contributor
timestamp: January 20, 2024, 07:58:51 pm
content: Quote from: tom66 on January 20, 2024, 02:05:41 pmIt's not true that all windows programs would run on GNU/Linux, if MS decided to use a Linux kernel for Windows. Remember, Linux is just the kernel. MS could keep all the graphical part proprietary, which would mean the only Windows software which would run under GNU/Linux would be some command line tools and drivers.

author: DimitriP
author_rank: Super Contributor
timestamp: January 20, 2024, 08:05:23 pm
content: QuoteAt least it avoided the "linux is free, why do I have to pay for X ? " question.Or getting burdened with the "when will you support the YZ distribution?".Still, having a multiplatform product and dropping one always seemed wierd to me.There is something to be said about being able to migrate a character based applicationfrom the 1990s running on UNIX to 2023 running on windows with current hardware, other than the speed shock!

author: Perkele
author_rank: Regular Contributor
timestamp: January 20, 2024, 08:21:37 pm
content: For those buying the computers in large quantities, operating systems are not important. Applications and backwards compatibility are.Those are also Microsoft's main customers.They are not willing to pay for the move, and never will be.

author: SiliconWizard
author_rank: Super Contributor
timestamp: January 20, 2024, 09:14:33 pm
content: The Windows NT kernel is actually rather decent, and certainly the last thing that should be changed in Windows IMO. The idea doesn't make any sense.

author: radar_macgyver
author_rank: Frequent Contributor
timestamp: January 20, 2024, 09:45:16 pm
content: Theoretically, MS could fork Wine and rewrite the parts that are incomplete or based on stuff that wasn't 100% accurately reverse engineered, and call it the next generation of Windows.Quote from: nctnico on January 20, 2024, 06:48:05 pmHasn't been true for AMD Radeon cards for some time now, the mainline drivers for Radeon have active support from AMD.(yes I know this wasn't about their GPUs, but still funny)

author: PlainName
author_rank: Super Contributor
timestamp: January 20, 2024, 10:15:16 pm
content: Quote from: Karel on January 20, 2024, 10:40:06 amContext is everything. Linux may the most used OS, but Windows has the biggestdesktopuserbase.Using your argument you could say that water is the most drunk fluid in the world so when are pubs going to stop selling beer.

author: gnif
author_rank: Unknown
timestamp: January 20, 2024, 10:28:59 pm
content: Quote from: RoGeorge on January 20, 2024, 12:40:47 pmSorry but no, if anything MS sees the writing on the wall, that Linux has become a true contender and it's too late now to extinguish it. Look at the commercial success of devices like the Steam Deck, or the fact that the android OS uses the Linux kernel.With the excellent performance of hardware assisted virtualization, features like VFIO now supporting GPU pass-through, and vendors like Intel providing technologies like GVT-d, and AMD providing high core count CPUs with features like ECC as a standard, running Windows in a VM for desktop application workloads is becoming very common.I have been a major part of this virtualization movement over the last 6 years (seehttps://looking-glass.io) and watched it grow from a few dozen randoms messing with the interesting technology, to the commercial success it is today with countless people shoving windows into a VM so they can still play games or use legacy software that do not provide a Linux port.Add to that the implementation of proton bringing excellent DirectX compatibility to Wine on a commercial level (again by Valve), we are seeing a very large migration to the Linux desktop as evidenced by the kind of people we are seeing in the support channels that I am a part of.Quote from: radar_macgyver on January 20, 2024, 09:45:16 pmSorry but this is not entirely accurate either. While the AMD kernel sources are available, they still depend on and use binary blobs like the ATOM bios (amdgpu actually implements a small virtual machine to execute the ATOM bios's IL). And with the lack of any form of documentation on what the GPU registers are, and what the bits in the registers do, having access to the code is largely useless. I have spent countless hours debugging AMD GPU VFIO reset issues and getting any form of information on AMD on how things work to diagnose them is like pulling teeth.I had access to an AMD Radeon Team engineer for a long time while working through these issues, and while he wanted to help me, we kept running into red tape on what he could tell me, which was almost nothing. I even had direct communication with Lisa Su on the matter (which was astounding, I didn't expect her to respond to my correspondence). The revelation that BACO (an amd specific acronym) was useful to us took about 8 months of trying to tease out information. For the record, it's "Bus Active Controller Off", used for power saving, but we found we could be used to semi-reset the GPU to a mostly working state again after VM shutdown.Edit: and yes, while i'd love to give team green the flick, the fact that AMD years later, still today can't implement a proper working reset of the GPU via standard means (ie, bus reset) has me very hesitant to use AMD GPUs for any purpose. I consider the GPUs bugged until such a fundamental flaw is fixed (ever wondered why NVidia GPUs can crash recover so well vs AMD even on Windows? this is why)

author: Helix70
author_rank: Unknown
timestamp: January 20, 2024, 10:40:55 pm
content: Since Microsoft is now a services business, and don't rely heavily on Windows for revenue, why would they put the effort into switching the kernel after spending so much time, money and effort to decouple themselves from the desktop OS market?

author: Karel
author_rank: Super Contributor
timestamp: January 20, 2024, 11:31:38 pm
content: Quote from: Helix70 on January 20, 2024, 10:40:55 pmSo that they can fire the NT kernel maintenance team and save money?

author: tom66
author_rank: Super Contributor
timestamp: January 21, 2024, 01:38:29 am
content: Quote from: SiliconWizard on January 20, 2024, 09:14:33 pmI'm not so sure about that. The Windows kernel still has the unfortunate limitation where a SMB network drive locking up kills the entire filesystem driver until the SMB times out. That shouldn't be possible. There are a few single threaded locks in Windows that seem to be there more for simplicity than proper design. It also doesn't handle high CPU counts as well as Linux, with multithreading being distinctly less efficient than Linux, and interprocess communication is a lot harder and less efficient too.In terms of raw stability, Windows and Linux are probably about matched, but if I could I'd definitely run a Linux-kernel Windows OS - provided it still ran normal Windows apps - which is probably not ever going to happen but we're discussing hypotheticals so...

author: radar_macgyver
author_rank: Frequent Contributor
timestamp: January 21, 2024, 01:49:24 am
content: @gnifthanks for the insights on that - my observations come from using an AMD GPU in a non-VM mode for home use (light gaming at most). The refreshing bit relative to NVIDIA was not requiring akmod for the display driver, which made kernel updates somewhat fraught since if the driver didn't build, I would have to spend a while rolling back to an older kernel and trying again. Haven't had to think about it since I switched to AMD.I have seen my work computer (Win10, with an A2000 GPU) recover from a device driver crash - now I know how! Also, I do remember Level1 Techs covering Looking Glass a couple of years ago and wishing I could use it (work IT folks wouldn't let me). Amazing work!

author: DimitriP
author_rank: Super Contributor
timestamp: January 21, 2024, 03:00:58 am
content: Quotewithout "windows".... (other than Dell, HP , lenovo and a few others getting out of the business of selling "computers"), a lot fewer customers would have an "entry point" into the microsoftjungle"ecosystem"."windows" is not what brings in the most revenue ...but it is what makes making money possible

author: Nominal Animal
author_rank: Super Contributor
timestamp: January 21, 2024, 03:01:38 am
content: As we all know, Apple replaced its original kernel(s) withXNU(for Mac OS X). It has an interesting history, but the key point regarding the discussion at hand is that they still had to revamp the userspace-kernel interface completely. For a number of reasons, I do not think that is possible for Microsoft to do something like that, at all. Their historical baggage is too great, and investment in rejecting other approaches too high: it would be like trying to stop and redirect a juggernaut. It would have to become a new, completely different company first.Android and iOS have shown that new operating systems are commercially viable, but getting large existing software houses to port their software requires "subsidies" (incentives, support, et cetera); otherwise it will not happen. On the server side, free/open source software like Linux and BSDs have already made it nearly impossible for traditional-proprietary-approach operating systems to compete –– all top 500 largest supercomputers and about 41.5% of all websites run Linux; about 84% of websites run an Unix-like OS –– so the ones left really get paid for maintenance, quality assurance, and support, instead of the binaries. The fact that MS has these software houses already on board means any action that risks them leavingen massecould be a deathstroke for Microsoft the company; but also that keeping tostatus quoas much as possible, gives the company a big edge over any possible competitors.Even though I don't want to touch Windows at all myself, I am happy that there are options and completely different development approaches.Expecting Microsoft to replace their kernel with something completely different –– no matter what the perceived/assumed/believed technological or monetary or other benefits it would involve –– is unrealistic, I believe, based on the above.

author: tooki
author_rank: Super Contributor
timestamp: January 21, 2024, 11:56:02 am
content: Quote from: Nominal Animal on January 21, 2024, 03:01:38 amAre you referring to replacing the Mach kernel in NeXTStep with XNU for Mac OS X (which is directly descended from NeXTStep), or replacing the classic Mac OS kernel with XNU? In the first case it was replacing one thing with a derivative of the same thing; in the latter, the kernel was replaced by replacing the entire operating system. I don’t think either of those is really comparable to replacing the NT kernel with the Linux kernel.

author: tooki
author_rank: Super Contributor
timestamp: January 21, 2024, 11:56:53 am
content: Quote from: Karel on January 20, 2024, 10:40:06 amNever, because doing so doesn’t make sense. It’d be a huge risk with no obvious reward.

author: AndyBeez
author_rank: Frequent Contributor
timestamp: January 21, 2024, 01:27:22 pm
content: My opinion, other than the use case for domestic personal computers, who in the real power user world is using NT architecture? Even in the SOHO, NT is becoming a relic of a bygone era. A quick look around my personal tech zone here and... ... there is my legacy laptop with Windows XP. I switch it on sometimes for retro gaming. Everything else, OSX or Linux. Businesses to campuses, personal devices to the cloud, the centre of gravity has moved parsecs away from the Windows black hole that crushed money in exchange for limited data security. The Linux genie is so out of the bottle that you cannot touch anything containing software that is not running a distro in one form or another. Controversially, Azure remains a cloud player only because it is heavily reliant on Linux under the hood(?). Replacing NT Kernel? Unlikely, as a MS will have gone broke long before a new "it's not Linux" kernel reaches the long term support phase. The OS world is also shifting away from the North American/IBM/MS model of cumbersome corporate software provision to anAsian modelof faster, lighter, cheaper and adaptable. India or China is from where the next great OS will emerge.Think NT Kernel, think steam locomotives. There are many enthusiasts who like to romanticise the past imperfect.

author: madires
author_rank: Super Contributor
timestamp: January 21, 2024, 02:54:53 pm
content: Quote from: tom66 on January 20, 2024, 02:05:41 pmOne of the original goals for NT was POSIX compatibility. Another interesting thing is that NT is based on OS/2 (joint developement of MS and IBM) and VMS (MS hired a group of developers from DEC). Originally NT was also meant to be OS/2 compatible, but MS went for the Windows API after Windows 3.0 turned out to be quite successful.

author: mendip_discovery
author_rank: Super Contributor
timestamp: January 21, 2024, 03:17:32 pm
content: Quote from: nctnico on January 20, 2024, 04:13:40 pmLinux has had an issue for years and it is much like the one that Apple has. It is not the OS but the user base. There are some rather toxic *nux users out there. I use it but I don't use it for my daily driver.

author: DimitriP
author_rank: Super Contributor
timestamp: January 21, 2024, 11:43:39 pm
content: QuoteLose the wheels. Antiques!Quote

author: Nominal Animal
author_rank: Super Contributor
timestamp: January 22, 2024, 10:03:09 am
content: Quote from: tooki on January 21, 2024, 11:56:02 amThe latter. They did do quite large changes between Mac OS 7.5 and 8, too.Quote from: tooki on January 21, 2024, 11:56:02 amYou cannot simply replace the NT kernel with the Linux kernel. If you could, thenWinewould run perfectly. Plus there is the large number of vendors providing binary-only Windows drivers, who would be impacted.My point was that even Apple couldn't just switch to a better kernel; they had to revamp the userspace-kernel interface and APIs as well.

author: nightfire
author_rank: Frequent Contributor
timestamp: January 22, 2024, 06:19:40 pm
content: Yes, Apple made a deep cut to get rid of lots of heritage by going OSX.But seriously, from what we are already see in the cloud business of SaaS and other services, operating systems do not matter as much as some maybe 10 years ago. Nowadays the question is which API are available between pieces of software and how to configure them.So with a timeline of say 2030 it should be quite possible for M$ to bring an operating system to market, like Windows ng (next gen), which basically serves as a launcher for cloud services and desktops and only allows installation of specially certified software. Professional Users then can rent the special Pro edition, where the basic desktop services are provided by cloud ressources (VDI/VDA). Installation of 3rd party software costs extra.For manufacturers nothing will change in a big way, most of the good manufacturers are already providing some linux drivers for their stuff or the out-of-the-box drivers work.Such a move also could bring driver development on linux to a better world, because now some real commercial money is put into it.

author: nctnico
author_rank: Super Contributor
timestamp: January 22, 2024, 06:25:01 pm
content: Quote from: Nominal Animal on January 22, 2024, 10:03:09 amThe kernel is not the problem for Wine. It is the dozens upon dozens of layers of software (userspace libraries) that sit between the application and the kernel. That is where the problem is for Wine; it is such a mess that it is next to impossible to emulate correctly. And I doubt Microsoft can re-create these libraries to a satisfactory level. Some backwards compatibility got broken in Windows 10 for example. Remember the guy from Sysinternals? He got hired by Microsoft because he understood more about the internals of Windows than the people working at Microsoft.

author: tooki
author_rank: Super Contributor
timestamp: January 22, 2024, 06:37:20 pm
content: Quote from: Nominal Animal on January 22, 2024, 10:03:09 amWell they really just swapped out the entire OS. Other than the Carbon compatibility library (which required changes in application code, too) they couldn’t even run the same software. I don’t really think one can call this a kernel replacement, since it required replacing everything below it and above it too.Not saying Apple’s achievement wasn’t important, but it’s nothing like the (nonsensical) “replace NT kernel with Linux kernel” posited by the OP.Quote from: Nominal Animal on January 22, 2024, 10:03:09 amI’m not saying one could; that was the OP’s idea. With that said, Microsoft likely could make it work; they’ve moved the Win32 APIs to multiple disparate kernels over the years.Quote from: tooki on January 21, 2024, 11:56:02 am”Revamp” makes it sound like they just did an update or refurbishment of those things, but what they really did was to dump the entire old OS and APIs overboard and replace them all with new ones. (Even Carbon was short-lived in practice, insofar as Carbon apps ran comparatively poorly and it was clear from the start that Cocoa, the native APIs from NeXTstep, were the future.)

author: SiliconWizard
author_rank: Super Contributor
timestamp: January 22, 2024, 08:57:37 pm
content: Yes, it again wouldn't make any sense whatsoever, and if ever decided, would be a very bad move both for MS and for Linux. MS would get into this downwards spiral of never getting it right, and Linux would suffer enormously from this sudden too big influence of MS in its development, and then the lack of diversity, that others have also pointed out. Having options is good, even, and especially when some of the options look worse/better than others to *you*.It wouldn't even be motivated by the need to target other architectures, as Windows is already there for ARM, and they probably have at least a side project to target RISC-V.Then there's the licensing thing, I don't see how they could ever do with Linux's license.I think some people also have an idealized view of Linux (and saying this while I have quit using Windows almost entirely) and an inaccurate view of what the Windows kernel is.But anyway, I'm not sure what the OP's point really was. Maybe he also wants macOS to use a Linux kernel? The question was also "interesting", it was a "when", not even a "what if".Back to point 1: having options is a good thing and drives improvements and innovation. Willing to corner everything to a single unified solution is never a good idea. And one reason Linux is great (while not without its deficiencies either) is that while being widely used, it's still independent. How can you ever imagine Linux (or any other project) staying independent while becoming a core part of their business? Knowing MS, it's, uh, hard to believe.

author: nctnico
author_rank: Super Contributor
timestamp: January 22, 2024, 09:23:05 pm
content: Quote from: SiliconWizard on January 22, 2024, 08:57:37 pmLinux is already a core part of every Android mobile phone out there. So basically, Linux is a core part of Google's business worth around 65 billion dollars per year. Then add the like of Samsung, Xiaomi, Huawei, etc

author: Karel
author_rank: Super Contributor
timestamp: January 22, 2024, 11:22:01 pm
content: Quote15 years back, nobody would have believed that but now it's a fact.Today, nobody believes that, in the future, MS will replace the NT kernel with the Linux kernel.To me, I can't look into the future but technically, I don't see any obstacles. Imho it's a matter of money.I believe that, if it's cheaper for them, they'll do it.p.s.: Two years ago MS hired Lennart Poettering (systemd inventor) who was working for Red Hat...

author: PlainName
author_rank: Super Contributor
timestamp: January 22, 2024, 11:59:07 pm
content: QuoteWindows is going to be even more fucked than it is now.

author: Nominal Animal
author_rank: Super Contributor
timestamp: January 23, 2024, 01:41:28 am
content: Quote from: nctnico on January 22, 2024, 06:25:01 pmI agree; it is one of thetechnicalreasons why a kernel swap would be extremely difficult.Quote from: tooki on January 22, 2024, 06:37:20 pmI see your point.. perhaps it is better an example of how to switch OSes completely, and a simple kernel replacement unrealistic unless the kernels are already similar enough.Quote from: tooki on January 22, 2024, 06:37:20 pmI don't think Microsoft could; the Linux kernel is just too different. Perhaps, just maybe, to a microkernel; so they could add their own API and services on top of that. I believe the internal changes needed to the Linux kernel to implement all Win32 APIs would just make it a different kernel altogether.That said, I do notknowthe innards of the windows kernels; I have onlyinferredsome of them, based on the APIs Microsoft has published.

author: Nominal Animal
author_rank: Super Contributor
timestamp: January 23, 2024, 02:06:43 am
content: Quote from: SiliconWizard on January 22, 2024, 08:57:37 pmExactly.To me, this includes the wide variety of Linux distributions, which some feel is a downside and makes proprietary software distribution too difficult. (I've argued about this earlier in different threads here, and while I can describe the techniques to overcome the differences, I still haven't created a practical example.)(WSL and WSL2 I consider very similar to Wine: not everything will work correctly, and for some things you need to go to the real thing, for example via virtualization.)Quote from: SiliconWizard on January 22, 2024, 08:57:37 pmTrue. It seems to weird people out when I mention that very few Linux (kernel or other software) developers actually put any weight on the number ofusersthey have, because it is irrelevant to them. Being 'enticed' with "but you'd get loads of more users that way" reads like "but you get to shovel much more snow on your own that way". It is an ecosystem, with rules to how it works (whenit works; it does not always!), and it is nothing like one might expect or assume.

author: CatalinaWOW
author_rank: Super Contributor
timestamp: January 23, 2024, 05:45:54 am
content: There are two things going on here. The technical problem and the social problem.The essence of the social problem is the OPs demand for a switch to an environment that meets his needs and that he is familiar with. His counterpart is easy to find in the Windows world. I try not to be that person, but I'm not far from it. I am not a software professional or a fanatic software hobby person. I really don't care about kernels, or drivers, or such. I care about simulations and models and photo editing and text editing and all of the end services provided by the machine and the software system.For the most part the Windows system could handle all of my needs clear back at Windows 95, while at that time Linux wasn't up to many of those tasks. Now Linux has largely caught up, but there are issues. All large and powerful software packages have a steep learning curve, and while GIMP can do everything I need, I haven't gotten nearly as far up its learning curve as I have with the Windows counterparts. MS commercial practices have driven me from MS Office to Libre Office, but I still can't use it as well as the old system. And my investment in document automation is totally lost, and as nearly as I can tell in some ways not possible to recreate. This list goes on and on.Both environments share a common problem, although the driver is different in the two environments. Both want continual "improvements", most of which don't have much benefit to me as a standalone user. MS needs to drive new sales, my purchase of an Office Suite 20 years ago is of no business benefit. The Linux world spends an inordinate amount of time on new and shiny. Everyone has their own almost compatible distro, with much emphasis on whether there are rounded corners on windows and other similar cruft. I don't discount the technical improvements in both systems (larger memory models, automatic HW configuration, etc.) but to be honest these are luxuries, not core requirements for my use case. I can also see the need for better security features, but I also can solve that problem pretty easily by isolating my system.A long winded diatribe, but both environments would benefit from a step back and figuring out why anyone wants their product at all. Apple and various hardware vendors have decided that the large market is web shopping and social media. I don't think they are wrong, but neither of those really requires much of an OS.

author: JohanH
author_rank: Frequent Contributor
timestamp: January 23, 2024, 08:13:16 am
content: Quote from: PlainName on January 22, 2024, 11:59:07 pmI don't understand the hatred for this guy. And I've followed the whole systemd debacle since the start, read his blogs etc. I guess, he was too clever and too outspoken for the mob. It for sure brought out all the ugliness you can imagine in the circles; the amount of trolling and hatred by his critics I haven't seen since (except in politics). But what it takes to have development and invention (and society) make huge jumps is guys like him that are visionaries and able to realize the ideas, too. I for my part admire him. If anything, he will do good things at Microsoft.

author: Karel
author_rank: Super Contributor
timestamp: January 23, 2024, 11:00:32 am
content: Quote from: JohanH on January 23, 2024, 08:13:16 amI guess if he should have respected the general "Unix" philosophy that tools should do only one thing and do it good,the reception should have been much better. Instead, he created a monster that wants to do and control everything.What will be his next step? Creating a Linux registry for all settings like windows does?

author: JohanH
author_rank: Frequent Contributor
timestamp: January 23, 2024, 11:10:37 am
content: Quote from: Karel on January 23, 2024, 11:00:32 amThat's just repeating the same conspiracy crap. Can't we just go forward now.

author: PlainName
author_rank: Super Contributor
timestamp: January 23, 2024, 11:30:51 am
content: Quote from: JohanH on January 23, 2024, 11:10:37 amIsn't it looking at what is actually hitting the metal?

author: JohanH
author_rank: Frequent Contributor
timestamp: January 23, 2024, 11:47:41 am
content: Quote from: PlainName on January 23, 2024, 11:30:51 amAt this point the "Unix philosophy" referred to has become a "Unix religion", because it's not based on technical facts or merits, rather on dubious political nonsense. All I see in that camp is bitter old farts, somehow making technical development cross their dusted political views. Just spare me the BS.

author: nctnico
author_rank: Super Contributor
timestamp: January 23, 2024, 12:13:12 pm
content: Quote from: Karel on January 23, 2024, 11:00:32 amThat wouldn't be bad perse. From a maintenance point of view, it is easier to have a singular way of interacting with a system compared to needing to edit several files in several places using several different formats. Look at the sendmail configuration as an example (although I think this program has been created by aliens given the way it needs to be configured).

author: shapirus
author_rank: Super Contributor
timestamp: January 23, 2024, 12:34:34 pm
content: Quote from: JohanH on January 23, 2024, 08:13:16 amIt's very simple. In the context of systemd/journald he: a) went on fixing things that weren't broken; b) did this in a way absolutely hostile to unix philosophy. Either of these is as much of an antipattern as it can possibly get. This, naturally, resulted in creation of a hard to use and troubleshoot abomination, which, worst of all, destroyed any possibility of using an alternative solution in all mainstream linux distros.Hope he now finally feels at home in microsoft. Pity that he did not leave redhat before damage was done.p.s. pulseaudio, OTOH, was actually a useful thing, one that actually made the world better.

author: shapirus
author_rank: Super Contributor
timestamp: January 23, 2024, 12:41:09 pm
content: Quote from: nctnico on January 23, 2024, 12:13:12 pmUnless you want to automate things and set up monitoring, or you are simply an experienced user who understands how to take advantage of the so-called unix way. Plain text logs and configs, separate configs where each file is responsible for a small part of the whole, the "one small program for each task" approach are all better suited for automation and for power users.Windows-style binary logs, configs, and monstrous software systems that try to control everything are natural and welcome in the windows world. They like them there, so keep them there. Don't bring this BS to where it's not welcome, it's as easy as that.

author: magic
author_rank: Super Contributor
timestamp: January 23, 2024, 12:47:48 pm
content: Now the future is clear.Lennart will fork Linux and Windows will become the first operating system based on systemd-kernel.Nobody will be using Ubuntu by 2030, mark my words.

author: JohanH
author_rank: Frequent Contributor
timestamp: January 23, 2024, 01:51:14 pm
content: Quote from: shapirus on January 23, 2024, 12:34:34 pmI strongly disagree. People are entitled to their opinion, but referring to the "Unix Philosophy" doesn't bring any technological arguments. It's not even an agreed upon standard, but "philosophical" arguments. But talking about beating a dead horse. As for a), he was completely free to fix whatever things he wanted. Anyone can write any software that they want. Most people agreed it was great and here we are today. If it's not good anymore in a few years, maybe something else comes along and replaces it. Who cares, it's just a bunch of 0s and 1s. But the "philosophers" had to turn frigging software into some kind of religious debate and hating people for it.

author: Karel
author_rank: Super Contributor
timestamp: January 23, 2024, 02:05:06 pm
content: Quote from: magic on January 23, 2024, 12:47:48 pm

author: shapirus
author_rank: Super Contributor
timestamp: January 23, 2024, 02:49:52 pm
content: Quote from: JohanH on January 23, 2024, 01:51:14 pmI don't agree. It's not just someone's preference, but a set of practical considerations which create specific advantages, some of which I have already mentioned: easier setup, automation, troubleshooting, reduction of requirements for interactive management. There is a disadvantage too: you must know how to cook it right, otherwise you will end up with a tangled mess instead of a powerful tool (sendmail mentioned in previous posts is a good example).There is nothing religious in this. It's purely technical reasoning backed by experience....otherwise, I agree. Everyone is free to write whatever they want. The problem however is when distro maintainers begin forcing their preferred solutions on everybody without offering an alternative. Well, those who want can create their own systemd-free distros. That's how Devuan was born. BTW I actually use it on an embedded system where systemd was undebuggably slow or freezing on shutdown and had some issues on boot. Too bad it doesn't have as many users as mainstream distros, meaning less maintainers and a smaller community.

author: PlainName
author_rank: Super Contributor
timestamp: January 23, 2024, 03:01:11 pm
content: Quote from: JohanH on January 23, 2024, 01:51:14 pmExcept when they don't match yours, apparently.QuoteJust like programming patterns, no? 'Best practices' similar.Besides which, shapirus has given you excellent technical reasons (which you surely already knew but chose to ignore, because).

author: shapirus
author_rank: Super Contributor
timestamp: January 23, 2024, 03:22:56 pm
content: Quote from: shapirus on January 23, 2024, 02:49:52 pm...speaking of which: when will MS replace the tall icon-based crappy Windows taskbar with a no-nonsense button-based taskbar where each button represents exactly one window and have a well-defined action on click: raise a minimized or inactive window or minimize an active window?Before that happens, in case anyone is looking for a solution, like myself, who was speechless (actually no: I did say words that I won't repeat here) after seeing the windows 11 UI for the first time and finding out that it wasn't possible to disable it, here's what I can recommend:- proper taskbar:https://github.com/dremin/RetroBar- proper start menu:https://github.com/Open-Shell/Open-Shell-MenuI spent the effort of searching for them, installing and setting them up even though I use Windows very rarely in a virtual machine. That's how extremely bad and unusable its newest UI is.

author: JohanH
author_rank: Frequent Contributor
timestamp: January 23, 2024, 03:31:28 pm
content: Quote from: PlainName on January 23, 2024, 03:01:11 pmIt's the constant bashing and seemingly hatred of Lennart Poettering that I don't like, not people's technical opinions. When you are unable to keep it at the technical arguments, it becomes a poisonous and disgusting environment.

author: Karel
author_rank: Super Contributor
timestamp: January 23, 2024, 05:00:45 pm
content: Regarding the list of facts presented in the starting post, we can add:- MS hires Lennart Poettering, the inventor and lead programmer of systemd.- MS released Edge webbrowser for LinuxAlso interesting:In October 2018, Microsoft released 60,000 patents to the Open Invention Network members for Linux systems,but exFAT patents were not initially included at the time. There was, however, discussion within Microsoft over whetherMicrosoft should allow exFAT inLinuxdevices, which eventually resulted in Microsoft publishing the officialspecification for open usage and releasing the exFAT patents to the OIN in August 2019.and:Paragon Software Group opensourses their (until then closed/proprietary) NTFS driver for Linux without any objection/protest from MS.Technical difficulties aside, all this justifies the question when MS will replace the NT kernel with a Linux kernel.edit: added Edge webbrowser

author: shapirus
author_rank: Super Contributor
timestamp: January 23, 2024, 05:18:53 pm
content: Quote from: Karel on January 23, 2024, 05:00:45 pmIt will be Lennux, a proper Linux rewritten from scratch.

author: Bud
author_rank: Super Contributor
timestamp: January 23, 2024, 06:12:02 pm
content: Efking hell no, computer boot time will be back to nonsense.

author: asmi
author_rank: Super Contributor
timestamp: January 23, 2024, 09:54:02 pm
content: Quote from: Karel on January 23, 2024, 05:00:45 pmNot anytime soon for sure. Linux kernel is a total mess compared to modern NT kernel, and their propensity to break binary compatibility on just about every kernel release turns driver maintenance into a nightmare, while for NT kernel, even quite old drivers tend to work just fine. Couple that with incredibly slow and convoluted process of upstreaming a driver (which is the only semi-reliable way to ensure your driver won't break down after every other kernel release), and you can see why Windows model is much more appealing. One can get a device driver from zero to release in a couple of months, good luck achieving the same for Linux driver - you'll be lucky if somebody bothers to even look at your PR a year after submission, and then will complain about some BS like a semicolon being in a wrong place, and you will have to go through entire process againWhile Windows kernel interface is mature and stable, and so you can simply compile your kernel once, get it signed - and you're done.

author: Karel
author_rank: Super Contributor
timestamp: January 23, 2024, 11:08:59 pm
content: So, it's not true that, when windows Vista was introduced, new drivers had to be written...Binary compatibility inside the kernel is only important if you support closed source drivers which Linux doesn'tso it's a non-problem. Except maybe for nvidia graphics cards but I'm convinced that if MS would switch to a Linuxkernel, also nvidia would switch to open source drivers like AMD and Intel already do.

author: nctnico
author_rank: Super Contributor
timestamp: January 23, 2024, 11:17:16 pm
content: Quote from: asmi on January 23, 2024, 09:54:02 pmThat is why sensible manufacturers of hardware (or software needing special drivers) distribute their drivers as source code which gets compiled during installation of the supporting software. Take Virtualbox and Nvidia as an example. All the infrastructure to do this exists from the kernel side.

author: shapirus
author_rank: Super Contributor
timestamp: January 23, 2024, 11:17:41 pm
content: Quote from: asmi on January 23, 2024, 09:54:02 pmIronically, Windows NT kernel is much more of Unix way example than Linux, which is indeed an absolutely monstrous monolith now.You're absolutely right about drivers, and that's a big problem in real life, which must be obvious for anyone who has not isolated himself, like e.g. RMS, in a bubble where nothing but FOSS exists and nothing but FOSS has any importance. In reality, the practical impossibility of distributing binary drivers that will work across a wide range of Linux kernel versions is, in addition to userspace problems of a similar nature, a significant hindrance to its wider adoption on desktops.

author: Zero999
author_rank: Super Contributor
timestamp: January 23, 2024, 11:27:37 pm
content: What's the point in binary drivers? The vendor makes money from the hardware, not drivers and they can still distribute the driver source, under a proprietary licence if they want to.

author: langwadt
author_rank: Super Contributor
timestamp: January 23, 2024, 11:38:34 pm
content: Quote from: Zero999 on January 23, 2024, 11:27:37 pmThey might have bought some of the code from someone else so they can't opensource it. The are are afraid the source code would reveal some of their secret sauce in the hardware

author: nctnico
author_rank: Super Contributor
timestamp: January 23, 2024, 11:46:20 pm
content: Quote from: Zero999 on January 23, 2024, 11:27:37 pmNDAs and so on. But having binary drivers is not much of a problem. It is easy to provide a bit of 'glue' software that binds a closed source driver into the Linux kernel using a loadable module. There is a crapload of drivers which do this. Almost every graphics driver is a binary blob for starters.

author: Nominal Animal
author_rank: Super Contributor
timestamp: January 24, 2024, 02:27:13 am
content: Quote from: JohanH on January 23, 2024, 03:31:28 pmI don't hate Lennart Poettering. I'm sure if I met him in person, I'd be happy to have a coffee and talk shop about him. I hope he has a good life.I do hope he stops all software development work, and never does anything involving Linux again, because he does more harm than good.I would like for the large companies (Red Hat, Microsoft) and distros and hislackeys–– those who believe that because something isnewand created by a socially adept woke person like Lennart, it must be better than theoldstuff by those 'racist misogynist long-bearded smellies' –– stop using social and business reasons to push his crap onto all Linux users, and actually look at the miserable quality of his code.You obviously haven't looked at it yourself, nor the history, nor the CVE reports involving his code.Even PulseAudio was horrible crap at the beginning, refusing to co-operate with anything else, until others stepped in and fixed it.Lennart Poettering is very adept at manipulating non-technical people, but his development skills are rather lacking. He also has a very high tendency to reinvent a different shaped wheel –– often defective ––, and throw crap at people who complain.The quality of his attempts at modify the Linux kernel was so bad Linus told subsystem maintainers to not take anything from him (until the quality gets significantly better). This started Lennart's hate towards the Linux kernel developer community, and lead to very difficult situations and fights. For example, at one time he decided to hijack the kernel command line 'debug' term (so that when set, systemd would emit so much boottime debug messages kernels with default dmesg size would fail to boot), arguing that 'the kernel does not own the kernel command line'.His 'kdbus' design idea –– moving the dbus into the kernel –– was so horrible, that even though it was submitted by Greg Kroah-Hartmann (a very friendly, very good Linux kernel developer; done a lot of work to help manufacturers and vendors upstream their drivers and changes into the vanilla kernel), it was deemed to be utterly horrible crap.Do your own research, and do not accept your social feelings as assumptions as the truth here. Do not dismiss my statements here just because you dislike me. Start at saymitre CVE list involving systemd, and look at the mailing lists during the development and adoption of these: it isnot good.In that light, the vitriol is warranted, in my opinion.TheUnix philosophyin this context refers to the tested-and-true design philosophy centered aroundminimalism,modularity,composability,simplicity, andseparation of mechanism and policy, instead of monolithic opaque all-encompassing frameworks like systemd. Monolithic frameworks are insular, difficult to adapt to different use cases, and suffer fromsingle point of failure; and their security and bug track records are worse than those of smaller components, because of the much higher internal complexity.You can think of it however you like, but the fact is, it is one of the rare design principles/philosophies that has weathered the test of time:it works well.There is a reason the Linux kernel and the GNU userspace components that make up for the core operating system, can be used in anything from tiny appliances to supercomputers (all 500 most powerful supercomputers run Linux currently). Modularity and configurability is at the heart of that. (Even though the Linux kernel at run time is monolithic, it is highly configurable and consists of selectable hierarchies of subsystems and modules itself.)Monolithic single points of failure like systemd mean for example that where in the early 00's I could upgrade my system without rebooting, I now have to reboot regularly like a miserly Windows user after a patch Tuesday. I don't like it, and it messes with my options and workflow. That, too, in my opinion warrants at least some vitriol. Targeting it at the product instead of the instigator would be completely silly, like blaming water for the hole in the dam.

author: newbrain
author_rank: Super Contributor
timestamp: January 24, 2024, 06:35:44 am
content: The last thing I need today is some religious debate, so I'll just leave this here.https://youtu.be/o_AIw9bGogo?si=9ce2LL3SUVHKOZRU

author: Nominal Animal
author_rank: Super Contributor
timestamp: January 24, 2024, 07:02:44 am
content: Quote from: newbrain on January 24, 2024, 06:35:44 amThe last thing I need today is a passive-agressive asshole who instead of considering the argument, paints it as irrational religious debate, and attempts to elevate themselves above it by linking to a video on youtube where someone else says their opinion.You, newbrain, should be ashamed of yourself.

author: tooki
author_rank: Super Contributor
timestamp: January 24, 2024, 07:41:29 am
content: Quote from: Karel on January 23, 2024, 05:00:45 pmNo it doesn’t. Those things are orthogonal.If anything, many would argue that Microsoft is acting in its own self-interest by promoting compatibility with its technologies in competing products. That compatibility means Microsoft products stand a higher chance of being selected than before, because everything can work with them.

author: magic
author_rank: Super Contributor
timestamp: January 24, 2024, 09:08:23 am
content: Butwouldn't you agreethat it is a logical change and only a matter of time?As for binary drivers, systemd-kernel will be refactored as a microkernel, with stable subsystem interfaces based on message passing. You will write your driver to process well formed UTF-8 INI messages and respond in kind. No ABIs to worry about, and Rust.NET (coming soon from Microsoft Research) drivers will seamlessly work on all architectures, present and future. For customers with legacy hardware, NT kernel will run as a service, allowing existing Windows drivers to be used.Quote from: Nominal Animal on January 24, 2024, 02:27:13 amI disagree. Considering recent trends in Windows he could only make it better.

author: newbrain
author_rank: Super Contributor
timestamp: January 24, 2024, 10:22:58 am
content: Quote from: Nominal Animal on January 24, 2024, 07:02:44 amThis is not acceptable. Kindly go fuck yourself.That said, my post was admittedly sarcastic/tongue in cheek and I should have made that clear.Benno Rice's opinion on systemd and Poettering, OTOH, is the important thing, and I find it quite worthy of being listened to: don't let the good part of post go to waste.

author: nctnico
author_rank: Super Contributor
timestamp: January 24, 2024, 10:42:32 am
content: Quote from: newbrain on January 24, 2024, 06:35:44 amAgreed. Let's not re-iterate a debate that has been long gone & done. If everything that Lennart made is so bad, then why did his software end up in so many Linux distributions? I refuse to believe all those people are a bunch of idiotic sock puppets without any critical thinking skills for themselves. And who cares about how the code looks like? Some people can get totally worked up about C++ while the majority of the programmers can create excellent software using C++.

author: Nominal Animal
author_rank: Super Contributor
timestamp: January 24, 2024, 11:10:48 am
content: Quote from: newbrain on January 24, 2024, 10:22:58 amYou started it yourself, by calling my argument "religious". I find that extremely, extremely offensive and aggravating.It's just the same thing when I pointed out when Stephen Elop became Nokia's CEO, that his past career shows he is good at maintaining status quo but horrible at developing new products, I was called a "Linux conspiracy theorist". Fuck that; that is just social games and painting an unwelcome but rational argument as irrational.My opinion is irrelevant, and you can call it whatever you like. But when you call my argument –– the post where I describe the underlying reasons for my opinions ––, "religious" or "fanboyism" or "conspiracy theory", you get me very, very angry.Quote from: newbrain on January 24, 2024, 10:22:58 amThen saythat, instead of painting the entire argument as "religious".

author: coromonadalix
author_rank: Super Contributor
timestamp: January 24, 2024, 11:20:13 am
content: here we go againi noticed recently a lot of arguments on many threads and they end up closed ...................CALM DOWN

author: Nominal Animal
author_rank: Super Contributor
timestamp: January 24, 2024, 11:28:06 am
content: Quote from: nctnico on January 24, 2024, 10:42:32 amBecause he is socially very adept, as I already described.It is at the core of the "negativity" against Poettering. To those with mediocre to poor social skills –– and that covers a large majority of the FOSS software developers (because it is one arena they can shine, and the work is their hobby, with no social life to impact on their productivity) ––, it is like having an extremely attractive co-worker who gets all the raises and bonuses just because of how they look and interact with others, even when the quality of their actual work they get paid for is horrible, always needing others to come after them and clean things up.This is all very well documented in Debian mailing lists, when Debian decided to adopt systemd. It was a social decision, not a technical one.Daniel J. Bernsteinis just about the exact opposite of Poettering. Not only is his code output of very high quality (the bug density is orders of magnitude closer to zero than in general), but his work in math and cryptography is excellent, too. Yet, many consider him a nobody. Before the turn of the millenium, qmail was orders of magnitude better (faster, fewer bugs) than sendmail, but just about all sendmail "fanbois" (that I knew of back then, all were mail server admins) hated DJB and qmail with a passion. Similarly with djbdns and dnscache vs. bind.He fits well within the math and crypto academia (they're all weirdos there anyway), but all software folks I know ignore him, because he hasn't marketed himself as well as the likes of Poettering.It is the loudest squeaky wheel that gets the grease; the one that works quietly without fault for decades is always forgotten.

author: nctnico
author_rank: Super Contributor
timestamp: January 24, 2024, 11:41:53 am
content: Well, there are many things on this world which are technically inferior to alternatives (like VHS video tapes, electric cars, MS Windows, etc ,etc) but got hyped by people who got very rich of it. But it takes people buying the products to actually generate that money. Maybe technology in itself is not so important as you think.And I don't think implementing systemd on any Linux distro is a result of social engineering but based on the simple fact that systemd is more advanced and a better fit (from a maintenance perspective) for modern day systems compared to the old sysv init. Regardless who wrote it.

author: newbrain
author_rank: Super Contributor
timestamp: January 24, 2024, 12:51:01 pm
content: Quote from: Nominal Animal on January 24, 2024, 11:10:48 amSince you blocked me, here is the text of the PM I tried to send you. The argument is closed for me.Quote

author: magic
author_rank: Super Contributor
timestamp: January 24, 2024, 04:01:27 pm
content: Quote from: nctnico on January 24, 2024, 11:41:53 amYes, it gained entry into distribution by being marginally less PITA than sysvinit, and then expanded into an all-encompassing monstrosity.Funny than Nominal mentioned DJB and DNS, because at one point systemd decided that they need to build their own DNS cache as well (obviously, everyone knows an init system needs one) and ended up repeating well known mistakes, bugs and security vulnerabilities that have long been studied and resolved by everybody else. Like, they could have avoided it by literally asking on StackOverflow "what rookie errors to avoid in a DNS implementation", maybe even by typing it into google.And that's how Lennart's projects rise: bait distribution with promises of solving known problems, then dump loads of overengineered and unproven solutions on them and use others' production systems as testing sandbox.Of course you get what you pay for, and that's why even free isn't cheap enough for me to buy anything from this guy. This and his arrogant attitude that everything is other people's problem, even if it could be better solved by systemd than anyone else. I recall arguing with Lennart personally about one of those things, utter waste of time.

author: tooki
author_rank: Super Contributor
timestamp: January 24, 2024, 05:05:28 pm
content: Quote from: Nominal Animal on January 24, 2024, 11:28:06 amJust to be clear, though: most open source software development today happens within the scope of people’s jobs. The days where most of it was coding people did on their own time are long gone.See e.g.https://www.redhat.com/en/blog/evolution-open-source-contributors-hobbyists-professionals

author: Karel
author_rank: Super Contributor
timestamp: January 24, 2024, 06:39:31 pm
content: My work is also my hobby. Am I a hobbyist or a professional? Or both?

author: nctnico
author_rank: Super Contributor
timestamp: January 24, 2024, 06:51:20 pm
content: Quote from: Karel on January 24, 2024, 06:39:31 pmDunno. You likely never retire though...

author: Nominal Animal
author_rank: Super Contributor
timestamp: January 25, 2024, 06:36:44 am
content: Quote from: nctnico on January 24, 2024, 11:41:53 amSysV init is the wrong comparison point, because although it was still widely in use, it was already being superceded by much better init systems.At that point, we already had Upstart, Runit, and OpenRC in wide use for a number of years. (Ubuntu 6.10 to 14.10 and Fedora 9 to Fedora 14 used Upstart by default, for example.)The way systemd requires one to discover services via dbus instead of the service supervisor or init knowing whether a service is active or not –– I do not mean whether the service daemon isrunning, but whether it is providing specific services or not ––, is extremely fragile. (This is crucial for dependency-based inits that can start services in parallel, thus speeding up the startup process significantly.) It would be much better to have a public API (not ABI) for services to announce their state changes –– although because of some oddball services, this interface should be async-signal safe (available even from signal context, which excludes most of standard library facilities) –– which would be both modular (because the actual implementation can vary from dbus to whatever else) but also allow future enhancements.Because systemd developers are against init agnosticism (they actively object to patches that would allow other init systems in e.g. Debian, and prefer to make packages they subsume systemd-only), we are stuck in the 2010 view of what an init system should be like on Debian- and Fedora-derivatives. Fortunately, there are still distros that try to support others (which means they have to patch systemd themselves, which is not optimal –– staying to the vanilla upstream is typically a better choice), like Devuan and Gentoo and others. It is notable that Devuan is not the only derivative Linux distribution that supports other init systems unlike their source; Artix is similar derivative from Arch. I have not used Alma Linux myself (because I no longer maintain HPC clusters or server-class machines), but I've been told it too supports other init systems besides systemd.The idea that systemd is anywhere near the top quality/technology in init systems is ridiculous to anyone who has actually compared it to openrc, runit, or s6. (Anyone familiar with DJB will be delighted at s6 and its implementation.)It is simply the most popular. If you think popularity and quality are correlated, I think StackOverflow is a better place for you to interact, than here where the actual facts tend to matter more. If you accept the popularity argument, then you'll see from my previous posts how that and the observed technical inferiority has directly lead to the 'Poettering hate'.It is not personal, it is exactly about his output and interactions with others.That said, as long as I can choose my init system and several are actively developed, I'm happy. I'm even neutral-to-happy that systemd exists, because it is better than sysv, and it suffices for many people (and it therefore is a valid tool).To circle back at the topic at hand, "replacing the kernel in Windows [with Linux]", this init sidetrack is actually quite illustrative.It takes a lot of extra work to make services work with a different init system than they were developed for, unless the service is trivial, or designed to be init-agnostic. We currently do not have an init-agnostic POSIX/Unix/BSD/Linux service state announcement API at all, so practical init-agnosticism is only possible for trivial services.Similarly, run-time-monolithic kernels like Linux and the one Windows uses have their own syscall APIs, on top of which lay (userspace) libraries and services, all with a set of unstated assumptions and expectations tightly interwoven throughout the libraries and the kernel. And there are external companies, driver vendors et cetera, that sometimes depend on very little known quirks of these libraries and services.As to say Microsoft's ability to refactor or rewrite their libraries and services to work with a completely different kernel, one with a different set of assumptions and expectations and approaches, I'd like to point to the content of the OOXML standard and its attribute definitions (for example,autoSpaceLikeWord95,useWord97LineBreakRules,useWord2002TableStyleRules). No, there is no documentation as to what these actually mean, other than their name: they mean exactly what the name says, nothing more. Sure, this is a completely different business unit, but I do believe it is indicative of thecultureof howquiet knowledge(like the internal design approaches of services and libraries) is segregated and likely often documented only as the implementation itself. I could be wrong, though, never having worked for Microsoft myself.

author: Nominal Animal
author_rank: Super Contributor
timestamp: January 25, 2024, 06:59:41 am
content: Quote from: newbrain on January 24, 2024, 12:51:01 pmNote that I only block members when I feel I cannot interact in a mutually beneficial way. I was way too angry to interact with you, that's all; I could not have responded to the private message in any meaningful way at the time. I've calmed down now.Quote from: newbrain on January 24, 2024, 12:51:01 pmBeing labeled "religious" or "zealot/fanboy" or "conspiracy theorist" is one of the things that gets me unreasonably angry. It stems from both my intent in interacting with others (more that in next paragraph), and past experiences, having been exactly right (because of rational analysis, not religion or belief in some silly conspiracies), but dismissed with a similar label; with afterwards the exact same people telling me to my face that "nobody reasonable could have predicted that".Reason is what I always try to apply. My opinions are worth absolutely nothing; but the reasons for those opinions are valuable, because they can be objectively evaluated and argued about. Ialwaystry to explain those reasons, because arguing about opinions is less than useful –– it only generates strife, or logical fallacies like argument from authority –– but arguing about the reasons for opinions is informative and an opportunity to reflect, compare, and learn.Quote from: newbrain on January 24, 2024, 12:51:01 pmBecause I got so angry.Avoiding an argument by labeling it as ridiculous or "religious debate" is one of those social discourse tricks that makes it easy to manipulate how others perceive something, while avoiding the rational-technical discussion of the points in said argument. Here, me pointing out that hey, this isn't hate towards a person, but about their work output, and how it is perceived as being promulgated primarily via social discourse and social interaction tricks rather than technical merit, was simply brushed aside with a label "religious debate".Perhaps that does not anger others, but myself, who see rationality and analytical thought as being the only thing keeping modern societies functional and occasionally out of war, and the main antagonist to that to be dogmatic and religious instinct-, feeling-, and belief-based "thinking", it was an insult I could not ignore. It struck me at my very core.

author: magic
author_rank: Super Contributor
timestamp: January 25, 2024, 07:09:35 am
content: 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 minutesAnd my first systemd experience: failure to boot, because a systemd component crashed when files it wrote on previous boot attempt were truncated due to hard reboot. Maybe they fixed this particular issue by now, I didn't check.

author: Karel
author_rank: Super Contributor
timestamp: January 25, 2024, 07:30:32 am
content: Quote from: magic on January 25, 2024, 07:09:35 amTry OpenSuse Leap 15.4, that happens about 50% of the time when shutting downAlthough it shutsdown after 2.5 minutes, it's annoying...Leap 15.5 behaves better now.

author: Nominal Animal
author_rank: Super Contributor
timestamp: January 25, 2024, 09:07:27 am
content: The reason behind portability across Unix/BSD/Linux isSingle Unix Specification and POSIX, which assume a very specific set of services/features the kernel must provide, includingsignals. It also kinda-sorta assumes C, becausePOSIXand SuS system interfaces are defined in terms of theirC bindingsas 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 tointeroperabilitybetween kernels here.)

author: nctnico
author_rank: Super Contributor
timestamp: January 25, 2024, 09:13:18 am
content: 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.

author: shapirus
author_rank: Super Contributor
timestamp: January 25, 2024, 09:20:36 am
content: Quote from: magic on January 25, 2024, 07:09:35 amIt'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 arestillnot 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.

author: shapirus
author_rank: Super Contributor
timestamp: January 25, 2024, 09:26:12 am
content: Quote from: nctnico on January 25, 2024, 09:13:18 amThey 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.

author: Karel
author_rank: Super Contributor
timestamp: January 25, 2024, 09:49:23 am
content: Quote from: Nominal Animal on January 25, 2024, 09:07:27 amIf one can run Linux programs on windows, one can also run windows programs on Linux. Shouldn't be too hard for MS.Imagine a new windows OS based on a Linux kernel with some translator or virtualizer for classic windows programs.If the cost of implementing such a solution is below the cost of keeping and maintaining the NT kernel, I wouldn't be surprisedif they would do that. Everything to please the shareholders...

author: Karel
author_rank: Super Contributor
timestamp: January 25, 2024, 09:54:41 am
content: [conspiracy mode on]MS enforces the TPM >=2.00 so that, in the future, nobody can tamper with the Linux kernel(despite being open source, remember the term "Tivoization"?) used by future versions of windows.https://en.wikipedia.org/wiki/Tivoization?useskin=vector[conspiracy mode off]

author: magic
author_rank: Super Contributor
timestamp: January 25, 2024, 10:20:23 am
content: I'm starting to grow concerned that this isn't a joke thread and you might actually believe itThis paragraph is all you need to know about why no attempt at interoperability with Windows has ever succeeded fully, and none ever will.Indeed, even Windows NT can't run all software that Windows 9x would run.Quote from: Nominal Animal on January 25, 2024, 06:36:44 am

author: Nominal Animal
author_rank: Super Contributor
timestamp: January 25, 2024, 10:38:36 am
content: Quote from: nctnico on January 25, 2024, 09:13:18 amThat's what I pointed out too, noting that changing the entire OS ismorefeasible than just changing the kernel to a completely different one.Quote from: Karel on January 25, 2024, 09:49:23 amSure you can –– in a VM, running Windows in a virtual machine, like WSL2 does for Linux. The main difference is that the Linux kernel runs happily headless, without any kind of display or input devices.Note that MSYS2 and Cygwin are notbinary-compatible, only support libraries and services that one can use to compile POSIXy/Linuxy C sources to work in Windows. There are many quirks from devices to filesystem name case insensitivity that differs from typical POSIXy systems at runtime.Quote from: Karel on January 25, 2024, 09:49:23 amI've tried to show the reasons why I believe the cost of implementing such a solution would be immense, unrealistic.Creatinga new Windows OS based on a microkernelor a BSD-derived kernel, capable of running older Windows binaries (including all current OS APIs/ABIs and services) via virtualization (a derivative of the existing Windows kernels designed for backwards compatibility), now that would be interesting, and technically at least somewhat feasible.However, it would require a deep change within Microsoft culture, though, making it unfeasible from a practical point of view. If you look at Apple and early OS X, their attempts at making many things open source, they basically failed; I believe the underlying reason is that the open source approach was simply not compatible with the Apple company culture, costing more than it benefited the shareholders. (We can discussCUPSand whether it is an exception to this, but we'd need to look at its history to correctly assess it.)What I believe would kill such efforts, is Microsoft's dependency on keeping major proprietary software houses and hardware vendors (developing their own drivers) on board. Switching to a more POSIX-like kernel and interfaces would mean they'd have to port their code to that, which would lead to porting to additional systems like Linux (and obviously Mac OS, too) much easier, risking Windows' market share on the desktopin the future.It would be too risky for the shareholders, I believe, no matter how interesting such a solution would be technically.

author: Karel
author_rank: Super Contributor
timestamp: January 25, 2024, 11:04:57 am
content: Quote from: Nominal Animal on January 25, 2024, 10:38:36 amAnd this is the first argument in this thread that makes sense from a business perspective.All the rest is only about how difficult it is (technically). MS has done many big and costly changes,either under the hood or above and some of them weren't welcomed by the users.I believe this is really something that they could do. I'm not sure if it would make sense to me but Iwouldn't be surprised if they do it. All the signs are written on the wall.

author: nctnico
author_rank: Super Contributor
timestamp: January 25, 2024, 11:34:49 am
content: Quote from: Nominal Animal on January 25, 2024, 10:38:36 amThis is under the assumption Microsoft makes serious money from Windows which is something I doubt. Also keep in mind the entire dot-net ecosystem that Microsoft maintains to develop software for Windows. It could be benificial to let go of a lot of dead weight like that and concentrate on sectors which are actually profitable. Looking at the numbers here, you can see the income from Windows is not significant:https://www.kamilfranek.com/microsoft-revenue-breakdown/

author: PlainName
author_rank: Super Contributor
timestamp: January 25, 2024, 01:39:24 pm
content: Quote"Loss leader"It would be about keeping the user in the Microsoft ecosystem.

author: Zero999
author_rank: Super Contributor
timestamp: January 25, 2024, 05:03:59 pm
content: I admit I lost track of this thread around a third of the second page of replies. . .I have noticed that Linux vs Windows threads often end up in bickering. Why is this so? It's almost like religion or politics. This makes no sense. They're just operating systems!

author: PlainName
author_rank: Super Contributor
timestamp: January 25, 2024, 05:26:48 pm
content: Anything with subjective views will have fans and detractors, and most fans/detractors have fixed opinions that they must get the other side to accept.Come to think of it, objective views often go the same way too. Those things that don't end up in flame wars are just things no-one gives a toss about

author: tooki
author_rank: Super Contributor
timestamp: January 25, 2024, 09:03:42 pm
content: Quote from: shapirus on January 25, 2024, 09:26:12 amNonsense — that’s just typical non-fact-based, history-ignoring Apple bashing.(FYI, I was working as a full-time on-site Mac consultant during the transition from Mac OS 9 to Mac OS X.)The switch to Mac OS X did, in fact, receive significant resistance, with many users outright refusing to switch for yeeeaaaars, and some did in fact jump ship to Windows XP systems. It was a rough transition, with the overwhelming majority of existing apps running only within the “Classic” subsystem (a loosely integrated virtual machine running a complete instance of Mac OS 9), and with the first native Mac OS X ports of many apps being really disappointing. (*cough* Quark Xpress *cough*) Many peripherals never got Mac OS X drivers at all, resulting in the common sight of, for example, a graphic design agency having one old Mac OS 9 system as the “scanning station” for their expensive slide scanner.While Mac OS X eventually became a very worthy successor to classic Mac OS, it really wasn’t until around 10.2 that it was complete enough to be tolerable as a full-time OS for most people, and until 10.3 that it was mature enough to really be good enough for practically everyone. 10.0 and 10.1 were really more like extended betas, in that they were just missing too many features and third party apps. (One bit of praise, though, is that even the early versions were very, very stable. Even the developer releases were surprisingly devoid of crashes!) It is very telling that it wasn’t until the very end of 10.2’s life that new Mac models lost the ability to boot directly into Mac OS 9.For really long-time Mac users like me (since 1992 in my case), there are still aspects of classic Mac OS that I sorely miss. (I don’t think any file manager on any platform, including modern macOS, is quite as nice as the classic Mac OS 9 Finder.) Don’t get me wrong, I wouldn’t want to go back to the crashiness of classic Mac OS. But in terms of user interface design, it was really, really good.Where Apple stands alone, head and shoulders above everyone else, is in changing the hardware platforms their software (including the OS) runs on. The switch, under classic Mac OS, from 68K to PowerPC was very low-friction, and the Mac OS X-era switch from PowerPC to Intel was goddamned seamless, as was the switch to Apple Silicon. I find it really, really impressive that both classic Mac OS and Mac OS X disk images will not only work on different supported models, but across hardware platforms. (I.e. a single install of, say, 10.5 will run on 32-bit PowerPC, 64-bit PowerPC, x86, and x64, running optimized native code on all of them.) Apple has mastered the “fat binary” as no one else has. Mac OS X of course is the direct descendent of OpenStep (née NeXTstep), which itself was born on 68K and then ported to x86.Microsoft, on the other hand, has been extremely adept at maintaining binary compatibility with very old applications, going to heroic lengths to keep even poorly written apps running well. If Apple can swap out the hardware platform without you noticing, it’s Microsoft that can swap out the core OS without you noticing. The whole “swapping out the NT kernel for Linux is impossibly difficult” people forget that the Win32 APIs have run on at least three disparate kernels: DOS (both in WfW 3.11 and Win 95/98/ME), WinCE, and NT. (And NT is itself basically a reimplementation of the VMS kernel from DEC, which is technically very different from DOS.) I’m not sure if Win16 runs on WinCE, but it did run on both DOS- and 32-bit NT-based Windows.When I say “heroic”, I’m not kidding: when prepping Win 95, Microsoft found tons of popular apps that relied on undocumented behavior, and in some cases outright bugs, in Win 3.1. Rather than have those poorly written apps fail on Win 95, they actually built in compatibility shims for those apps, one by one, to keep them running. For example, for some popular game, the compatibility shim actually changed how the memory manager worked, to make it reproduce some weird bug in 3.1. The downside to this approach is that it unwittingly encouraged developers to ignore disciplined coding practices. This really came to bite them when Vista came out and tons of apps broke because they were doing things they never should have done. (Apple was, and is, the opposite: their developer docs expressly state to avoid using undocumented behaviors, because those can break compatibility. If you follow the rules it’ll work and/or recompile going forward, but if you break the rules, you can expect your software to break in the future.)

author: tooki
author_rank: Super Contributor
timestamp: January 25, 2024, 09:08:32 pm
content: Quote from: nctnico on January 25, 2024, 11:34:49 amHow the hell does LinkedIn make more than half as much revenue as Windows?!?If I’d been asked to guess, I would have assumed that LinkedIn was somewhere under a percent, not 7%!!

author: asmi
author_rank: Super Contributor
timestamp: January 26, 2024, 02:19:01 am
content: Quote from: Nominal Animal on January 25, 2024, 10:38:36 amModern NT kernel already has some elements of microkernel design - for example it can survive graphics driver crash and restart the driver without rebooting OS (and no BSOD of course), also NT design has a concept of executive subsystems which can run concurrently and each provide it's own userland - Win32 API is provided by CSRSS subsystem, which is just one example of such subsystem - AND since those subsystems run as usermode processes (as far as kernel is concerned), OS can simply restart it if it crashes. Think about running multiple different "init" subsystems in parallel in Linux without one getting in the way of another, and having ability to restart any of them on the running system without affecting the rest of the OS. This has been a design feature of NT kernel since the very beginning.

author: SiliconWizard
author_rank: Super Contributor
timestamp: January 26, 2024, 06:17:52 am
content: Yes, Windows NT has been a hybrid kernel right from the start. It got designed at about the same time as Linux, and Andrew Tanenbaum himself thought that it was a better design than Linux. Of course he was somewhat biased by its promotion of microkernels, but the monolithic nature of Linux was never really seen as particularly modern. Linux does work remarkably well in spite of that, and I'm glad it exists, but I wouldn't call its design "modern" by any means.You'd need to know the Windows NT kernel extremely well to figure out if it's actually worth replacing it with something else at this point, assuming for the same purpose (ie. essentially desktop computing, I'd forget about Windows server, which may be another matter). Very few people, even working at MS, actually now it that well - it's a rather small circle, so I'd be surprised if those here that seem to claim having a definite opinion about it did. Eh, who knows.But back on track - for this thread - in the end, it looks like the OP's question was mainly triggered by the hiring of Lennart Poettering by MS, and once he stated that point, in turn it triggered some kind of flamewar and insults, which is unfortunate, but it was to be expected. IMO, the very reason this thread was started made it "political" by nature. Just a thought.

author: Karel
author_rank: Super Contributor
timestamp: January 30, 2024, 07:26:50 am
content: To use the new windows AI Studio tool, you must first install Linux. No, it's not a jokeNever underestimate the importance of Linux, even for windows development.https://www.windowscentral.com/software-apps/to-use-the-new-windows-ai-studio-tool-you-must-first-install-linux-no-its-not-a-jokehttps://marketplace.visualstudio.com/items?itemName=ms-windows-ai-studio.windows-ai-studio&ssr=false#overview

author: PlainName
author_rank: Super Contributor
timestamp: January 30, 2024, 09:34:27 am
content: The strangeness is that more cross-development isn't done. Developers should be using the best environment for developing, which isn't necessarily the target. I've done ground-up Linux from source on Windows and that worked a lot better than if I'd tried the same from Linux (or, horrors of horrors, on the target device, which is what seems to be the rage). Were I embedded in Linux and comfortable with the tools, I would prefer to target Windows from there. Currently I'm targeting Android from non-Android - perhaps I should be doing it all on a phone.

author: magic
author_rank: Super Contributor
timestamp: January 30, 2024, 09:48:02 am
content: It's not developing for Windows on Ubuntu, but using Ubuntu in WSL to run software components for development for Windows on Windows. I guess it means there is some ML library somewhere which hasn't been ported to Windows yet so they came up with this kludge.Building Linux on Windows sounds like an exercise in applied masochism.

author: PlainName
author_rank: Super Contributor
timestamp: January 30, 2024, 03:51:38 pm
content: QuoteTried it? Things have moved on since then, but if I would happily do it again with current stuff (but not current Windwos). Doing it that way is a bit like doing embedded systems using a standard C compiler as opposed to using the Arduino IDE.

author: Karel
author_rank: Super Contributor
timestamp: February 03, 2024, 10:43:34 am
content: I forgot to mention, MS has also released Visual Studio Code for Linux.https://en.wikipedia.org/wiki/Visual_Studio_Code?useskin=vectorAnd the list goes on...

author: Nominal Animal
author_rank: Super Contributor
timestamp: February 03, 2024, 07:08:44 pm
content: Quote from: PlainName on January 30, 2024, 03:51:38 pmI think of it as the opposite, since to me, a standard C compiler is a native GCC or Clang; not MSVC++ or the various GCC/Clang ports to Windows.I do think of Intel CC as having a standard C compiler also, but building the Linux kernel with it can be iffy.That said, I've used GNU toolchains so much not even autotools fazes me. In any case, they're just tools: whatever works and works for you is okay in my opinion, even if I myself don't/wouldn't do it with those.

author: PlainName
author_rank: Super Contributor
timestamp: February 03, 2024, 09:02:26 pm
content: It was a standard gcc, not Microsoft rubbish.QuoteWhat's up with a port? They do the same thing, using the same code, producing the same result.

author: Nominal Animal
author_rank: Super Contributor
timestamp: February 03, 2024, 09:28:47 pm
content: Quote from: PlainName on February 03, 2024, 09:02:26 pmCase-insensitive file system support, some character set issues wrt. files with non-ASCII characters and so on, wide string constant character set support (UTF-16 isnota valid wide character set), and so on. AIUI the Linux kernel does not currently have files or directories in the same directory only differing by name case, nor any using non-ASCII characters in their name, nor uses wide character strings in the sources, but those won't be true in general.By definition, the behaviour of the toolchain differs.Note, however, that there is absolutely nothing wrong in using a port, or using Windows. It does mean one has to consider the target OS/arch peculiarities before blaming the project or sources, but that's it. I just perceived your analog as weirdly upside-down compared to my own views and experiences, where Windows is the more Arduino IDE -like system, and Linux/BSDs/POSIXy systems the true tool for basing software development on. Not a value judgement, only my current view, mind you.

author: PlainName
author_rank: Super Contributor
timestamp: February 03, 2024, 11:26:52 pm
content: QuoteThe reverse. We did consider running Linux workstations (and, later, a new chap was Linux and useless, but I guess he would have been whatever OS), but our tools which we knew like the back of our hands were Windows and many things we used didn't exist on Linux.But the primary driver, or rather the decider, was that we didn't want to end up as happened with a previous product where some tool got changed and product support basically had to stop. So building everything on Windows ensured that there was nothing that was dependent on the host OS - with Linux it's a bit like (on Windows) loading a registry branch and trusting that neither will the real registry be affected, nor the new branch being affected by the existing registry. So anything we used - from uboot through the rootfs, apps, kernel drivers and all the tools necessary to create those - was built entirely from source with zero outside dependencies. But we were embedded system developers and the norm was that the target was not the development host.[Speaking of which, IMO if web developers want to try their stuff out on their development PC they should be forced to use a Pentium.]

author: tridac
author_rank: Regular Contributor
timestamp: February 04, 2024, 12:02:29 am
content: Here's some technical arguments, with software engineer hat on. Robust software systems are designed by partitioning, abstraction and encapsulation of functional layers, with well defined interfaces between them. A set of bricks to build a cohesive whole. At the root of the tree, a single kernel is responsible for managing system resources, such as memory, storage and io devices. Any of the bricks and layers could be replaced with something completely different, so long as the interfaces and functionality between them remained the same. The unix and variant operating systems were designed using such classic software engineering principles. Compact. lightweight and robust, nothing that is not needed, with a complete and visible audit trail right across the system. The downside being that the various parts of the system and their startup, each have their own config files, making it more difficult to setup and manage, without operating system theory awareness.The issue is of course, that the admin tools and setup files, like the C language unix is written in, are pretty low level and require a level of skill and basic os knowlege to manage them. Some os's, like Solaris and FreeBSD, overlay a service admin layer over the basic system, to make it easier to manage. On Solaris,, that's svcadm and svcs, FreeBSD, the service utility, AIX, smitt and others. The key thing being that those tools are just an added layer on top of what is already there, so it's still possible to manually edit configurations, look at plain text log files etc. Systemd, a kernal managing the kernel, on the orher hand, seems to have it's entrails into every part of the system, from startup, right through to the X desktop. A nightmare to debug. Hence, abusing not only system enginering, but also basic os design principles.As a cynic, I saw systemd as a power grab to gain more influence into the direction of travel for Linux, but most distros have succumbed to it. I guess those that pay the piper, (funding) call the tune. In summary: Over complex, overblown, and uneccessary...

author: CatalinaWOW
author_rank: Super Contributor
timestamp: February 04, 2024, 12:30:46 am
content: Quote from: tridac on February 04, 2024, 12:02:29 amAbstraction. Encapsulation. Well defined interfaces. Yep, that makes for reliable modules. Each little piece has no confusion about what to do and how to do it.But ah that downside. All those config files, that require a system expert to understand and manage. So the overall system has the same defects as the spaghetti code that all of these design principals were intended to eliminate. That old spaghetti code was a rice bowl for those who developed the code and therefore the concept was strongly defended by those whose rice bowls were threatened. Same thing seems to be happening here, just the rice bowl has changed.Some day a genius is going to formalize a theory of complexity which says that complexity is conserved. Eliminating it in one place adds it somewhere else.

author: PlainName
author_rank: Super Contributor
timestamp: February 04, 2024, 02:05:04 am
content: QuoteWhy? You could have an app that deals with all that stuff - major Linux apps tend to basically be front ends to many sub-apps, after all. The normal user wouldn't need to dick with the config files but just use the config app to manage the config. Hell, it could even be (gasp) a GUI! But those files still exist if a guru wants to roll their sleeves up and surgically excise something.Someone around here pointed to an open source PDF printer (https://www.bullzip.com) and if you look closely it's requires a handful of sub-apps installed in order to work. Why is that any different to managing configs, except in scale (and looking nice)?

author: Nominal Animal
author_rank: Super Contributor
timestamp: February 04, 2024, 03:03:11 pm
content: Quote from: CatalinaWOW on February 04, 2024, 12:30:46 amIt is not the complexity of systems, it is the complexity of interactions. Humans do not do "simple".Quote from: PlainName on February 03, 2024, 11:26:52 pmThat's the difference between us: for me, it is exactly the reverse.(And do note that I was a very heavy Windows user in the '95-NT era, with commercial licenses to several software packages like Photoshop and Macromedia Director. So I'm not saying this as someone looking at Windows from the outside; this is just because of my own experience and having shifted from Windows to Linux in the early noughties.)Quote from: PlainName on February 03, 2024, 11:26:52 pmYup. When I did that myself around the turn of the century (for servers I maintained myself, on the same architecture/not cross-compiling), I participated inLinux From Scratchto understand all those dependencies and how to avoid say gcc and glibc "leaking" from the host to the target. Cross-compiling solves that, but for more complex software packages (especially with autotools trying to detect what is available on the target by scanning the host) it is somewhat more work to get right.Today, it is extremely useful when you target ARM-based appliances (routers etc; OpenWRT cross-compiles everything) and SBCs, using much more powerful many-core x86-64 as a build host, so the skills and understanding are still very applicable. Not many who do such integration commercially understand the issues, though – looking at their SDKs and GPL'd parts of their tree, Asus routers being a particularly painful example – so I do often recommend reading LFS to understand the core basis of Linux integration, and associated issues.Quote from: CatalinaWOW on February 04, 2024, 12:30:46 amAgreed!Single- and dual-core SBCs are a good alternative for today; as are Chromebooks and similar. If you look at some of the self-contained examples I've discussed here, like myFinite Impulse Response Analysispage, you'll notice that the calculation work is not done in the event handler, because that would freeze the UI, but in a "background" JS triggered by a timeout. Current JS engines are very efficient and fast, and they prioritize the event handlers over background/timeout events, so it works fine, just slower, even on slow machines. (This was in the context of using browsers for such tool pages, requiring no internet connection, everything contained in a single file that works fine even locally.)

author: Karel
author_rank: Super Contributor
timestamp: February 08, 2024, 10:28:19 am
content: - MS has implemented SSH client in windows powershell.- MS will implement the "sudo" command in windows powershell.https://www.phoronix.com/news/Microsoft-Windows-sudohttps://www.phoronix.com/news/Windows-SSH-OfficialI have no doubts about what MS is planning to do...

author: nctnico
author_rank: Super Contributor
timestamp: February 08, 2024, 10:49:41 am
content: Quote from: PlainName on February 04, 2024, 02:05:04 amSuch a GUI tool will work much better when the config files are stored in a singular entity compared to a whole bunch of seperate files spread across the system which may even change format for no good reason. Gnome already has a configuration file like that.

author: tooki
author_rank: Super Contributor
timestamp: February 08, 2024, 11:28:38 am
content: I dunno. That’s basically what the Windows Registry is, and I think that’s proven to be a mistake in the long run. Individual config files, located correctly for the scope they should apply to, seems like the better approach IMHO.