【问题标题】:What would it take to make Windows a POSIX compliant operating system out of the box?使 Windows 成为开箱即用的 POSIX 兼容操作系统需要什么?
【发布时间】:2014-12-09 06:12:31
【问题描述】:

提出这个问题的动机是我的一个牵强附会的梦想,即 *nix 平台上可用的许多优秀软件都可以轻松移植到 Windows。微软最近总体上对开源和开放采取了不同的方法,所以我真的很想知道,如果微软有这种倾向,这样的事情会有多大的可行性。我很好奇的一些更具体的事情是,是否可以在不破坏向后兼容性的情况下完成它,并且可能对所涉及的工作量进行某种衡量。如果有任何具体的技术示例可以突出说明做这种事情的特殊困难,那也将不胜感激。

【问题讨论】:

标签: linux windows unix operating-system posix


【解决方案1】:

Windows 已经是这样了。 NT 内核本身从一开始就支持“个性”(API 层在 NT 层之上)的概念,至少在设计上支持 Win32 API、POSIX API 和 OS/2 API。

POSIX 层在具有不同名称(Microsoft POSIX 子系统/SFU/SUA)的高端 SKU(通常与服务器相关)中流传了很长时间,但它从未真正流行于非专业用途,这都是因为它是不是普遍可用的(微软从未真正推动它,可能是出于商业原因)并且因为其他解决方案变得普遍(想想 Cygwin/MSYS/MinGW)。

请注意,尽管“个性 API”是一个有趣的概念(并且可能是实现多 API 操作系统的最简洁的方法之一),但它也存在一些“深度隔离”问题 - 也就是说,您确实可以通过 POSIX 接口访问内核对象,但是在 Win32 接口上构建的所有服务(如 Windows、GDI 等)都不容易获得;此外,无论界面多么好,都有一些细节(例如路径的格式)无法解决,因此 POSIX 应用程序总是看起来有点格格不入。

【讨论】:

    猜你喜欢
    • 2016-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-06
    • 2014-11-25
    • 1970-01-01
    • 2017-01-21
    • 1970-01-01
    相关资源
    最近更新 更多