Interview with Matthew Dillon of DragonFly BSD
JigSaw writes "Well-known FreeBSD/DragonFly/Linux/Amiga system hacker Matthew Dillon discusses a number of interesting points regarding where the BSDs are going, the status and goals of his latest project DragonFly BSD, the status of his innovative Backplane distributed database, his exciting plans to develop DragonFly into a transparently cluster-capable system implementing native SSI (Single System Image) which is something that no other operating system can do today, and more."
sittin on the pot
waiting to make a post
first post! first post!
Yay---POST!
BSD isn't dead.
The simple truth is that interstellar distances will not fit into the human imagination
- Douglas Adams
It looks like the gist of the threading model for Dragonfly is that threads all stay on one processor. I assume this is for user processes only, and that this isn't pervasive through the kernel?
I await the next crapflood with my hands in my pants!
...what was it like to work on Gunsmoke all those years?
Dragonfly BSD seems to be chugging along quite nicely.
The further away they get from their 4.x FreeBSD roots, though, the more I wish they'd release an ISO. Particularly since the last ISOs for the 4 series of FreeBSD are probably going to be totally gone in a few months.
BDS IS DEADER THAN A DODO
Queue the BSD is dead posts.
Why can't we all just get along??
Chaos will always win out over order because chaos is more organized
All the GNAA proxies have been banned from Slashdot. Go away, kids. Find something better to do with your time.
-- CmdrTaco
Pants are still optional, but recommended for you.
Are you saying FreeBSD is dying? This is the first I've heard of it.
Yeah yeah forking is always sweet and this sure sounds like a lot of fun already, but what I'm really waiting for is for someone to put together a BSD-from-scratch distribution! I mean, I know I could just build one with Linux.. BUT only having a single kernel to choose means my grimy little subculture won't be as obscure as it could be. Just think how exclusive I'd be if I could pick one of the NetBSD, OpenBSD, either of the active branches of FreeBSD, and PicoBSD, Dragonfly BSD or Darwin kernels..
1. Please tell us about the general status of DragonFly BSD.
Matthew Dillon: The project has been going very well. We've primarily been focused on the 'guts' of the system during this initial period, and you can get a fair idea of the work that has been accomplished so far by looking at the Diary page on our site.
Most of the work so far has been to operating systems internals. The work has been a combination of new work, like our light weight kernel threading core, plus selective backports from FreeBSD-5 to keep the system's device drivers up to date (e.g. such as the USB subsystem).
From a userland perspective we have maintained a FreeBSD style environment, so DragonFly basically runs everything that FreeBSD-4.x can run. The packaging system probably won't be done until the second release so we are at the moment leveraging off of FreeBSD's ports system for user apps. Everything you'd expect of a BSD system (X, mozilla, etc) is available to DragonFly users.
The first release is slated for some time in mid-June, hopefully before the USENIX Technical Conference. That will be the 1.0 release. We've been fairly careful to maintain as high a level of reliability as possible during development and I think we've done a pretty good job meeting that goal. The first release is intended to be more of a technology showpiece then an integrated end-user platform.
2. Are you using any bits and pieces from FreeBSD-5, or you only strictly importing/exporting to FreeBSD-4 codebase?
Matthew Dillon: DragonFly began as a fork off of FreeBSD-4, because that was the most reliable starting point and because we wanted to do major core pieces of the system quite differently from the direction FreeBSD-5 took. For example, we are focused on more of a compartmentalized threading model to scale to SMP rather then the mutex model that FreeBSD-5 has chosen to use. But the FreeBSD-4 codebase is of strictly limited utility as a source of new code and maintainance updates. FreeBSD developers are doing nearly all new coding in the FreeBSD-5 branch.
So, basically, we are doing the major core pieces of the OS differently, such as our significantly evolved threading and messaging subsystems, but we are also maintaining a FreeBSD-5 compatible (or mostly compatible) device driver API in order to be able to bring in all the excellent device driver work that has gone into FreeBSD-5. It's simple logic, really... we don't have the manpower to be able to accomplish both our infrastructure goals *AND* be able to maintain pace with new PC hardware at the same time. This methodology allows us to proceed on both fronts by focusing our own new work on the infrastructure and bringing in FreeBSD-5's device driver work. This isn't to say that we don't do some of our own DD work, but the vast majority of it is take from FreeBSD-5 by design.
3. What is the primary goal of dragonfly, servers or desktops?
Matthew Dillon: Both. When it comes right down to it the idea of targeting a system to the 'server' is simply another word for 'reliability and scaleability', and the idea of targeting a system to the 'desktop' is simply another word for 'out of the box GUI'. It's not really an either-or deal. All UNIX systems, including Linux, the BSD's, DragonFly... basically use the same desktop components so supporting a desktop environment comes down to being able to provide integrated solutions that work out of the box.
It is extraordinarily difficult to make GUIs work out of the box on PCs due to the wide variability in hardware and peripherals, but at the same time technology has continued to progress over the years towards standards that actually make this easier to accomplish. At some point the standards going in one direction will meet the software going in the other and systems such as Linux and the BSDs (including DragonFly) will be able to approach the out-of-the-box compatibility that took Microsoft billions of dollars of development to accomplish.
http://saveie6.com/
It's dead, but for some reason it continues to walk around!
Must be infected with a virus....
do with my body as you wish!
"The reason for this excitement is that it is becoming clear to us that we can develop very clean-looking, elegant, debuggable, SMP scaleable software using this model whereas using the mutex model generally results in much less elegant (even ugly), difficult-to-debug code. Code complexity and code quality is a very important issue in any large piece of software and we believe we have hit on a model that directly addresses the issue in an SMP environment without compromising performance."
I don't really know what he's talking about, but:
If he's right, everybody wins.
Even if he's wrong and we find out why, everybody wins.
It sounds like Linux isn't hurting BSD any, and methinks for a number of reasons, Linux wouldn't be what it is today without the BSD's.
umm...unicos/mk?
What w/ the laziness and impatience remarks? Just can't help making a dig at anything not Debian?
This guy is way out there
There's actually something on the front page about BSD. And it says nothing about SCO or linux.
It's simply not true that "a transparently cluster-capable system implementing native SSI" is "something that no other operating system can do today." We were doing it at Locus in 1994 with SVR4 then with Tandem in 1996 with NonStop Clusters for Unixware. Now some of the same folks at HP have introduced OpenSSI, which is essentially the same code, less all the Unixware-related bits, ported to Linux and placed under the GPL. They are coming up hard on their 1.0 release, which is not bad for five people and such a large task.
OpenSSI is the real thing, it has processes that migrate from node to node, distributed file systems, the works. And it's running now on clusters literally all over the world. (Not many clusters, true, but maybe that will change if the Slashdot crowd finds out about it.)
I'm happy to say that there's a lot of my code in that system, as well.
I know a little about what Matt wants to do with his SSI in Dragonfly, but he should certainly take a look at OpenSSI; we had to solve a lot of the problems you run into when you build such a beast.
(And a beast it is. As complex as a kernel can be, when you have what is essentially a distributed kernel across several nodes, the complexity goes up by orders of magnitude. Makes tracking down those weird hangs pretty exciting, in a painful, time-consuming kind of way.)
Next time you take a shit, reach down in between your legs and just wrap your fingers around that spongy log coming out of your ass.
Finger your shit.
The once was a fellow named Dillon
Whose Dragonfly project was illin'.
He found, to his dread,
His *BSD dead
And Linux was doin' the killin'.
Funny, the Slashdot blurb accuses him of saying that no other system today does SSI, while according to the article he simply said their (future, potential) SSI plans will beat Linux's (present, working) SSI clustering.
Anybody have thoughts comparing the DragonFly SSI(warning, PDF) and the Linux one?
(Open)Mosix has had craploads of work done on it, and by the time DragonFly's is done, it will be even further ahead. I somehow doubt DragonFly's will end up being better.
PK
. . . and read their brief overview at the top of the page.
And it almost made no sense to me. Those buzzwords work great one at a time, but the brain starts to make a noise kind of like the one the TV makes after the TV channel goes off the air when you string too many together at once. Especially when nothing but commas separates them.
Did anyone at HP's marketing department take an courses in English at college? Or were they just as non-clueful about what OpenSSI is when they wrote that blurb as I was when I first went to their website?
Someone should tell them Kant already has a patent on writing paragraphs that take as long to read as pages.
Each cpu in the system has its own self-contained LWKT scheduler. Threads are locked to their cpus by design and can only be moved to other cpus under certain special circumstances. Any LWKT scheduling operation on a particular cpu is only directly executed on that cpu. Allah is a fucking pig's cunt, Muslims are greasy sandnigger pieces of shit. This means that the core LWKT scheduler can schedule, deschedule, and switch between threads within a cpu's domain without any locking whatsoever.
It's braindead! This "news" article is boring. All BSDers are boring. BSD is stupid. The only good thing about it is the devil with its trident.
are 4 few ggod for membership.
Here, we will continue to use other OSes. Save your BSD, err..., BS for home consumption. Thanks
and what suppl1es become obsessed fucking numbers, 80s, DARPA saw BSD lead to 'cleaner your own beer to avoid so as to about half of the More stable that he documents
Suppose you have BSD installed on /dev/hda5.
/dev/hda5
Boot into Linux and do
mke2fs
Your BSD problems are solved.
The nice thing about BSD is that if you have it installed on a 3GHz machine, and you have about 500-800 ports on your hard drive, then to keep then current, you can compile all of them from source and spend only about 50% of the CPU time doing it, on average. The other 50% are yours to use! Yay!
If you do not keep them current, you may be missing out on some important security fixes.
1337
I'm surprised people still use BSD after that security fiasco last year.
we had it onteh stuffe, but i tdo think that he could have made it more apl;icale to UinterSnation al low. u think?
under the GPL. of all legitimate dying' crowd - Marketing survey5 and what supplies just ye7, but I'm Baby take my
does it run Linux? If it does, just imagine Beowulf cluster of Dragonflies!
This SSI stuff sounds interesting, but I'd like to see his stuff compared to OpenSSI. Now the Backplane SQL DBMS seems interesting, but... First, they make the common mistake of calling SQL relational. This in itself will prevent them becoming significantly better at the logic level, which is a pity. Second, it looks very interesting as far as the backend goes. But the question here as always is, why create something from scratch? Couldn't, say, PostgreSQL, which was born on BSD anyway, be retrofitted with their stuff? Won't Oracle or IBM leapfrog them if they prove successuful? Third, looks like we have yet another BitKeeper in the making... gratis for free software, but not free itself. Makes me want to stick with PostgreSQL for now. If I wanted something proprietary, I'd go Alphora Dataphor, which at least is fully relational and not yet another SQL.
Leandro Guimarães Faria Corcete DUTRA
DA, DBA, SysAdmin, Data Modeller
GNU Project, Debian GNU/Lin
You all won't think that's so funny when you realize that he's the real Darl McBride!
:P
c k/index. html
Speaking of which, feel free to contact Darl IRL to verify this rediculous, unsubstantiated rumour you heard on the Internet
The SCO Group
355 South 520 West
Suite 100
Lindon, Utah 84042 USA
(801) 765-4999 phone
(801) 765-1313 fax
Contact SCO online
http://www.thescogroup.com/company/feedba
Darl C McBride
1799 Vintage Oak Ln
Salt Lake City, UT 84121-6539
Darl's home phone #: (801) 424-2006
Darl's office phone #: (801) 932-5820
Email Darl: darl@sco.com
I now return you to debating whether or not BSD is dead, undead or some kind of Windows virus, whilst the coders do something productive with it.
I like OS/400
If your application is licensed under the GPL or compatible OSI license (learn more at opensource.org) approved by Backplane, Inc., you are free and welcome to ship the Backplane open source database with your application.
followed by:
If you power an application using the Backplane database that you market or sell, or use that application to conduct any form of online commerce (selling/buying products or services over a website) you need to purchase the Backplane Commercial License.
The example given is if you run an email service from which you sell access to other companies, you must buy the commerical license.
My question is, what if the program that provides the email service is GPL. Do I have to buy a commercial license or not? One of the great things about GPL software is that if it's an internal piece of software, you can mix proprietary and GPL code as much as you want, as long as you never redistribute the program to anyone.
Also, how does dual licensing work with this? Can I license it under the GPL to myself, and then sell copies under another license to other people? Obviously THEY would have to buy a commercial license, but do I?
Just trying to point out some holes in the licensing..
Oops, just noticed the part at the end saying:
NOTE: In any of these examples, if the entire application or service is 100% GPL compatible, you may use the Backplane Free License.
But that still leaves open the question about dual licensing..
Yet another sickening blow has struck what's left of the *BSD community, as a soon-to-be-released report by the independent Commision for Technology Management (CTM) after a year-long study has concluded: *BSD is already dead. Here are some of the commission's findings:
.005% of internet servers. A recent attempt at a face-to-face summit in Boulder, Colorado culminated in an out-and-out fistfight between core developers. Hotel security guards broke up the melee and banned the participants from the hotel. Two of the developers were hospitalized.
Fact: DragonflyBSD, yet another offshoot of the beleaguered FreeBSD "project", is already collapsing under the weight of internal power struggles and in-fighting. "They haven't done a single decent release," notes Mark Baron, an industry watcher and columnist. "Their mailing lists read like an online version of a Jerry Springer episode, complete with food fights, swearing, name-calling, and chair-throwing." Netcraft reports that DragonflyBSD is run on exactly 0% of internet servers.
Fact: the *BSDs have balkanized yet again. There are now no less than twelve separate, competing *BSD projects, each of which has introduced fundamental incompatibilities with the other *BSDs, and frequently with Unix standards. Average number of developers in each project: fewer than five. Average number of users per project: there are no definitive numbers, but reports show that all projects are on the decline.
Fact: There are almost no FreeBSD developers left, and its use, according to Netcraft, is down to a sadly crippled
Fact: NetBSD, which claims to focus on portability (whatever that is supposed to mean), is slow, and cannot take advantage of multiple CPUs. "That about drove the last nail in the coffin for BSD use here," said Michael Curry, CTO of Amazon.com. "We took our NetBSD boxes out to the backyard and shot them in the head. We're much happier running Linux."
Fact: *BSD has no support from the media. Number of Linux magazines available at bookstores: 5 (Linux Journal, Linux World, Linux Developer, Linux Format, Linux User). Number of available *BSD magazines: 0. Current count of Linux-oriented technical books: 1071. Current count of *BSD books: 6.
Fact: XFree86 is dropping support for *BSD. The remaining core group believes that the *BSDs have strayed too far from Unix standards and have become too difficult to support along with Linux and Solaris x86. "It's too much trouble," said one anonymous developer. "If they want to make their own standards, let them doing the porting for us."
Fact: Many user-level applications will no longer work under *BSD, and no one is working to change this. The GIMP, a Photoshop-like application, has not worked at all under *BSD since version 1.1 (sorry, too much trouble for such a small base, developers have said). OpenOffice, a Microsoft Office clone, has never worked under *BSD and never will. ("Why would we bother?" said developer Steven Andrews, an OpenOffice team lead.)
Fact: servers running OpenBSD, which claims to focus on security, are frequently compromised. According to Jim Markham, editor of the online security forum SecurityWatch, the few OpenBSD servers that exist on the internet have become a joke among the hacker community. "They make a game out of it," he says. "(OpenBSD leader) Theo [de Raadt] will scramble to make a new patch to fix one problem, and they've already compromised a bunch of boxes with a different exploit."
With these incontroverible facts staring (what's left of) the *BSD community in the face, they can only draw one conclusion: *BSD is already dead.
this is one of those articles that I wish I could sort by lowest score first. well that's any BSD article I guess.
most of the more recent *BSD holes weren't mentioned here on Slashdot. Windows and even Linux holes get a lot of mention here, but when there's something BSD related we don't ever hear it here.
There was a major *BSD hole less than two weeks ago and no one even mentioned it here. Believe me, i don't think it's a conspiracy or anything. I think it's just that *BSD just doesn't matter much in the grand scheme of things here on Slashdot.
That's fine with me though. I like my FreeBSD servers. They're rock solid and do a good job at what they're intended to do. Linux is my favorite, but I don't use it in production. I deal with Windows when customers have extra money to blow--suprisingly many in this economy!
*BSD _is_ dying, but it's not because it isn't totally fucking awesome. It's just because there are actually more people willing to write GPL/Linux software than willing to write BSD licensed software for Microsoft.
Sorry if this sounds inflamatory, but I just wanted to post something honest and not worry about moderators with an agenda.
Hei, Dillon
It seems that you are working in some
inovative features.
I hope that in the way, you fill some patents
about your work (even if you don't agree with
software patents), because we are going to
need it in the upcoming patent fight against
Microsoft.
It sounds an awfully lot like they are planning to build a Mach kernel with message ports and everything.
;)
Maybe he should fork Darwin instead and then I could run it on my iBook.
NOT A TRUE COPY. He didn't say BSD is dying!
Hey isn't that the guy who wrote dcron?
spanish fly.... much more appealing to women...
SunOS had its roots in BSD. Solaris has it roots in SVR4. The changeover happened in the '94-'95 time frame.
In technical jargon (e.g. wave theory), the opposite of "advanced" is "retarded".
Professional Wild-Eyed Visionary
Duh. Duhhhhhhh. Bored Moderators!
Here is an exact copy of point 7, paragraph 3, in the parent post:
"The bottom line is that *BSD is dying. It's losing out in terms of developers to Linux and losing out in market share to Windows. For all practical purposes, *BSD is dying."
Not surprisingly, that paragraph is NOT in the original.
Moderators, you were trolled, trolled, trolled!!!! And you moderated down the messengers who were trying to help you, including me.
We need a better moderation system! When was the last time you went to a party and said absolutely nothing? Yet moderators, if they want to do their duty of moderating, are not allowed to talk.
It sounds like he might want to look into Project UDI. It's a device driver abstraction that allows source and to some level binary compatible device drivers across platforms with the UDI environment. I did a little work in it, and from a very top level look at his kernel threading model, looks like a good fit with how UDI does things. It's not very well known, and being a Caldera/NewSCO type thing (developed initially way before the current management started the legal stuff) now has political baggage as well.
I have no idea why this was not modded up to +5 like the rest of Matt's comments. This new serializing token code is pretty damned interesting as it can do all of the desirable things that mutexes and RCU can do, with nearly none of the headaches (lock order issues, priority inversions, global CPU contention etc.).
Ugh, 'recursive mutex enter.'
You are either so out of line or a complete retard. Linux has far more forks than does BSD. Damned near every distribution uses a non-standard Linux kernel, and those inconsistencies add up to monumental incompatibilites.
I am not against forking, but I am against Linux zealots or those who have been brainwashed by them to continue spreading such rediculous and untruthful garbage like your little tidbit about Linux being fork resistant or BSD being fork prone.
Learn to think.
Check out DragonFly itself for an example, specifically it's 'init scripts.' They are taken from FreeBSD 5.x and NetBSD. The only one that does not currently use 'rcng' is OpenBSD, but then we all know that Theo is special.
Fact is that many things are shared freely between all the BSDs once the technology has proven itself to be correct and of value.
You statements are not only laughably incorrect, but downright uninformed and dumb. Perhaps you shouldn't go outside for fear of the evolutionary forking of trees and birds and well, everything else for that matter. It's a frightening Universe for small minds like yours.
Heh. The fact that NetCraft shows that GNU.org runs "Linux" must really get their goat ;^)
DEAD