Forum OpenACS Q&A: Response to I'll bite - apache openACS?

Collapse
Posted by Don Baccus on
Maybe the linux emulation on FreeBSD emulates linux threads via processes?

What you were seeing was AOLserver opening a few threads to get started.  On a real linux system, these show up in the process table because threads are implemented as "lightweight" processes, aka (one form of) kernel threads vs. user threads.

If you see no extra processes spawned when running AOLserver directly under FreeBSD, I presume this is a hint that either 1) FreeBSD implements user threads (i.e. threading is done within the user process, so only one shows up) or 2) "ps" by default hides "lightweight" processes/kernel threads (which linux "ps" doesn not).

As you can see, I don't know jack about FreeBSD threads...

Anyway, it sounds like threads with the linux binary emulation stuff is a lot less efficient than native threading under FreeBSD.  Now, if you get a lot less performance under native Linux we'll find that interesting!  A lot of folks use FreeBSD because the TCP/IP stack is more efficient than the Linux implementation (supposedly being fixed in 2.4 kernels, which won't be out in standard releases for many months).