UWIN is a computer software package created by David Korn which allows programs written for the operating system Unix to be built and run on Microsoft Windows with few, if any, changes. Some of the software development was subcontracted to Wipro, India. References, correct or not, to the software as U/Win and AT&T Unix for Windows can be found in some cases, especially from the early days of its existence.
UWIN source is available under the Open Source Eclipse Public License 1.0 at AT&T's AST/UWIN repositories on GitHub.
UWIN 5 is distributed with the FireCMD enhanced Windows shell with the Korn Shell thereof as one of three default shells present at install, the others being the FireCMD scripting language and the default Windows command shell cmd.exe. Other UWIN shells like csh and tclsh and those of other interoperability suites like the MKS Toolkit and other shells like those that come with Tcl, Lua, Python and Ruby distributions inter alia can be added to the menu by the user/administrator.
Technically, it is an X/Open library for the Windows 32-bit application programming interface (API), called Win32. UWIN contains:
- Libraries that emulate a Unix environment by implementing the Unix API
- Include files and development tools such as cc(1), yacc(1), lex(1), and make(1).
- ksh(1) (the Korn Shell) and over 250 utilities such as ls(1), sed(1), cp(1), stty(1), etc.
Most of the Unix API is implemented by the POSIX.DLL dynamically loaded (shared) library. Programs linked with POSIX.DLL run under the Win32 subsystem instead of the POSIX subsystem, so programs can freely intermix Unix and Win32 library calls. A cc(1) command is provided to compile and link programs for UWIN on Windows using traditional Unix build tools such as make(1). The cc(1) command is a front end to the underlying compiler that performs the actual compilation and linking. It can be used with the Microsoft Visual C/C++ 5.X compiler, the Visual C/C++ 6.X compiler, the Visual C/C++ 7.X compiler, the Digital Mars C/C++ compiler, the Borland C/C++ compiler, and the MinGW compiler. The GNU compiler and development tools are also available for download to UWIN.
UWIN runs best on Windows NT/2000/XP/7 with the file system NTFS, but can run in degraded mode using FAT, and further degraded on Windows 95/98/ME. (See the External link for more details.) A beta version for Windows Vista and 7 is released as UWin 5.0b (June 2011, 17th). On January 19, 2016, it was announced by AT&T that the AST and UWIN source packages were migrated to GitHub.
- ^ "Windows Command Prompt and Console Alternative". www.brainasoft.com.
- ^ UWin 5.0b announcement, archived from the original on March 15, 2012
- ^ new home for AST and UWIN software
- David G. Korn (1997) Porting UNIX to Windows NT, USENIX Annual Technical Conference
- Korn, David G.; Fowler, Glenn S. "UWIN Overview". www2.research.att.com. Archived from the original on 2013-12-09.
- "AST Software Download Packages (defunct)". www2.research.att.com. Archived from the original on 2013-11-04. This page still contains some useful documentation.
- AST github repository
- UWIN github repository