TJR Forum

Home arrow News and reporting arrow News and reporting arrow Interview: Sam Leffler of the FreeBSD Foundation
Interview: Sam Leffler of the FreeBSD Foundation PDF Print E-mail
Written by Jem Matzan   
Feb 15, 2007 at 02:53 PM

During last weekend's Southern California Linux Expo 5x, Sam Leffler of the FreeBSD Project and FreeBSD Foundation and "old school" hacker from the UC Berkeley Computer Systems Research Group (where the original Berkeley Software Distribution was developed) took some time to explain to me what the Foundation actually does, and the kind of work it has fostered. We also chatted briefly about the current status of FreeBSD, and the degree to which Apple contributes to the Project.

In addition to the FreeBSD Foundation, are you able to speak for the FreeBSD Project as well?

Sam Leffler: Well I'm not sure that any one person can speak for the Project because, like other open source projects, it's a team. I participate in the Project and am an active developer in the group.

What did you develop for FreeBSD most recently?

SL: For the past few years I've mostly been working on the wireless networking in FreeBSD. I've been doing wireless networking work at least the last five years, and have given a number of talks about it. In fact I gave a talk last year at a a conference called SANE, in Delft, Netherlands -- the slides are online if you're interested in some background on the work I've done. In general the idea is to provide production-quality wireless networking facilities to people doing research and, in general, anyone in the open source community who wants to use it.

So the FreeBSD Foundation is something that is relatively new -- at least, compared to the Project.

SL: Yeah, it's a couple years old. It's a non-profit organization -- an official 501c3 -- so that means it has non-profit status, which allows people to deduct the donation from their taxes. Did anyone explain to you what the organization does?

Well I know that it takes donations, but I'm not sure what it does with the money.

SL: There are many purposes to the Foundation. One is as an official legal entity to hold things like trademarks and copyrights and legally binding information or materials. These have to be held by somebody real, and FreeBSD as a project is really a non-entity -- something that won't be recognized by a court. So one of the Foundation's important jobs is to hold things like the FreeBSD trademark. It also represents the FreeBSD Project whenever there are any legal issues. So for example if you're trying to negotiate a license for the FreeBSD for developers to use certain tools, whom do you go to? For example the FreeBSD Project has a license with Coverity, and we run the Covertity tools over all our software. The only way that could happen was for some real entity to sign a license agreement. So the FreeBSD Foundation was the one who signed that agreement, and the FreeBSD Project now has full access to the tools. Similarly we negotiated a license to distribute Java JDK binaries that are certified by Sun. To do that, we needed to sign a legally binding contract with them. Certification and all the legal issues are for the FreeBSD Foundation to handle. Those are examples of how FreeBSD appears as a legal entity -- the Foundation on behalf of the Project.

Before that, the FreeBSD trademark was owned by a company?

SL: The trademark was owned by Walnut Creek CDROM -- but that was just the trademark. They had a particular business... the business they were doing was prepackaged CDs and such. In a sense they were sort of acting as the Foundation.

So to finish what I was talking about... the Foundation also supports developers for things like travel expenses to attend conferences. People who are not able to pay to get to a conference can apply for travel grants. Linux kernel developers have lots of companies that provide funding for that sort of thing. That's not quite as easy to find in the FreeBSD environment, so the Foundation acts as a funding conduit to support things like that. The last responsibility the Foundation has, which happens far less frequently, is to assist or directly fund significant development projects that need to be done to help the project move forward. One of the projects we funded was fine-grained locking of the networking stack.

Getting it out from under the Big Giant Lock.

SL: Yeah. Those are the kind of things that frequently happen within a vendor, who then contributes them back to the community. Sometimes it's hard to find a particular vendor who's willing to focus on that because they don't want to devote the resources that they have internally, so instead you need to find outside resources to do that sort of work. And then the question is, how do you get the funding to them? One of the projects that's going on right now is a virtual networking environment mechanism for a virtualized network environment for jails -- to give you a full networking support within a jail. That's being done by a guy at the University of Zagreb -- Marko Zec. That's overseas, and the funding is coming from NLnet through the FreeBSD Foundation. This technology brings us sort of halfway to a virtual machine; it gives you basically a full virtualized IP stack.

