OpenBSD SMP In The Works
Cajal writes "Four students at the University of Waterloo are working to add SMP support to OpenBSD as part of the Spinlocks project. More information is available in a story
at the OpenBSD Journal's site. They expect to have an initial working MP kernel in January."
..is that I can never decide to buy a CD set because everytime I think wait one release, the next one will have new feature xxx included!! (Where xxx is some new pf feature, or systrace, or SMP, or....
In related news, the Egyptians are on the cusp of discovering Construction, which will allow them to build Aqueduct and Coliseum. However, this is not expected to improve the odds of their feared Chariot against invading Mechanized Infantry.
And it makes for a good research project as well.
But I ask here, as an honest interested person, why one would wait until SMP is correctly and efficiently implemented into OpenBSD when they could simply use any old recent version of Windows or Linux on SMP hardware to get symmetric multiprocessor support for a high-load server?
I understand that Research -> Products -> Corporate $$$, but is this perhaps too little too late for OpenBSD?
If you celebrate Xmas, befriend me (538
They can increase their userbase to (hopefully) include some of the larger companies and corporations that opt to use FreeBSD because of it's SMP support and greater performance than OpenBSD. Hopefully, this modification will also include some performance modifications so it can also compete speedwise with FreeBSD.
While security takes precedence over performance in my book, there are definitely some things that need the performance of FreeBSD.
This is one feature i've been looking forward to playing with (not NEEDING) for a while, i can't wait to try it when it's available somewhere.
--Fuzz
Sweet now I can have more than one fish in the box.
The human condition is to not accept the human condition.
The last time I spoke to Theo in person, he wasn't too keen on SMP. That wasn't too long ago.
You've apparently never asked Theo about this. I have several times, going back years ago, and his reply has always been either "nobody wants it", or "SMP machines are too expensive and nobody has them". And OBTW, he wasn't interested in loaner or donated hardware to do the work on.
I guess somebody cares now....
The problem is, I don't know how much of OpenBSD's kernel really relies on the assumption that it'll only ever run on one CPU and it may take some time before OpenBSD becomes as stable and secure as it needs to be.
OpenBSD is designed for an "edge server" environment, where scalability isn't as important as security.
Microsoft has been raiding the University of Waterloo for programmers for years now.
-------
Warning: Slashdot may contain traces of nuts.
However, the crack about ipv6 is stupid. OpenBSD has had a working ipv6 stack for a long time (they were first OS to ship with an IPsec stack at all). Get your facts straight.
They have ipv6. OpenBSD ships with ipv6 active and operating. They've been looking at/working on SMP for some time, but they (read: Theo) wants to make sure it meets the standards of the rest of the OS. SMP adds quite a few (theoretically at least) security problems to deal with, and they want to be sure those problems are fully addressed.
'Sensible' is a curse word.
I've been using OpenBSD in several mission critical networking roles for 3 years now, and I can safely say that I haven't needed SMP.
The conventional wisdom that an operating system should be judged according to it's bells and whistles is what's wrong with the software industry. An OS should be judged by two things: Does it do the job I require of it, and does it do it well?
There are many many jobs that do not require SMP. There are many many jobs being done on SMP boxes that do not require SMP. As the price of processors has diminished, SMP is just a cool thing to buy. I'd be willing to put money down saying that 75% of the SMP boxes out there aren't needed (if that was measurable).
So, if you want to judge your OS based on features you don't need, then go for it. I use OpenBSD because it is the best choice for that particular need. If you want to assume that one OS is the Uber-OS because of the back panel of the box, then go for it. I'll assume a particular OS is best for the task at hand, and go with that.
I'm not part of the OpenBSD project (nor do I play one on TV), but one of the central points behind it is that they don't put in things unless they are needed. So far it doesn't seem like SMP has been justified in the great scheme of things (no surprise given the actual need in the wild). I'd much rather have them working on things I'm going to be using instead of evaluating other products based on things I won't.
Did anyone else notice that these four students are using PowerBooks (I assume running OS X). Check out this picture. You also have to love the reference to the cult movie Hackers.
Troll.
OpenBSD has had IPv6 since version 2.7 out in June 2000.
And for the record, FreeBSD has had IPv6 since March, 2000, version 4.0
And let's not forget who brought you OpenSSH.
SMP isn't the top priority. Giving up stability and security for the latest and greatest features are not what everyone wants. A friend of mine complained about FreeBSD not having good SMP support, I asked him if he had an SMP machine, he said "No." I hope that is enough to illustrate my point.
Sorry to go off on this, but mod the parent down if you mod me down please. People always trounce on any of the BSD's while praising Linux here.
Hear that? That's my karma in the toilet. Flush.
"Weapons should be hardy rather than decorative" - Miyamoto Musashi
I think that goes for OS's too
Sounds like you've got some issues, dude.
Your comment is amusing since as a UW CS student, I don't have a Windows account. In fact, last I checked as an upper year student I'm not allowed to have Windows account, unless it's required by a specific course (statistics courses sometimes require windows accounts for matlab, for example).
Introductory programming courses are taught on Macs and Windows boxes, but almost everybody I know participates (as time allows) in free software projects; hell, half of the people I know are Debian developers.
So why don't you stick to things you know (i.e., nothing) and take some of this shut the fuck up.
OpenBSD is a very promising OS, and SMP support will finally let it play with the big boys in the free *nix playground :)
Those who don't use Linux are doomed to reimplement it... again.
I believe that should be: "Those who do not understand Unix are condemned to reinvent it, poorly." -- Henry Spencer
Or maybe: "NT is a weak form of Unix like a donut is a weak form of a particle accelerator." -- MBCook
Yes, one(1!) remote hole in the default install, in more than 7 years.
If Microsoft could boast with this they would spend the equivalent of a small country's GNP on letting you damned well know about it.
If Linux could boast with this then Microsoft wouldn't have that small country's GNP to spend, since everybody would be running Linux instead.
If you by "always behind" mean that Doom 3 can't be run on OBSD then yes, you are correct on that too.
OpenBSD was designed to be a secure server, even with default install. Adding SMP-support have never been a priority in part, I think, because of the inherent security issues that arise from such a implementation. I'm sure there are other reasons as well, none of them beeing that they never got around to implementing it.
So are we agreed then, OpenBSD is always behind, and unsecure?
I thought so. =)
"Education is a system of induced ignorance" / Noam Chomsky
Which of the popular applications and uses of OpenBSD would benefit from SMP support?
Which apparently you don't.
the versions of OpenBSD with SMP support will require a Windows XP activation key...
Or maybe they figured out a way to port OpenBSd to Windows. Or something. Waterloo?
I assume you're referring to the stories from several months ago about a proposed deal where UW's Computer and Electrical Engineering department would, as part of a larger research sponsorship deal with MS, agree to make C# the language used in a first year class for CompEng students. There was a huge outcry against this by most CS and CompEng students and profs. Also, note that the School of Computer Science, in the Faculty of Mathematics, had nothing to do with this deal.
It is my impression that there are many UW students who use or contribute to Open Source projects. Profs are more than willing to make an occasional joke in class at Microsoft's expense. And most CS students (I can't speak for CompEngers) don't touch any MS products for programming projects past first year, by far preferring to use the provided unix labs.
Do I think the CompEng department's decision regarding C# bad? Very much so. But as I understand it, this decision was made by a few key people who stretched their authority, when really they should have consulted with more people. In fact, Engineering profs have called UW administration on this decision, leading to a decision that before the MS deal can be finalized, it must be approved by "the Electrical and Computer Engineering Department Program Committee, Faculty of Engineering Admissions Committee, Faculty of Engineering Academic Committee, Faculty of Engineering Undergraduate Studies Committee, Year 1 Implementation Committee, Senate Undergraduate Council, UW Registrar's Office and the senate as required by UW policy and practice." This, in my opinion, effectively has killed the deal. See this article for more about this. [Note that the article implies that the proposed MS C# deal would have affected all first year programming classes. This is untrue: only first year CompEng classes would have been affected; CS students would have been fine.]
The very reason that this decision was such as big deal at UW is that it goes so very much against the prevalent attitude there. And the very large amount of negative feedback they got from UW students and profs in the CompEng and CS departments should ensure that something like this doesn't happen again at UW.
Atheism is a religion to the same extent that not collecting stamps is a hobby.
It's strange how things like this end up changing would would have been. Do it right the first time, because if it gets adopted, and it wasn't done right, efforts will be diluted.
I'm glad to see it's happening though. At least somebody's throwing some brainpower at it rather than waiting around for Theo & friends. (no fault to Theo, I know SMP is "in the works" - OpenBSD is secure, first and foremost. That's what I, and many others, care about most. Kudos to you and your team on this! You have a highly-regarded, ultra secure OS that has kept many cracker-types and script-kiddies at bay for many years. You have saved many people many thousands or millions of dollars with the protection your software project has provided. You have given nothing to the headache medicine providers of the IT industry.)
One more processor for my dual-capable Sun SS20 and I'll have a grand-ole time playing with this. Just too bad it comes with only a single 10-speed ethernet port. Anybody know about S-bus fast ethernet cards?
To these brave deveopers: Way to go! Thanks for getting the ball rolling and best of luck with your project (and dealing with the publicity! :)
Oops.
Sure its cool and isnt a bad thing, but for the target market that OBSD has, is SMP really *that* important?
---- Booth was a patriot ----
he wasn't interested in loaner or donated hardware to do the work on
Hmm. now why didn't he say "Because SMP is insanely hard to do right and I'm not motivated enough or smart enough to get it done without making the system even more unstable. And besides we get more publicity if we encrypt swap"?
The OpenBSD project seems filled with people who need to prove their masculinity and grab attention rather than people who want to make sound design decisions. And in addition to making technical decisions, they also follow suit politically. For example, oh, such as holding an OpenSSH vulnerability hostage to promote adoption of their privilege separation patch.
OpenBSD has plenty of stability problems. See Dan Bernstein's downtime reports. And Bernstein is someone who wants to believe in OpenBSD but is losing patience.
OpenBSD receives plenty of attention thanks to its loudmouthed egomaniacs. Fortunately, FreeBSD is a better, more rationally designed system. Of course the FreeBSD developers are a little resentful of Linux's attention and the GPL and have made system changes out of spite, but it's nothing as bad as what OpenBSD does on a regular basis.
I really did want to like OpenBSD. Don't believe the hype.
Ok, it's oversimplification time. As I understand it, the three main flavors of BSD and their foci are:
Free - Well-rounded BSD for popular architectures.
Open - Ultrasecure BSD for many architectures. Lots of code auditing, but always just behind Free in some area or another.
Net - Runs everywhere. Won't be done until it runs on toasters and wristwatches.
I have much less experience with the BSDs than I do with the various GNU/Linux distros, so I hope someone will answer my question rather than flame in response. I've long been an advocate of reducing the number of different and nearly equal (in functionality) ways to do the same thing, regarding what I would call redundant software projects. In my view, the necessity of competition in a market for physical goods (the need to keep costs down and quality up by preventing monopolies) does not exist with OSS. If a company producing OSS decides to raise prices or slow development or include unpopular features, anyone else is free to keep using older versions at the very least or fork the project and continue development with positive goals at best. With the necessity for competition removed, a market containing multiple, redundant, competing (for mind share) OSS projects is inferior to a market containing a single, popular OSS project that satisfies a specific need. Incompatibilites crop up. The support base is divided. Developer time is divided. Skills must be learned twice. I would greatly prefer a single desktop environment (and widget set and cut 'n' paste mechanism) over the current situation. In Erpo's-the-emperor land, there is only one gnu/linux distro.
Remember, these are just my opinions.
My question is this: while there are a number of idealogical, license-, or ego-related reasons why maintainers of gnu/linux distros (or desktop environments, or whatever) would resist a merging of sofware or elimination of obviously inferior options (obviously inferior in the "there's 1001 gnutella clients and 99% of them suck" sense), is there the same kind of resistance in the BSD community to merging all three main flavors?
NetBSD was more focused on portability. They were aimed at the embeded market (which Wasabi systems is in business in) where there isn't SMP. When Theo forked OpenBSD off of NetBSD they still didn't have it and it still wasn't a priority. Now there is more interest in it, especially now that SMP hardware is becoming so cheap.
In addition to just making sure the kernel has it right, you've got to make sure that it's not going to open up any holes in the userspace too.
And 640k ought to be enough for anybody.
I want to delete my account but Slashdot doesn't allow it.
Please take note that this announcement didn't come from OpenBSD.org. The guys doing it as just doing it as their own project (which is neat). One of the main reasons people enjoy OpenBSD is that it's code has been audited by Theo and his folks and prepared to be the most security oriented distro around.
http://www.remix.net/
I find it funny that all of these wonderful features are being added to a system that won't boot beyond 8G.
I've been having my own personal hell getting grub or lilo to boot this system on a second HD. My only success so far is to use the entire disk and then chainload it. Suggestions are welcome.
This would be an extension of that... one version of unix reimplementing something that is already in linux.
But linux has already done both of those! Get a new goal!
-- 'The' Lord and Master Bitman On High, Master Of All
am I the only one that's surprised that it didn't have this before?
Don't be suprised. OpenBSD's goals and claims to fame are stability, security and correctness. I donated a dual i386 mobo some time ago to them for the SMP project. I knew SMP on OpenBSD would be a long time coming, but also knew that when it came it would be well tested and solid.
If you want support for the latest whiz-bang crud to work on your desktop (at any cost) then install the Linux kernel du jour and whatever leet distro is hot this month.
Trolling is a art,
That's one example, but his are better documented than mine which is why I didn't share mine.
Informally, I've run OpenBSD, FreeBSD, and Linux on the same exact machine and had OpenBSD crash for no reason whereas FreeBSD and Linux run fine. *shrug*
I understand OpenBSD may have less eyeballs but that still doesn't make it acceptable to me. Especially not so when I consider all of the other reasons plus the alternative systems which are just as good if not better in terms of stability, support, etc.
I'm probably going to get modded down for this, but it's got to be said (and this is from experience; it's not mindless cheerleading) --
This isn't the best use of OpenBSD developer time, if what they want is a better OpenBSD. Despite its good (but not perfect) security track record, this is an operating system that is riddled with mysterious problems when it comes to Unix compatibility.
I've got a bunch of source code that builds and runs fine on FreeBSD, Solaris, Linux, and a bunch of other Unices, but OpenBSD introduces reliability problems and some serious performance problems. (The same computer processes the same data with the same program at about 20% of the speed of Linux.)
SMP is a nice thing to have, but before OpenBSD can really be seriously considered for production use on any but the most trivial tasks, the reliability and performance issues need to be ironed out first.
Tired of FB/Google censorship? Visit UNCENSORED!
I've yet to see a real-world business application with even a 25% speedup with the addition of a second processor. SMP is expensive and overrated for all but certain "embarassingly parallel" computational tasks.
I worked for an "internet incubator" that had huge farms of 8 and 4 way Compaq servers running MS-SQL Server 7. One CPU would be pegged at near 100%, while the other processors on the machine would be near idle. With Oracle, the situation was some better, but again less than 25% speedup for 2nd processor, and less than 25% of 25% for 3rd, etc.
Maybe YOU need to grow up, and actually test the benefits of SMP rather than coo and goo-goo over it like some shiny toy.
Fine, but why do you pay for two processors if you only use one? Of course, you can run OpenBSD on an SMP machine, but if I'd like to run a non-SMP-enabled OS, I would certainly not buy an SMP machine.
Pick ONE.
Different approaches, different world views. It's hard to tell which is better (and why) *after* it's been done, much less *before* it's been done.
I don't think the duplication of effort is all that wasteful. Image the state of Linux and FreeBSD security if OpenBSD did not exist.
Most commercial unix systems like solaris are based on BSD.
Wrong. SunOS 4.x (renamed posthumously to Solaris 1.x I believe, by the Sun Marketroids) was a BSD based UNIX. Sun bit the bullet and shifted to SysV for Solaris 2.x, hence the renaming and major version increment (though IIRC SunOS 4.x was never called Solaris 1.x until Solaris 2.x came out - go figure). The Sun marketroids consequently spat on everything BSD based explaining how the way ahead was SysV. Before that, of course, they spat on SysV explaining how superior BSD was. Marketroids, you see. The other big players (AIX, HP-UX, and, I believe, Tru64 or whatever they call it now) are also SysV based. This was no doubt one of the compelling reasons for Sun's switch, at the time. Which brings me to my point - please name come commercial BSD implementations that have "very good" [sic] SMP.
Try NetBSD... safe,straightforward,useful.
I broke in and deleted /usr
.....
hahahahahaha
no wait
There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
yes! you're exactly right! In most real world *business* applications, there are other bottlenecks that keep SMP from giving near 100% increase in performance for each additional processor (it was I/O and cache thrashing in this case). I *have* seen scientifc and engineering applications where that wasn't the case, but those 4 and 8 ways are usually a waste of money in view of cost/benefit.
IPv6 support is not really any more complicated, at an application level, than IPv4 support. In fact the two can be unified using a common interface which is even defined in POSIX.1g. NAT does *not* "solve" the problem of diminished IP space, it simply makes it less immediately burdensome. NAT brings with it a set of unique new problems (like accepting inbound connections). Maybe you've had trouble with IPv6, but that does not mean that it is "inherently broken" or anything like that. IPv6 support on some systems no doubt lacks documentation, but the core technologies are for the most part sound, stable, and ready for prime time.
:)
The key factor, I think, to lack of IPv6 rollout so far is missing support in routers and Windows. That will come, though.
Of course, IHBT perhaps.
"question = (to) ? be : !be;" --Shakespeare
Like I care about my karma, being maxed out for the last YEAR. Go mod something UP for chrissake. What a waste of mod points.
For your modding pleasure, this is offtopic, flamebait, trollish, overrated and quite sad that I even feel the need to mention this.