Win7 won't be open sourced for the same reason that makes nearly any large closed-source software project nearly impossible to re-license: it's packed full of licensed code and libraries that don't belong to MS.
Of course it's a PR trick, anyone with even the slightest experience in software development can figure out that it's a lot of work to open-source a larger project. Also considering what's mentioned in the article, plenty of this code is probably still in use in later Windows versions which are still sold.
I don't know about stupid, but perhaps woefully out of touch. In 2020, they're still trying to fight fights from the 1990s, using tactics that haven't really worked since the 1990s.
Well, in 2020 people are more sensitive to privacy issues, malware and spyware are still much easier to hide in closed source software, and bugs are much easier to correct if one has the sources at hand, therefore I'd say the request would be even more legit today compared to the 90s.
I however agree that's is not going to happen both because of the nightmare of relicensing 3rd party code, and because an OSS Win7 release with community updates and security patches (no telemetry) would probably displace a good number of Windows 10 installs in short time.
Absolutely. But, even if you frame it that way, asking Microsoft to open source Windows 7 feels like trying to take a 2020 concern and approach it as if we were still back in 1999.
If closed source software that talks to the Internet is an inherent privacy risk, let's maybe start by focusing on Google Chrome and Android, which have access to much bigger pots of honey than Windows itself does these days.
Their existence doesn't do much to alleviate privacy concerns circling the closed-source bits of the versions of those apps that basically everyone is using, though.
In short, this seems to be one of those spots where all the FSF has is a hammer.
If Microsoft was as dedicated to open source as their recent PR pivot and thrust has lead us to think then they would have no problem taking on this monumental task.
this 'stupid' PR move from the FSF is only a response to a similiar PR move from MS.
You miss the point where Microsoft would have to acquire those licenses or release a half finished system. What value proposition is there for them to do it?
It's disingenuous. It's pure business made to be something more than that. Meanwhile they are still progressing as expected with invading privacy and taking away control on their consumer offerings.
A few years ago I was considering open sourcing a small app I had developed a few years ago. Turns out it'd actually require a lot of work to remove dependencies on other libraries I'd used.
A demand is unreasonable if it is practically unfulfillable, ask for some libraries to improve wine/reactos, say it should've been really free software and move on.
should've just asked to open source a few core libraries for wine/reactos, but of course the FSF and famously RMS don't care about practical progress, only about being able to somehow (however inaccessible) use free software only and talk about how unethical everyone else is
I wish I could find the source, but I once read that people at Apple considered opening up Classic, but there was so much 3rd party code a releasable blob would take a ton of engineering hours to scrub it all, and couldn't justify the cost.
Mozilla did it back in the day with their Netscape browser (now SeaMonkey). Sure, so much third-party code had to be stripped out that the code didn't even build to begin with, but those parts got rewritten and the problem was fixed.
Blender also used to be a wholly closed-source product; it was opened up after the source code was "liberated" via a Kickstarter-like crowdfunding initiative - and it's now a successful FLOSS project. It can happen.
The problem is its scale. Windows likely has ~100M lines of implementation, which needs to be fully audited in a legal way before open-sourcing. Maybe open-sourcing NT kernel is a more realistic and useful goal.
If there are any software companies on this planet that can afford to keep tabs on the legality of its own source code, I hope that Microsoft with their trillion-dollar market cap (and already very complex licensing situation) is one of them. It would be very sad for everyone in this whole industry if they weren't. It's honestly getting very tired to hear excuses about these F100 companies not being able to afford to do something. That isn't why they refuse to do it, and you know this.
Remember: it’s not whether their code is legal to use but to redistribute in a new way. If they have a contract their existing usage is covered without needing to go through line by line checking who wrote the portions which are still in use. One you add redistribution they have to go through and assess what needs to be renegotiated to add those terms. Given the age of the codebase I wouldn’t be surprised if it’s not even clear who owns the rights given how many small companies sold code libraries back in the 80s and 90s before disappearing or being multiply acquired. That’s a non-trivial amount of new work which only has to be done to release the code.
Exactly that. Bundled 3rd party software would probably be the easiest part to remove, but there is tons of supporting code, libraries and whatnot intermixed with core components that even if they wanted to, it would cost them a lot of resources to strip it clean of that stuff.
But just imagining that happening... Would be super crazy.
Not only that, but their current product (Windows 10) probably uses 80% of the same code. You can't get a manager to sign off on releasing current code as open source.
Also, from a legal liability standpoint, it's a near guarantee that SOME trivial quantity of open source code snuck in at some point in the last few decades. No matter how great your intentions are, somebody will have done it wrong, and the legal openings from "you used our copyrighted stuff to make Windows now pay us" is probably substantial.
That's pretty much also why they'll never open source VB6, despite a very large number of developers wanting it.
Instead, Microsoft has been virtually forced to continue to include the VB runtime DLL in every version of Windows since, because there are so many businesses out there that rely on software developed in VB6 that can't (easily or cheaply) switch to something else.
Windows 10, from what I understand, almost became the first version to ship without it, but Microsoft relented under the pressure (maybe I'm misinformed here, though).
VB.NET is sufficiently different enough that conversion either isn't possible, or due to the source code not being available (or the 3rd-party company that wrote it not existing any longer as an entity - or the source code assets not available or whatnot due to dissolution) - conversion becomes nearly impossible, short of a very expensive reverse-engineering effort by another 3rd party.
This is the same reason why it took Sun years to open source Solaris. There was still major parts of the OS they didn't release source for, because it had licensed code. The Open Solaris initiative was rewriting these parts to make the OS completely open.
They did release Windows 2003 SP1 kernel source (named as "Windows Research Kernel") long time ago, along with re-licensing it for research use only. Not the whole OS and still not an open source, though.
Having never worked on a large closed-source software project could you elaborate any on what libraries are used? What sort of functionality are they implementing with them? I've been in software development for 20+ years and I'm not sure if I could come up with one company that licenses out software libraries (adobe maybe?).
Hypothetically, if this happened, I wonder how much the source of ReactOS could help fill in the blanks. Or at least give the new developers somewhere to start.
Microsoft can open-source the parts that do belong to it and let the community replace the licensed code and libraries. If it's really in the business of selling cloudspace and not operating systems anymore, Microsoft shouldn't care.
Probably because that wouldn't be straightforward. You'll have every situation from missing licences, licences for old companies that don't exist anymore but whose IP has been absorbed by a patent troll, companies who refuse to be negotiated with, companies who will take the opportunity to file suit to repay the incalculable harm to their bottom line (despite not knowing their software was in Windows for 20+ years), companies who would be up for negotiation but don't have the momentum or enough of a grip to see negotiations through without collapsing or trailing off.
And this is if Microsoft DID want to open source it, which if they were giving in to a demand from FSF, or trying to do it as part of a goodwill "Microsoft <3 Linux" initiative then you will quickly find that the costs far outweight the benefits.
Because it turns from "Microsoft has nothing to lose by doing this" to "Microsoft is going to lose a bunch of money spending time negotiating with and paying third parties to be allowed to release their libraries with windows' source code".
And that's presuming that the entities that held the original license still exist today. It's a morass that can be nearly impossible to dig your way out of after 10+ years.
It’s actually 35+ years, Windows 1.0 was released in 1985, and I don’t doubt that some (much) older DOS code still exists in one form or the other in their repo.
The other problem is open sourcing the Windows code would be also involve open sourcing its crazy huge build system and tooling — it’s not a simple makefile — which is probably another level of impractical.
They were able to get rid of a lot of Windows 1.0/Dos back-compat junk with the release of x64 (due to loss of native 16 bit support). I'm sure there's still some though.
I wonder how long they will support 32x Windows 10? I don't think they've announced an end-of-life, but it has to be at least on the books.
It must be pretty expensive to port/test all of their patches/updates on something few use [0.70% per [0]). They already killed it on their server line (although it was silly on there with the low memory limits). Nvidia has already announced they're ending support[1].
> I wonder how long they will support 32x Windows 10?
I noted in another comment that they have a similar problem with people wanting VB6 open sourced, because so many businesses rely on VB6 apps - some written internally or exclusively for their business.
Windows 10 (from what I remember) almost didn't support VB6, but in the end they included the runtime DLL to allow for the apps to work. I wonder if this is a part of the 32x thing? Seems a likely possibility...
VB6 and the companies relying on it might be an albatross around Microsoft's neck; for how much longer, I'm not sure.
I'm almost certain that it would drift into the same landmines of uncertain copyright and derelict ownership that plagues attempts to revive old abandonware games.
Or, why can't they just open source the pieces that they do own? When you open source something, it's nice if it compiles right away but not strictly required.
There are probably lots of other reasons that MS won't open source an older version of their flagship product, but this "OMG licensed 3rd party code" excuse is overplayed (by lots of other companies, too) and needs to die.
Assuming there was an open source version of Windows 7 Microsoft would have to make Windows 10 much worse before I'd consider switching to it. WSL has bought me a lot of good will toward Microsoft. It probably helps that I'm blind so can't see any adds or crap ware installed on the start menu.
I won't echo the statements from others about the headache in licencing it would be for Microsoft but I would like to point out :
In the petition:
> We want more proof that you really respect users and user freedom, and aren't just using those concepts as marketing when convenient.
How do you even define that ?
It really seems like this was just setup to inflame people about Microsoft again. Yeah windows 7 is end of life.. ~10 years.. I would consider that pretty reasonable.
Demanding for the source in a petition ? That's quite unreasonable.
This is a publicity stunt. Nobody in their right mind would expect that this would get any official reaction from MS, even if it's just a plain "no". I just don't get what the FSF has to gain from that. It rather makes them look petty in my eyes.
They get a sound bite, with the hope of reminding anyone thinking of buying windows 10 that it is closed source and maybe should think about the ramifications.
We’re spending time talking about them, and they spent how much on that free PR? This is a great media hack since it costs almost nothing to request and while they know that it would be prohibitively expensive (and almost nobody would use it) they also know most people reading it won’t think about that so it’ll be easy to get some angry “greedy Microsoft won’t even open something they don’t need anymore” circulation.
> "nothing to lose by liberating a version of their operating system"
Ummm... except for all of the proprietary and valuable IP that is anyway shared by subsequent versions of Windows? It's not like they scrapped every bit of code when they started working on Win8, Win10 etc. Some bits of the control panel are pretty much unchanged since Windows NT!
To state the obvious: Windows 7 is the predecessor of Windows 10.
So open-sourcing Windows 7 is effectively open-sourcing Windows 10. I'd be very surprised if Windows 10 had no code from Windows 7. I'd also be surprised if Microsoft actually owns all the code/assets in Windows. Licensing is a thing.
Open-sourcing Windows 10 as a "current" product is requesting the source to everything Windows. That is a big ask. It would have to fit into a core strategic change for Microsoft.
Microsoft has likely got plans of its own to embrace and absorb Linux. Why should I as a Big Corporate with full licenses be forced to maintain separate Linux machines? Why can't Enterprise natively run Linux binaries? WSL is part of the answer to those questions but I'm fairly sure Microsoft has bigger plans. Who says they won't simply pivot and make Windows run on their own flavor of Linux or a defined distribution? Sounds crazy but... stranger things have happened and licensing is a real money maker. The ability to lock people to Windows is still very lucrative however. For the foreseeable future they are much more likely to run Linux on Windows and keep their existing control.
I seriously doubt Windows 7 will be open-sourced while Windows 10 remains closed-source.
Microsoft has made a point to re-develop closed-source projects in an open manner. The entire dotnet framework, multiple languages, WSL, even the terminal.
I think a more appropriate ask would be to "please re-develop X technology in an open manner".
> Who says they won't simply pivot and make Windows run on their own flavor of Linux or a defined distribution? Sounds crazy but...
I don't think it sounds crazy at all. I've had the same feeling since WSL was released. And that feeling has gotten stronger since they showed of the Duo.
They could, but why? Microsoft already has a kernel. It works for them.
If they did pivot to Linux, they'd still need to support NT for a long time to come. They'd also need to write a win32 layer for Linux (WINE, as it is, wouldn't be enough) as well as compatibility shims for Windows drivers, etc. And after they'd done all this work, while still supporting the NT kernel, what have they gained? Little that can't be done already.
More likely is that they continue to port .NET and/or UWP so applications built with those technologies will be cross platform. This may eventually mean they no longer need Windows but could maintain a Microsoft branded Linux distro. But that wouldn't be "Windows" by any sensible definition of the term.
The NT kernel itself has fallen from one of the best kernels technologically to significantly behind Linux. The design is still solid, but after tens of years of under-investment and little internal political willingness to make substantial improvement (they're a very conservative company at heart) it has just been allowed to rot.
I think WSL (V1 and V2) has been showcasing just how bad it has become. From locking issues, to small file performance, to scheduler problems, and beyond.
Everyone said Microsoft would never dump the Trident rendering engine either (used in IE/Edge/WebUI Controls). And that was true, until it wasn't. They may not move to Linux tomorrow, but ten years from now as NT continues to get little love, and Linux sails ahead? We'll see...
It IS possible. Anyone saying otherwise is asserting Microsoft have no experience in writing OS at all and that is absurd. The only sticking point is corporate strategy - for which I currently see no evidence.
Leaks don't generally count as open-source due to their unreliable license from the Jolly Roger Foundation. Such licenses for NeW WiNdOwS generally attract the robust negotiation skills of various incentivized individuals wearing suits that cost more than most people's first cars.
Again, licensing is too important to Microsoft, let alone every other reason, eg copyright/trademarks. They'd hunt you down then Cease & Desist your business / identity back to the foolish-ideas stage or worse.
Even if they wanted to, I doubt they could do so given all the third-party software they must have incorporated inside Windows. Perhaps it is possible to strip those out but still am sure MS doesn't want the entire world looking at their code, given that parts of the kernel of Windows 7 are probably functionally the same under Windows 10, so you'll essentially enable everyone to try and find bugs in the system without having to reverse engineer.
> they gave Windows 10 upgrades to Windows 7 users.
And they still do, even though the upgrade period has official lapsed. I strongly doubt Microsoft will buckle to the type of these arguments being made by FSF. The list of demands read like they were written by a neurotic significant other.
That being said...
I really do hope Microsoft open sources Windows some day, but the problem is that the users that will enjoy the most freedom on day 1 would be black hats. Windows consists of MLOC that has never been publicly audited and it takes far longer to identify and install patches than it does to exploit a vulnerability.
If a logical argument that addresses the risks, as well the benefits that Microsoft would see, I am sure that Microsoft would at least enter into dialog about this. Even though RMS (and by association FSF) are fundamentally correct, I have yet to see coherent and reasonable communication originating from them in the Microsoft and FOSS discussion.
The article has a sentence on the matter, but just to expand a bit more: Windows 7 is not a new piece of self-standing software. It includes past Windows releases, and future Windows releases include it. It doesn't make sense for Microsoft to do this.
Besides, I don't see any person/people being able to understand such a complex feat of engineering (and legacy) sufficiently to maintain it for years to come.
Well, there's Wine and ReactOS as two major efforts to reimplement Win32 user space and the operating system as a whole. These are big team efforts, certainly, but they manifest a very detailed understanding of Windows, mostly obtained through reverse engineering.
I would assume that there is enough interest in maintaining Windows - especially commercial interest - that finding and funding a sufficiently large and knowledgeable team is actually not unrealistic. It's just unrealistic to assume that the source code will ever be published willingly by Microsoft as long as any part of it is a direct ancestor to a product they still sell.
Good point about Wine and ReactOS; I would still think that there must be so much hidden away and swept under the million rugs.
As for the commercial interest part, just thinking about how video games' source codes are so rarely published saddens me a great deal. Even after the commercial interest is lost and the IP is no longer in use, companies don't really think much about preserving the source code.
> What about open sourcing, say, windows 95? That seems more achievable, and probably more helpful.
The Windows NT4 source code leaked a while ago and can be found all over the internet. Of course that doesn't really help ReactOS because they officially can't use it, but that's probably the closest we will get to MS open sourcing Windows.
Windows 95 is a kludge by today's standards and it's been the little brother of the more complete Win32 implementation in the NT line. As a result, it is missing a ton of things that are essential parts of modern Windows. I don't see any value in that.
Arguably, the kludge is supporting Win32 on an NT kernel. The win32 layer on top of NT is a mess of backwards compatibility hacks with more modern NT and NTFS features hammered in. The native NT layer is much better but officially it's unstable.
Compared to that, Windows 9x was less kludge and more a straightforward implementation of Win32, though of course lacking modern features.
What they could more easily do, and what seems to fit with their strategy lately, is open source further portions of Windows 10. (MIT rather than GPL though, obviously) They are already way down the path (winUI, NET5, PowerShell, terminal, etc). I wouldn’t be surprised at all to see more of the bundled apps like Paint and Notepad show up on GitHub one day, for example. If they could get explorer.exe over to the open-source side, that would be huge. And I don’t think MS has anything to lose by doing that. It seems they’d mainly want to would protect the stuff that powers/differentiates Azure.
I would have settled for XP. I love that clunky old thing but Win7 is the cooler faster son that was "just right" with the most new features (That you actually want) before a lot of the legacy stuff rotted off in windows 8. (Still technically there but showers you with errors if you attempt to use)
Obviously this will never ever happen for corporate, licencing and government reasons but a man can dream...
Licencing issues aside, I don't think MS would do it just because they want to see old windows versions dead. They don't even care about W8.1 (e.g. lack of dx12) even though it's still supported.
> We want more proof that you really respect users and user freedom, and aren't just using those concepts as marketing when convenient.
Considering the state of telemetry and adware in Windows 10, not to mention the history of forcing updates and the recent burying of the ability to setup a non-live account, I'd have to say that only a fool would believe they respect users and user freedom.
Personally, I would like to see MS do the inverse of what they did with Linux - move to Linux as their primary kernel and embed the NT kernel with hooks into Linux, either via hypervisor or directly if hypervisor doesn't give it the performance it needs for us to depart from NT kernel permanently. Not saying NT is bad... just that Linux has so much more momentum on the server, is well liked, popular and 'free'. Make NT an afterthought in Linux... not the other way around.
And not just to Windows 7. Enough of Windows 10 runs the same code that it would be more vulnerable. That said, there's no reason to think state actors don't already have the Windows 10 source.
Licensing and economic aspects aside, I think it would do more harm than good from security perspective. Malicious actors will start finding and exploiting 0-days at much faster pace than benevolent actors can (a) find them, (b) patch and (c) get patches applied to the userbase.
I like what the FSF sometimes does, but this is going to stick out in my mind like sore thumb as an example of how they make it hard to keep doing that...
Active Directory, SMB, Outlook (and the other non-Excel parts of office), the ludicrous number of tiny proprietary applications that keep the world running, custom business applications with 3 decades of continuous development on them, etc.
It is somewhat amazing to me how ignorant some people in this industry can be of why Windows is still used.
I'm one of them. I'm guessing it's just the era in which your business was setup.
Maybe a modern day equiv: Right now there's no exit option for AWS unless you just happen to build an insulating layer with kubernetes and many other layers of indirection.
Word is the killer app for most white collar businesses. Publisher is the killer app for many non-profits and community organizations. Many companies run on Access.
Windows supports more hardware than either of its competitors, from the very cheap commodity crap to the crushingly expensive and proprietary. Hardware usually just works with Windows, and even if it doesn't, it's an automatic driver download away to get it working.
It's also easier to use than Linux and it's cheaper to use and easier to administer than MacOS.
This seems so useless. Why not petition instead for Microsoft to work on open sourcing the Titan HTML rendering engine?
Microsoft spent years removing a lot of the NSCA Moasic stuff, and there is a good chance they own all of the Titan/Edge code. With their browser switching to Blink/Chromium, surely they could put in a few months of effort to try and make it publishable / open source.
Opening sourcing their entire operating system is never going to happen and the petition is a useless publicity stunt to remind people that MS doesn't really care about open source. I wish the FSF had asked for something more useful/realistic instead.
The Free Software Community can't even maintain its own consumer operating system. How the hell could they actively maintain a behemoth like Windows 7?
They won't do this because then you would see how much of this codebase is just the same as it ever was with a new GUI. Reminds me of that board meeting at the beginning of Tron legacy.
This is accountability and forced innovation, two things Microsoft avoids at all costs.