This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

glibc-based Unix Emulation Layer for Win32



[I'll cc: this to the lists, since I don't know if
 your e-mail is correct.  That way, you should get
 the reply. ]

*jeffdb@netzone.nospam.com (Mikey) wrote:
> Why would you want to use glibc, when windows has
> a perfectly usable "native" libc in crtdll.dll?

It wasn't my idea - but I think it's a good one.  The
"real" GNU libc already has the entire Unix C api
interface already implemented.  So it would just be
a matter of figuring out how to interface it to
the lower level Win32 plumbing.  Once that is done,
it should be 100% compatible with the glibc used
in Linux (since it's the same thing).  

(if I'm missing something - please correct me)

There might be opportunities to use the code in
crtdll.dll in the sysdeps layer.  I don't know yet.
I haven't examined how glibc interfaces with the
kernel in the sysdeps layer yet.  And I haven't
looked at how newlib/winsup does its thing yet
either.

Since Cygnus seems committed to making cygwin32
non-free - any free "GNU Win32" system is going to
have to be essentially written from scratch (although
we could use code from Beta 16 and before).  

It makes sense to do something totally different from what
Cygnus is doing - because then people won't be constantly
comparing the two systems.  Plus, if Cygnus decides in
the future to change their license to a "free" one (in the
GNU/Debian sense), then all the work on an alternative
Unix emulation layer wouldn't go to waste.

I'm pretty committed to the idea of having a truly free
Unix emulation layer for Win32 that could be used to
host Linux distributions.  So I'm going to start coding
it.  However, my Unix programming experience is rather
limited - so it's going to be a real learning experience,
and take me quite a while.  Hopefully, enough people will 
volunteer to help me out, and there will be some real
progress.

Send "subscribe" in the body of a message to 
win32-request@lists.debian.org to subscribe to our mailing
list.  We're also going to try to build a port of the
Debian packaging system to cygwin32 (even though it's
"non-free") - so there should be some interesting
things happening...

The logical outcome of all this is that eventually anything
written to the glibc interface should just be a straight
re-compile to run on top of any OS out there (initially
Linux, GNU/Hurd, and then Win32).  Add to this the Debian
dpkg system (plus some enhancements I have in mind),
and you can automate the whole porting process.

Someday, we'll be able to achieve cross-platform performance 
and portability that Java can only dream of...  (of course, 
Java can run on top of glibc too)

:-)

Cheers,

 - Jim


PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]