That's interesting -- I would love to see that.

SL: It works -- Marko's done a more-than-proof of concept and has a really cool implementation for FreeBSD 4.x, but we're funding him to bring this to the 6.x series. So that'll probably show up in the next release.

Going back to the Project's Java license... originally Java on FreeBSD was only a 32-bit binary. Is it now 64-bit?

SL: Both 32-bit and 64-bit binaries are available now.

The JRE, or the JDK as well?

SL: I don't know about the JDK -- I think of Java in broad terms. I don't do Java, so it's a little hard for me to remember sometimes.

To me it was a good way to learn object-oriented programming. I'll probably never write meaningful software in it.

SL: People seem to like Java. All I know is people want it so they can run their Web apps -- that's really why we needed it. In the same vein, we're trying to enable things like Flash and stuff like that for the FreeBSD user community.

Right now Flash is executed through Linux binary compatibility.

SL: Yeah, you have to run the Linux Flash port. The story I heard was that Adobe was going to kill that -- they weren't even going to do the Linux distribution. We've been trying to work with them to get them to get them to do both a native FreeBSD binary as well as continue to do the Linux distribution. We try to look out for people in the general community, not just FreeBSD. We've even funded people who aren't even FreeBSD developers to travel to conferences. I think we just sent a NetBSD guy to one... so, we do crossover to other projects somewhat. We don't encourage people outside of FreeBSD to apply -- we don't have that much money! But it shows that we are trying to support the community, not just focus on one particular project.

You said Linux has corporate sponsors. Has Apple ever contributed anything to FreeBSD in terms of either money or support, or code?

SL: Yeah, Apple's given stuff back. Audit support and a lot of other security-oriented work has gone on in collaboration, both in terms of Apple funding developers and also in sharing work. There are other examples -- I'm not real familiar with the situation, but I know that it's not a one-way street. Obviously we'd enjoy a better relationship with Apple, and would like them to be more involved with our code, but it's pretty hard to work with an open source project when you're shipping a product. If you're trying to ship a product, you have a timeline, you have deliverables... how are you going to depend on someone to deliver something on time if they don't report to you? I've been through this before. So melding the open source development work with a real product is a non-trivial challenge. I'd still like to see Apple be more forthcoming, though.

Maybe there's a myth you can clear up. Many people claim that Apple OS X is based on FreeBSD. This does not seem to be true from what I can tell, though it does seem to incorporate a certain amount of FreeBSD code. Could you itemize exactly what pieces of FreeBSD might be in OS X?

SL: I'm really the wrong person to ask. What I know is that OS X has -- and Darwin in particular, but not just Darwin, there are layers above -- a lot of components that come from FreeBSD. But because of the influence of Mach through NeXT, it's often times difficult to clearly identify something as being from FreeBSD. But I know there is a lot of "cross-pollination," I know that Apple continues to bring in work from FreeBSD, but by the time it appears in distributed form, it may not be easy to identify.

Anything else you'd like to say about the FreeBSD Foundation or Project?

SL: I think the Foundation as a whole has a really good purpose, and the intent is a lot like some of the other groups around in terms of funding good works. The people on the board are not paid -- I get zero out of this. I think it's really nice, but it's really tough because the problem is finding funding. We stump for money, but sometimes it's very hard to convince corporations that it's worthwhile to give any money. I think raising the awareness of what the Foundation is and letting people know who we are and what we do is an important first step.

Discuss this article or get technical support on our forum.

Copyright 2007 JEM Electronic Media, Inc. No reprints without written permission.

<Previous   Next>

The Jem Report is part of the JEM Electronic Media network of information technology Web sites.
Spammers can email us here