FreeBSD 7.0-RELEASE

I’ve now had a chance to install FreeBSD 7.0-RELEASE in a VMWare virtual machine and I must say that I’m impressed. The developers of FreeBSD (who are also users) have again done an outstanding job of fixing bugs, sanding rough edges, and polishing smooth parts. They’ve done all of this without destroying the way we all use FreeBSD. Some other software manufacturers could take a cue from this. Change doesn’t have to mean completely changing the UI.

One of the most exciting new features is the newly reworked ULE scheduler. The old SCHED_ULE modules were somewhat mediocre. A lot of transitions took place, but in the end the new scheduler is still O(1) with per-CPU queues. For some reason 7.0 shipped with 4BSD as the default scheduler, so you will need to do a kernel recompile to enable ULE. It sounds like 7.1 will ship with ULE as the default scheduler, however.

So, why use the ULE scheduler? Try near linear scaling to 8 CPUs, minimal degradation during peak workloads, and the Linux 2.6.22 kernel is 15% slower than FreeBSD 7′s. Yes, you read that right, FreeBSD 7′s kernel out-performs one of the latest Linux kernels by a whopping 15%.

Additionally you’ll find improvements and additions in networking and file systems, as well as updated user tools and the integration of finstall (the FreeBSD graphical installer).

Further reading:

Kris Kennaway’s presentation on FreeBSD 7 (pdf)

Share