[Asterisk-bsd] Zaptel on BSD -- ready for Darwin?

Benjamin on Asterisk Mailing Lists benjk.on.asterisk.ml at gmail.com
Fri Oct 15 11:11:05 CDT 2004


On Fri, 15 Oct 2004 09:01:55 +0200, Olle E. Johansson <oej at edvina.net> wrote:
> How similar is the BSD kernel architecture the OS/X, since it is not
> using a FreeBSD kernel as far as I know?

Correct. Darwin is largely based on FreeBSD, but the kernel is Mach 3.0.

Anyway, I am not sure that the Zaptel drivers belong into the kernel.
This may sound outlandish to developers used to monolithic kernels,
but on micro kernel based systems the general aim is to keep things
out of the kernel, even device drivers.

On Darwin/OSX this is achieved through a framework called the IO Kit.
In a nutshell, most device drivers are applications which link to the
IO Kit. They are not part of the kernel in the sense of how the term
kernel is used in OSX.

Instead OSX terminology uses the term Kernel Environment to refer to
what you would think of as the kernel in monolithic kernel based
systems. Part of the Kernel Environment is the FreeBSD Kernel API.

see this diagram for a block diagram of the Kernel Environment:

http://developer.apple.com/documentation/Darwin/Conceptual/KernelProgramming/index.html#//apple_ref/doc/uid/TP30000905

I would think that the FreeBSD Kernel API is there to allow the
porting of FreeBSD kernel modules to OSX with minimal effort. Then
again, I don't know much about kernel programming, so I might be
wrong.

In any event, the general information on OSX kernel architecture is here ...

http://developer.apple.com/documentation/Darwin/Conceptual/KernelProgramming/index.html#//apple_ref/doc/uid/TP30000905

and it says that everybody who wants to port a device driver should
first read this ...

http://developer.apple.com/documentation/DeviceDrivers/Conceptual/IOKitFundamentals/index.html#//apple_ref/doc/uid/TP0000011

and here is more information on how to port drivers ...

http://developer.apple.com/documentation/Porting/Conceptual/PortingDrivers/index.html

If anyone needs a shell account on an OSX system for porting work,
please ask me off-list.

rgds
benjk

-- 
Sunrise Telephone Systems, 9F Shibuya Daikyo Bldg., 1-13-5 Shibuya,
Tokyo, Japan.

NB: Spam filters in place. Messages unrelated to the * mailing lists
may get trashed.


More information about the Asterisk-BSD mailing list