Where does Microsoft Windows' 7 POSIX implementation currently stand?

风格不统一 提交于 2019-11-27 02:04:29
Tedd Hansen

SUA, formerly called INTERIX, is now 100% POSIX compatible. There are a lot of ported apps for it. Even whole Linux distros like Debian have been ported. SUA/Interix comes with Windows 2003R2 and up (including Win7 which has the latest 6.1). I also successfully compiled BASH without it directly supporting SUA.

Previously only parts of POSIX were implemented. The newest version is fully POSIX compliant and is (iirc) mapped more directly onto the Windows kernel than before, causing an increase in speed.

Beware however that I (on a personal note) experience memory problems when I keep BASH open for several days. The problems seems to affect the whole SUA system. I don't know the cause of this so it could be something with my setup, but worth testing before considering it for production use.

Links:
Wikipedia article on Interix
Debian interix port
SUA Community with bundles of apps/utils

It has been deprecated since Windows 8, as mentioned on this answer https://superuser.com/a/495367/128124 with the following screenshot to back it:

Feature request: https://windows.uservoice.com/forums/265757-windows-feature-suggestions/suggestions/6573649-full-posix-support

According to an article on How-To Geek, is was removed from Windows 8.1.

On the server side, it was officially removed in Windows Server 2012 R2:

Subsystem for UNIX-based Applications

Windows Server 2012: Deprecated

Windows Server 2012 R2: Removed

Source: Features Removed or Deprecated in Windows Server 2012 R2

2016 Windows Subsystem for Linux

In 2016 a new official Linux-like API called "Windows Subsystem for Linux" was announced. It includes Linux system calls, ELF running, parts of the /proc filesystem, Bash, GCC, (TODO likely glibc?), apt-get and more: https://channel9.msdn.com/Events/Build/2016/P488 so I believe that it will allow Windows to run much, if not all, of POSIX. However, it is focused on developers / deployment instead of end users. In particular, there were no plans to allow access to the Windows GUI.

If you look at http://technet.microsoft.com/en-us/library/cc772343.aspx you can see that you can:

  • debug POSIX applications with Visual Studio
  • run 32 bit POSIX applications on a 64 bit Windows edition
  • run BSD applications, since BSD support is included in the POSIX implementation of Windows

Kindly have a read of https://en.wikipedia.org/wiki/Windows_Services_for_UNIX

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!