Subject: Re: how do emulators work
From: Brian Dessent <[email-masked]>
To: [email-masked]
Date: Mon, 03 May 2004 09:52:03 -0700

Christopher Spears wrote:

> This question may seem kind of basic but how do
> emulators work?  

Cygwin is not an emulator.  It's an implementation of the POSIX standard
functions and interfaces so that programs expecting to call those
functions can be compiled under windows.  It translates those function
calls into the equivalent Windows ones, with lots of glue logic to take
care of the fundamental differences between the two.  You might call
that "emulation" but it's not emulation in the traditional sense.  It's
similar to WINE, which is an implementation of the Win32 API under
linux.  WINE of course stands for "WINE is not an emulator".

> With UNIX, you have a program called
> the shell (csh, bash, etc.) that interprets commands
> and calls up different utilities (ls, cp, grep, etc.).

The same thing happens with Cygwin, it's no different.

>  However, cygwin sits inside Windows and is connected
> to windows.  For example, my home directory is
> /home/Christopher Spears/, which would never happen in
> UNIX because of the space in my name.  Is cygwin
> really UNIX or is it something different?

It's not traditional to have a home directory with a space in it under
most Unix variants but that's just tradition.  You could create a home
directory with a space in it with Linux if you really wanted to. 
Likewise, you could change your home directory in Cygwin to
/home/cspears.  Both systems support spaces in filenames and pathnames.

Brian

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/