<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:times new roman, new york, times, serif;font-size:12pt"><DIV></DIV>
<DIV>I don't think that's exactly right. Mach is a microkernel based system developed at Carnegie Mellon that (to the best of my knowledge) just covers process and memory management. It's not a full OS. Steve Jobs was actually behind another product (the NeXT box) that was Mach based, though not nearly the commercial success that OS X was to become. Interestingly, I was first introduced to Scheme by a housemate who actually had a NeXT cube -- I was jealous!&nbsp;Anyway, to form a complete system, a layer needs to be built on top of the microkernel, and OS X uses a FreeBSD&nbsp;emulation layer. In other words, it isn't really FreeBSD, but rather a Mach based OS that&nbsp;supports an interface similar (I don't know enough to say how far the similarity goes) to FreeBSD. I don't think the decision to use Mach has anything to do with POSIX compliance, except insofar as&nbsp;supporting the FreeBSD layer supports POSIX compliance. POSIX is, of course, the portable operating system
 interface standard, and it really applies to all flavors of Unix/Linux&nbsp;(some of which are fully compliant and&nbsp;some of which are not).</DIV>
<DIV>&nbsp;</DIV>
<DIV>I've actually never worked with FreeBSD itself (though I originally learned&nbsp;about Unix using&nbsp; Version 7, followed by BSD 4.2 and 4.3). I've thought about installing FreeBSD separately (maybe under Parallels?) buty never found&nbsp;any compelling reason to.</DIV>
<DIV>&nbsp;</DIV>===<BR>Gregory Woodhouse <GREGORY.WOODHOUSE@SBCGLOBAL.NET><BR><BR>"Mathematics is the science of patterns."<BR>--Lynn Arthur Steen, 1988
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif"><BR><BR>
<DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">----- Original Message ----<BR>From: Andrew Gwozdziewycz &lt;apgwoz@gmail.com&gt;<BR>To: plt-scheme@list.cs.brown.edu<BR>Sent: Wednesday, January 31, 2007 4:04:16 AM<BR>Subject: Re: [plt-scheme] SQLite<BR><BR><BR>
<DIV>
<DIV>On Jan 30, 2007, at 4:37 AM, Hans Oesterholt-Dijkema wrote:</DIV><BR class=Apple-interchange-newline>
<BLOCKQUOTE type="cite">
<DIV style="MARGIN: 0px">There must be something like ldconfig (like linux uses)</DIV>
<DIV style="MARGIN: 0px">for MacOS X. Otherwise, the OS itself would have to hardwire</DIV>
<DIV style="MARGIN: 0px">stuff and if I remember well, MacOSX is a derivative of</DIV>
<DIV style="MARGIN: 0px">(free)bsd?</DIV></BLOCKQUOTE></DIV>
<DIV><BR class=khtml-block-placeholder></DIV>
<DIV>MacOSX is NOT a derivative of freeBSD. OSX is built on top of</DIV>
<DIV>the Mach Microkernel, which allows "compatibility layers" to be</DIV>
<DIV>created on top of it. Therefore, OSX provides a FreeBSD&nbsp;</DIV>
<DIV>"compatibility layer" on top of the Mach Microkernel to take advantage</DIV>
<DIV>of POSIX standards.</DIV>
<DIV><BR class=khtml-block-placeholder></DIV>
<DIV>This however does not always translate into correct results. For instance</DIV>
<DIV>take a look at Amit Singh's challenge from 2005:</DIV>
<DIV><A href="http://www.kernelthread.com/mac/challenge/result/" target=_blank rel=nofollow>http://www.kernelthread.com/mac/challenge/result/</A> where it's discovered</DIV>
<DIV>that a kernel panic can occur by creating a mach_task which then creates</DIV>
<DIV>a new thread. However since the call wasn't created by exec() or fork() an</DIV>
<DIV>important field is not set that tries to be referenced. It wasn't set because</DIV>
<DIV>it can't be set because mach doesn't know how or why a layer above it</DIV>
<DIV>needs something like this set. It doesn't care, but "FreeBSD" of course&nbsp;</DIV>
<DIV>does.</DIV><BR>
<DIV><SPAN class=Apple-style-span style="WORD-SPACING: 0px; FONT: 12px Helvetica; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; border-spacing: 0px 0px; orphans: 2; widows: 2"><SPAN class=Apple-style-span style="WORD-SPACING: 0px; FONT: 12px Helvetica; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; border-spacing: 0px 0px; orphans: 2; widows: 2"><SPAN class=Apple-style-span style="WORD-SPACING: 0px; FONT: 12px Helvetica; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate; border-spacing: 0px 0px; orphans: 2; widows: 2">
<DIV>--</DIV>
<DIV>Andrew Gwozdziewycz</DIV>
<DIV><A href="mailto:apgwoz@gmail.com" target=_blank rel=nofollow>apgwoz@gmail.com</A></DIV>
<DIV><A href="http://and.rovir.us/" target=_blank rel=nofollow>http://and.rovir.us</A>&nbsp; |&nbsp;&nbsp;<A href="http://www.photub.com/" target=_blank rel=nofollow>http://www.photub.com</A></DIV>
<DIV><BR class=khtml-block-placeholder></DIV><BR class=Apple-interchange-newline></SPAN></SPAN></SPAN></DIV><BR>
<DIV>_________________________________________________<BR>&nbsp;&nbsp;For list-related administrative tasks:<BR>&nbsp;&nbsp;<A href="http://list.cs.brown.edu/mailman/listinfo/plt-scheme" target=_blank>http://list.cs.brown.edu/mailman/listinfo/plt-scheme</A></DIV></DIV><BR></DIV></div></body></html>