因为windows没什么必须的理由要开源。不过windows上自带的一些app(比如画图,记事本)之类确实可以考虑开源一下,主要是当sample用来告诉开发者这个平台上,标准的app是怎么写的。
这是因为,早在十年前,微软的源代码就向中国政府开放了(当然这并非通常意义上的开源),中国信息安全产品测评认证中心和相关被授权机构可以在线即时查看包括Windows、Office等在内的微软产品绝大部分现有版本源代码和相关技术信息。但但是最终得出结论就是“微软的开源会导致出现大量漏洞”
所以“微软的开源会导致出现大量漏洞”的说法,目前国内的主要信息安全公司(包括我所在的公司)都可以通过测评中心授权其直接阅读微软的相关代码,当然根据协议,发现了漏洞需要及时通知微软。
其次,因为是垄断地位的,所以其没有真正意义上竞争对手。微软也没有继续拓展用户群的迫切需求。windows是一个规模洁大的开发团队完成的,巨大的代码量级,即便开源,个人进行更新的难度也极大,没有开源的实际意义。
Redhat、Ubuntu、Suse、Fedora虽然都是Linux,但应用程序却互不兼容。一个程序在你的机器上能运行,到了别人的机器上就不能运行。
正是因为开源,软件总是包含一大堆五花八门的依赖库,各依赖库出自不同作者,且没有统一协调机制,导致代码风格千奇百怪。虽然可以运行,但会使系统环境变得极其复杂。
不开源也有不开源的好处,则保证了系统版本的单一性,以及程序的通用性。不会产生各种眼花缭乱、且互不兼容的发行版。一段程序在你的机器上能运行,到了别人的机器上,也同样能运行。没有五花八门的软件安装方式,只要点击“下一步、下一步”就能得到正确的安装结果。确实降低了逼格,但也减少了BUG。