Sorry.

Terry Lambert tlambert2 at mindspring.com
Thu Sep 18 01:12:27 PDT 2003


"Person, Roderick" wrote:
> 
>    Part 1.1Type: Plain Text (text/plain)
> -----Original Message-----
> >From: Terry Lambert [mailto:tlambert2 at mindspring.com]
> >Sent: Wednesday, September 17, 2003 1:56 AM
> 
> >twig les wrote:
> >> I thought FreeBSD *did* have a client setup called Darwin. ;-)
> >
> >FWIW:
> >
> >       FreeBSD 4.x:    ~2M lines of code (including kernel modules)
> >       MacOS X:        ~6M lines of code (not including kexts)
> >
> >It takes a lot of work to make a usable desktop OS.
> 
> But, isn't the majority of the additional lines dealing with the fancy
> graphics stuff, what is it called cocoa/liguid/carbon or what ever?

No.  There are effectively 3 kernels in MacOS X:

	Mach		(osfmk)
	IOKit		(iokit)
	BSD Server	(bsd)

This enables MacOS X to do things like maintain stable driver
interfaces for third party device drivers.

Note that that 6M lines of code count did not include most device
drivers, or even the majority of filesystems, either.

IOKit is like Solaris' DDI/DKI (only stable).

Try and find one device driver or FS kernel module from FreeBSD
4.3 that will load and run unmodified in a FreeBSD 4.8 kernel,
and you will quickly see what I mean.

Compartmentalizing and abstracting interfaces costs effort.

-- Terry


More information about the freebsd-advocacy mailing list