Hello Dan and all,

I very rarely post here, but I find this list to be very informative and worthwhile reading. I read this post from Dan and decided to share it with a very close friend who works in the Computer Science Department at USC. I will share his response here, in the hope that some folks will find value in it.

Rick Boggs

Morning Rick,

Mac OS is unix under the hood. Mostly a BSDish flavor of Unix utilities running on top of the Mach Microkernal with a BSDish service presenting the Unix interface combined with GNU's gcc and libraries for building things. The Terminal program defaults to using the Bash shell which comes from the GNU people (Free Software Foundation). So all Bash commands work. Aqua would be analogous to the X Windows System in other forms of Unix. Its a Windowing system using Finder as the Window manager. Now X was meant to be a networked window system and while Aqua as some of those features it is tuned to be a single machine's window system.

This was the architecture of NeXT Step and Mac OS X is really NeXT Step + an Apple style interface. This is true even today at version 10.4.x. Now from a programming perspective this is very cool. For the average user it doesn't impact them. Its like a body of a car, Aqua is the body, Unix is the engine, drive train, etc.

Because Mac OS X is Unix you can do all your unix things assuming the programs you need are installed. Now modern Unixes tend to come with more then you need, Apple has chosen (probably a wise choice from a support point of view) to only include what they need by default. Because of Apple's NeXT Step heritage you don't see the usual assortment of stuff in /usr/bin, /usr/lib, /usr/include, /etc, /var and so on. If you need development tools then you need to install them, if you need other server stuff then you need to install them, etc. I recommend using OpenDarwin Ports (<http://www.opendarwin.org>http://www.opendarwin.org/) for getting the usual set of Unix tools and services that you'd find by default with most Linux distributions. You need to read through the docs on Open Darwin because there are some pre-requisites that need to be in place (I vaguely remember having to install the Mac OS X developer tools before installing Darwin).

Once Open Darwin is installed the Unix under the hood is remarkably similar to BSD, Linux, Solaris, etc.

Hope this helps,

Robert



Origianl Message:



Hello Scott and everyone else,
You know, that brings up a point.
While I can certainly understand trade secrets, many of us are already familiar with Linux and Unix and such. I wish there was much more information on the different processes used in Apple's flavor of Unix and in particular how the GUI apps work with the underlying Unix. and the other way round. Furthermore, I wish there was much more information available on Mac's terminal, including Sin-tax and anything especially pertaining to Mac and its particular flavor of Unix.
Just a thought, along with your questions regarding mail processes.
Dan
On Feb 19, 2006, at 7:47 PM, Scott Howell wrote:

Folks, I got to thinking and yes nothing good comes of me thinking. In any case, when I was running my Linux box, I used a program called Fetchmail which would poll a mail server/servers and dump mail into /var/spool/mail. Now I haven't been able to locate any info that covers how mail works in great detail, but what I was curious is if it would be possible to use a program like fetchmail, have it pull mail down from a server and Mail make use of it. I suspect Mail wouldn't do this very easily as it seems it either imports mail from /var/spool/mail or such directory or Mail simply pops the server itself and the mail is placed into the mail directory in the local user's home folder. Anyone have some insight into how Mail works? Is it possible to run Mail as a cron job and have it pickup mail that way?

tnx

Scott

Reply via email to