Removal of support for GCC hosted on UWIN
dewar@gnat.com
dewar@gnat.com
Wed Jan 10 12:13:00 GMT 2001
<<Hopefully, I'm not confused about what people mean by NT since I have to
understand it fairly well to do my job. IMO, Interix is an add-on to
the Windows NT operating system which provides full POSIX support. It
is a proprietary package relying on Windows NT internals to do its job.
It certainly is a subsystem but it is also an additional package provided
by Microsoft in addition to Windows NT.
>>
Full POSIX support is a very strange way of defining this. It is simploy
a full Unix system, with all the normal Unix features. FOr a user of
Interix, NT+Interix looks pretty much like any other Unix system.
The technical structure, once again, is that NT is a microkernel system
with subsystems.
Technically there is no difference at all between
NT Kernel + Win32 => provides what people normally think of as the NT
operating system
NT Kernel + Interix => Provides an implementation of Unix
The two subsystems can of course be run together.
It is a marketing decision of Microsoft that the only way you can buy
the microkernel is to get the Win32 subsystem as well, so yes, in
marketing terms it is an add on.
<<I've never purchased Interix from Microsoft, so maybe I'm wrong, but I
don't believe that Microsoft markets this POSIX library as anything but
an add-on to Windows NT. Here's the marketing blurb:
>>
Well we have worked extensively with Interix from the early non-Microsoft
days. As far as we are concerned it is just one more Unix system for which
we provide GNAT support. To think of Interix as a "POSIX library" is really
quite misleading, that is unless you think of SOlaris as nothing more than
a POSIX library :-)
Note that Win32 programs cannot somehow use Interix to provide POSIX
facilities, that's a compeltely wrong view of the strucure. The two
subsystems are quite separated.
Historically (and perhaps this accounts for part of the confusion),
Microsoft built at POSIX subsystem with minimal capabilities (about
all it could do was run the POSIX tests), to convince the DoD that
NT was an open system supporting POSIX (amazingly they got away
with this rather deceptive^H^H^H^H^H^H^H^H^Hpeculiar approach).
Softway Systems then acquired the code for this subsystem and used
it as the starting point to develop a complete implementation of
Unix as an NT subsystem. This version of Unix is quite complete
(it was one of the easier Unices from the point of view of porting
GNAT). Microsoft then later acquired Softway.
I think if you *had* "purchased Interix from Microsoft", you would have
a clearer view. I cannot imagine anyone familiar with Interix describing
it as anything else than a (fairly conventional) implementation of the
Unix operating system.
<<"Microsoftî Interix 2.2 is the easiest way for customers to take
advantage of their previous investments in UNIX-based legacy
applications as they move to the Windowsî operating system. Interix
provides a powerful, high-performance environment in which to easily run
UNIX applications and scripts on the Window NTî and Windows 2000
operating systems, enabling customers to take advantage of the many
benefits of the Windows platform while still maintaining their
UNIX-based legacy applications."
>>
I quite understand how reading this blurb may confuse you. Nothing it says
is actually *wrong*, but it is highly (perhaps deliberately) misleading
people reading it into thinking that this is some compatibility library
for Unix applications, and you certainly can be excused for not realizing
that what Microsoft is talking about is a complete Unix implementation
that is quite separate from the Win32 world.
It is posible to write hybrid applications in which you have parts running
under Win32, and parts under Interix, communicating through sockets, but
you might as well be operating on separate machines as far as the level
of communication goes. Indeed one way to build such hybrid applications
in GNAT is to built the system as a distributed system, using the
distribution features built into Ada 95, where it just happens that the
two partitions are on the same physical machine.
More information about the Gcc
mailing list