[Linux] Loading Linux modules in Apache?

Vladimir Grebenschikov vova at fbsd.ru
Sun Jun 26 18:59:04 GMT 2005


В вс, 26/06/2005 в 20:37 +0200, jaco at coocoo.za.net пишет:
> Hello Vladimir,
> 
> > ÷ ×Ó, 26/06/2005 × 19:59 +0200, jaco at coocoo.za.net ÐÉÛÅÔ:
> >> Hello All,
> >>
> >> I am trying to load a Linux module in Apache 2.0.53, but I am running
> >> into
> >> some problems.
> >>
> >> I am not sure if this is even possible, but I sure hope so. ;)
> >
> > I guess you have some choices:
> >
> > - (easyest) Install linux apache and run whole beast under linux
> > emulation
> > - (much harder) You can try to mix ABI in single binary (just like win
> > or mplayer does with windows DLLs) but, it is not easy task
> > - write module wrapper for apache, it will consist of two parts - one
> > FreeBSD binary (loaded into bsd apache), another - linux  (it part will
> > load your linux apache module). Parts should be connected by some IPC
> > and apache module interface should be exported via this IPC.
> > [...]
> 
> Thanks for your reply.
> 
> Seems that I really do have a couple of choices. :)
> 
> 1. This seems like the easyest route. I am just a bit worried about
> performance here... I will do a couple of benchmarks though.

I do not think that you will get significant performance degradation,
but
I think, you can resolve  some performance issues building linux apache
under linux gcc using FreeBSD IPC syscalls.

Theoretically bot linux and freebsd apaches should run with same speed
at the end, but, of course there should be some practice issues.

> 2. This will mean that I will have to change source code in either the
> module or apache. I think this is going to be really hard. :P Is my
> understanding of this correct? (I do not have source for the module)

I understand that you have no sources, and In order to get all this work
you can do a lot of linking/wrapping magic. 
But you should understand what you going to get.

> 3. This also sounds like a good option. But, I think this is also going to
> be a bit complicated in the end.

Probably yes, also, I guess it will affect performance much worse then
option 1.

> I will do some tests on my side. At least I now know this is not possible
> the way I wanted to do it.
> 
> Thanks!
> ---Jaco

-- 
Vladimir B. Grebenschikov
vova at fbsd.ru


More information about the freebsd-emulation mailing list