Recent from talks
Nothing was collected or created yet.
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.[1]
Technical details
[edit]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).[2] On January 19, 2016, it was announced by AT&T that the AST and UWIN source packages were migrated to GitHub.[3]
Notes
[edit]- ^ "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
References
[edit]- David G. Korn (1997) Porting UNIX to Windows NT, USENIX Annual Technical Conference
External links
[edit]- 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
/d/bin/date to d:\bin\date).[1] A server component, UMS (Unix Management Server), manages setuid/setgid permissions and user/group databases on Windows NT, enhancing security and portability.[1]
UWIN was presented at the USENIX Windows NT Workshop, August 11–13, 1997, in Seattle, Washington, where it demonstrated superior performance over Microsoft's built-in POSIX subsystem in areas like library size and conformance, comprising around 15,000 lines of code for its core implementation.[1] Originally freely available for non-commercial use via AT&T Research and commercially through GTL Inc., UWIN has since been released as open source under the Eclipse Public License 1.0 and is hosted on GitHub by AT&T, with versions advancing to at least 5.0, including features like UNC pathname support and a /sys pseudo-directory for improved portability across Windows platforms; version 5.0 is distributed with the FireCMD enhanced Windows shell.[1][2] Despite its achievements, ongoing challenges include file naming conventions, authentication integration, and full multi-user support on Windows 95.[1]
