I made a hesitant attempt to keep an eye on other BSD source changes over the last week. I complain about needing coverage for the other BSDs, so I’ll see what I can do:
Supposedly it’s FreeBSD 9.0 under the hood on the new Playstation 4 systems. What does this mean for FreeBSD, or driver support, or BSD in general, or what you can run on that hardware? Possibly nothing other than a vague sense of superiority.
On the other hand, this BoingBoing article makes a good point about commodity hardware and its immediate utility. It’s an effective network storage device and it doesn’t even mention FreeNAS.
Michael W. Lucas has two bits of mostly-BSD-centric publishing news. One is that a physical version of his DNSSEC Mastery book is now available through Amazon.
The other bit is that, having just released an Absolute OpenBSD update, his Absolute FreeBSD book will not see an update… until the FreeBSD installer gets more coherent.
(If you manage DNS in any fashion, buy DNSSEC Mastery.)
I think spring has arrived; everything’s turning green, and a young man’s thoughts turn to computer hardware upgrades. Time to move to 64-bit! Anyway, lots of links this week. These are getting more and more content-filled over time, but I don’t think anyone minds…
- For the Bitcoin enthusasts: ‘…when my wife refuses to bring him cake on our sofa, he calls it a “denial-of-service attack”’ (via)
- Make It So, coverage of computer interfaces from movies. I always thought that was what Enlightenment was trying to achieve: the Interface From The Future. (via several places)
- Same computer interface topic, but from anime movies. It would be nice if this became something people actively worked on, instead of Bitcoin selling and Facebook monetizing. (via)
- Flat icons/monochromatic icons seem to be another microtrend. This is probably because few people do small dimensional icons well. My favorite was always the BeOS set.
- On benchmarks. It says what you should already know, but I like the Phoronix/MD5 benchmarking joke. (via EFNet #dragonflybsd)
- This article titled “The Meme Hustler” draws a finer line than I’ve seen before between “open source” and “free software”. The author, Evgeny Morozov, seems to also have a hate-on for Tim O’Reilly. See some reviews of a recent Morozov book for a counterpoint, of sorts.
- Spacewar championship, 1972, in Rolling Stone. Exactly two years before I was born! At this point, finding things older than me makes me a bit happy. There’s a picture of a Dynabook in there, photographed by Annie Liebowitz. It’s entertaining to read this 40-year-old story and see how well it predicts the future. I’m also sort of amazed it exists, in Rolling Stone. More Spacewar links here.
- Meet the Web’s Operating System: HTTP. “Because HTTP is ultimately the one social contract on the web that, amidst a million other debates over standards, rules, policies, and behavior, we have collectively agreed to trust.” (via)
- Ancient computers in use today. I’ve linked to a story about that IBM 402 before, but the following pages about VAX and Apple ][e systems are new. Well, new to read, certainly not new hardware. (via)
- Yahoo Chat! A Eulogy. The spray of forbidden words is an entertaining acknowledgement message. (via)
- The $12 Gongkai Phone. Bunnie Huang breakdowns are always fun, and he’s describing a strange sort of open source that isn’t through license. (via)
- The FreeBSD Foundation is looking to hit a million dollars donated this year, which seems quite possible given last year’s performance. Donate if you can; their activities help the whole BSD community.
- A Complete History of Breakout. It’s not actually complete, but that’s OK. It includes Steve Jobs being a jerk and Steve Wozniak being very clever, which is their traditional roles. (via)
- Ack 2.0 is out. It’s a very useful utility; I’d like to see more standalone utilities created this way.
- Space Claw, Flickr via BBS. You’ll need telnet. (via)
Your unrelated link of the week: Shady Characters, a typography/history blog I’ve linked to before, has a book out. If you liked those links, you know what to do next.
If you have a mfi(4) device – in other words, a LSI MegaRAID SAS driver – you can now see/import/clear/etc. foreign configurations, thanks to this commit from Sascha Wildner, tested by Francois Tigeot, and originally from FreeBSD.
For the confused, ‘foreign’ means any disk hooked to a RAID controller that isn’t part of a configuration the RAID device already knows about. A replacement disk, or more worryingly, a good disk gone bad/unrecognizable. (I’ve had both.)
Peter Avalos has committed another batch of updates to sh(1), from FreeBSD. I was going to comment on how strange it was to see software getting updated so many years later; you’d think everything there was to update for /bin/sh had been done at this point. Digging casually, the oldest bit on sh that I can find is from 1991 – 22 years old. The man page mentions a rewrite in 1989 based on System V Release 4 UNIX, and there were versions of sh all the way back to version 1.
Here’s a trivia question – what’s the oldest Unix utility, and what’s the oldest code still in use? I don’t know the answer.
I wasn’t aware of this, but apparently DragonFly’s version of patch(1) comes from OpenBSD and NetBSD. FreeBSD’s old version of patch is being replaced by this and modified to match the old one’s behaviors. It would be worthwhile to bring these changes back, if possible, just to reduce the differences in a utility that’s already been around the world, so to speak.
As an aside, I always thought patch was one of Larry Wall’s unsung successes, and I’m entertained by any program that has “Hmm…” as one of its official outputs.
For once, I got to read the commit logs for other BSDs…
The OpenBSD ‘Papers’ page has some videos listed to match the OpenBSD-related presentations from EuroBSDCon 2012.
Not only does NetBSD support the BeagleBoard, but Michael Lorenz is committing from it.
FreeBSD has brought in a new version of bmake and jemalloc. I’ve seen a number of other commits recently attributed to ‘NetApp’, which is good to see. Also, preliminary USB support for boot loaders.
PC-BSD is looking to use pkgng, the same binary package manager used in John Marino’s DPorts. It’s proving quite popular.
Venkatesh Srinivas and Tim Bisson have been working for some time on a port of FreeBSD’s virtio and virtio-block drivers. (see man page commit) They’ve now been committed. This should make your virtual disk perform better, if nothing else.
The last of the year.
Your unrelated comics link of the week: Marlo Meekins’ Tumblr. Her lettering is refreshingly expressive. That may sounds strange to single out, but so many people place words as an set block of text rather than as part of a graphic layout.
It’s the end of the year, so it’s time for the FreeBSD Foundation’s end of year campaign.
This discussion of cryptographic hardware for FreeBSD may include hardware that would work for DragonFly too. Can someone verify?
Sascha Wildner recently brought in support from FreeBSD for HighPoint’s RocketRAID 4520 and 4522 SAS/SATA RAID cards. It’s in the hptiop(4) driver.
Sascha Wildner has added system management BIOS (SMBIOS) support, visible with kenv, from FreeBSD. Use it for getting things like the BIOS revision, system manufacturer, and so on. For example:
smbios.bios.vendor="Dell Inc. "
This may seem minor, but this can be very helpful when dealing with hardware you aren’t physically able to access.
Today is the day that FreeBSD moves to using clang by default. This is not necessarily a surprise, but I like the finality of calling it “Clang-Day”. I think Clang will probably be the next compiler brought into DragonFly’s base system, instead of the next release of gcc. Don’t make any bets on my statement, though, cause I certainly won’t be the one doing it. (It’s hard.)
John Marino is working on a very good idea: bringing bmake into DragonFly as a replacement for the current ‘make’. bmake is going through more active development and apparently also in use/will be used? on FreeBSD, so syncing up with the same make flavor as FreeBSD and NetBSD will help everyone. It’ll also remove the problem where you ‘make’ everything in DragonFly, except pkgsrc packages which you ‘bmake’. It’s not changed over yet.
(What does OpenBSD use for make?)
Sascha Wildner has committed Markus Pfeiffer’s port of USB4BSD to DragonFly. USB network, input , audio, and storage devices (including xhci/USB3 items) may work, though there’s no guarantee for each driver. This is added but not on by default, so see the first link for instructions on how to rebuild your kernel to use it. This will be in (but not default) the DragonFly 3.2 release.
(This is shaping up to be a much bigger release than I anticipated!)
Sascha Wildner’s added updatesfrom FreeBSD for the Areca arcmsr(4) driver; specifically for the ARC-1213, ARC-1223 and ARC-1882 models.
NYCBUG, the NY BSD user’s group, has an RSS feed for their speaker events, found via Dru Lavigne’s always useful BSD Events twitter. The next event at the start of October is a talk about SMPng in FreeBSD. Given that it was the project that in part led to the creation of DragonFly, I’d like to hear about it. (and even better, have someone more qualified than I compare and contrast that approach with what’s in DragonFly.)
This recent question asked on-list about creating your own file system meandered into good reference books. This so far was “The Design and Implementation of the FreeBSD Operating System“, “Modern Operating Systems“, and the paper “Vnodes: An Architecture for Multiple File System Types in Sun UNIX“. Looking for links on those things led me to this Unix filesystem history paper from IBM, which is fun reading.
I’m saying that unironically! It really is an interesting document to read, for historical and general knowledge. I am a nerd.
Adrian Chadd has apparently been smushing FreeBSD onto MIPS systems for some time, and he’s going to talk about it tomorrow night at the NYCBUG meeting. I’m noting it because I’ve always found it interesting how much can be stripped out of a kernel and userland and still have a functional system.
Sascha Wildner has pushed smart battery support, based on a patch from Dmitry Komissaroff and FreeBSD. He asks people to try it out. It apparently provides for more accurate battery charge level readings?
Francois Tigeot has updated the ixgbe(4) driver, and Sepherosa Ziehau has added TSO support for bce(4) and additional bge(4) related chips, mostly from the FreeBSD drivers.
Sascha Wildner has ported over more RocketRaid support, in the form of PCI IDs for various 4xxx and 3xxx series cards for hptiop(4), and a hpt27xx(4) driver that supports even more hardware.
Sascha Wildner’s added support (from FreeBSD) for the HighPoint RocketRAID 17xx, 22xx, 23xx and 25xx, via the hptrr(4) driver.
The ciss(4) device, if you don’t know offhand, is for a variety of SCSI-3 adapters – mostly ones labeled “HP Smart Array”. Sascha Wildner has imported a large number of driver updates from FreeBSD.
More benchmarks, in this case a comparison of Debian GNU/kFreeBSD and DragonFly. I’m not even sure how to derive meaning from it.
Sascha Wildner has synced find(1) with what’s in FreeBSD, which means there’s a lot more options available – see the commit for details. Many of them are for GNU compatibility, and I’m sure I’ll forget them all. I seem to have issues remembering how to use find(1) successfully.
Sepherosa Ziehau has added netblast, a tool originally from FreeBSD that, if I’m reading the commit right, flings packets of a given size at an IP/port of your choosing, for as long as you want.
A few recent updates imported to DragonFly from FreeBSD: Francois Tigeot updated amdsbwd(4), an AMD south bridge watchdog. Sascha Wildner updated arcmsr(4), the Areca RAID controller driver, and Peter Avalos updated pw(8).
In the other direction, FreeBSD now has GNU hash support for rtld, based on John Marino’s work in DragonFly.
It’s now possible to specify a jail ID when using pgrep and pkill(1), to capture processes specific to a jail. It’s similar to the same option in FreeBSD, except no compatibility issues since this option did not previously exist in DragonFly.
Michael Lucas installed WHMCS, a commerical hosting management tool, on FreeBSD. He tells a story of doing so, and in the process happened to list all the PHP modules needed for it to run. I’m linking it because that list is going to come in useful for someone, someday.
Sascha Wildner has brought in improvements to the mps(4)driver from FreeBSD. It’s for LSI Logic Fusion-MPT 2 SAS controllers, and apparently didn’t work very well… until now. Sascha’s commit message details what’s new, including RAID support that is not yet mentioned in the man page.
Deb Goodkin of the FreeBSD Foundation gets 24 minutes of interview on BSDTalk.
Since I’m already talking about imports, several changes from FreeBSD and OpenBSD for NFS, plus more original material, have been brought in by Venkatesh Srinivas. Those changes from FreeBSD apparently improve NFS write performance, though I don’t have numbers to show.
The FreeBSD Foundation is putting out their end of year donation notice. Donate if you can; the support for active developers there helps everyone.
Adrian Chadd showed up on the DragonFly kernel@ mailing list, offering some help in keeping things compatible with FreeBSD and 802.11 networking. That’s quite neighborly of him, especially since his hands are already pretty full.
Yep, fall hits and it’s easier to find links.
- DragonFly morphology. The insect, not the operating system, though that would make an interesting diagram.
- Stick your pinkie in the corner of your mouth, Dr. Evil style, and say, “One MEEELion TCP connections on BSD!“. (via several retweets)
- Sudo vs. SSH public keys.
- The app store concept is taking over. Not that it’s a totally bad thing! We could implement one for pkgsrc, and should. (via)
- A nice (OpenBSD-centric) walkthrough of routing. (via)
- Ooh, decent disk benchmarks. I wish there were graphs, of course.
- I think this happens to most CS grads; you sit around one day and say to yourself, “Hey, I could write an operating system!” This forum post shows someone getting that idea and then realizing it’s not necessarily the goal he wanted. Why do I link to it? I appreciate the optimism.
- Or you can just build a functioning computer in Minecraft. This sort of thing has been happening for a while – this movie is just a link to the craziest example I’ve seen so far.
Your unrelated link of the week: Scientific Illustration. Not a comic, but still visually interesting.
Peter Avalos brought in a vast quantity of sh(1) updates, all from FreeBSD as far as I can tell. There’s a whole bunch more commits all on 8/21, but I’m tired of linking. Thank you, Peter!
If you have a HighPoint RocketRAID 4321 or 4322 model, Sascha Wildner’s just added support for them in the hptiop(4) driver, taken from FreeBSD.
Remember the benchmark tests I linked a few days ago? There’s been ongoing discussion about them, and a recent comment from Matthew Dillon sums it up pretty well: the benchmarks differ depending on whether you favor reads, or favor writes.
Francois Tigeot tested a system under both FreeBSD and DragonFly using various RAID setups with arcmsr(4) and blogbench. Hooray for graphs! Like any good benchmark, it quickly went to discussion of how the test was conducted and how the various runs differ. (Follow the thread.)
Google’s announced the accepted projects for 2011. DragonFly has 6 slots!
We had a large number of interesting project proposals; far more than than the slots available. If you’re one of the students who did not get in, please consider working on your project as time allows. I know it won’t be lucrative, but I’d still like to see them happen.
Here’s the list of accepted projects:
- Implementing a mirror target for device mapper: Adam Hoka, mentored by Joe Talbott
- Improve dsched interfaces and implement BFQ disk scheduling policy: Brills Peng, mentored by Alex Hornung
- Make vkernels checkpointable: Irina Presa, mentored by Venkatesh Srinivas
- Port PUFFS from NetBSD/FreeBSD: nickprok, mentored by Nathaniel Filardo
- Bring kernel event notification in DragonFly BSD to its logical conclusion: Samuel J. Greear, mentored by Sascha Wildner
- Porting Virtio Drivers from NetBSD to DragonFly BSD to speed up DragonFly BSD as a KVM guest: Stéphanie Ouillon, mentored by Pratyush Kshirsagar
February’s BSD Magazine is headlining “ZFS on FreeBSD”, along with a bunch of other material, including an interview/example for the next BSDCan convention. There’s some BSD-project-specific news in there from this site about DragonFly, along with MirOS, MidnightBSD, and FreeBSD.
Peter Avalos went looking for updates to /bin/sh, and found a lot of them, including regression tests. Even though sh is… 15 years old? Older? It dates back to BSD 4.4 and before – anyway, it’s been around forever, but there’s still things to do with it.
Sascha Wildner is continuing his huge driver-adding streak, this time with tws(4). It’s a port of the FreeBSD driver, for “LSI 3ware 9750 series SATA/SAS RAID controllers”. The commit message has a list of individual models, and further credits.
Sascha Wildner continues the driver update streak, bringing in the updated FreeBSD version of the aac(4) driver. This adds support for 40+ Adaptec AdvancedRAID cards – the aac(4) man page has a very long list.
Sascha Wildner’s added the hptmv(4) driver, for Highpoint RocketRAID 182x cards. It comes from Highpoint/FreeBSD.
Apparently the surplus money from the recent NYCBSDCon is going to each of the BSD projects. Great news! Now, what to do with it…
Sascha Wildner’s been on a RAID rampage lately, adding a lot of drivers. The latest is hptiop(4), which supports many of (all?) the HighPoint RocketRAID series.
The BSD Show! has a 20-minute interview with John Hixson, known for working on pc-sysinstall. (See also)
There’s still no support for KMS/GEM on any most BSDs, though there are people interested in it for FreeBSD. One of DragonFly’s Summer of Code projects was just that, though it’s not in a state where it can be really used.
Scott Ullrich, who has worked on several BSD-related projects, including DragonFly, has something called vCloudBSD, about which you now know as much as me. It looks to be a FreeBSD auto-installer for virtualization, though I’m sure I’m overgeneralizing.
Antonio Huete updated psm(4) using code from FreeBSD; I don’t think it’s been committed yet but the patch is available. This will be especially valuable to you if you have a synaptics touchpad; it enables many of the functions.
(I ran out of alliterative words, sorry.) Venkatesh Srinivas has committed his work on memory allocation; his commit message has details. He’s kindly provided a link to the article that inspired the per-thread magazine work. He’s also provided graphs to show comparative performance benefits of his new memory allocator on DragonFly and on FreeBSD.
Sascha Wildner brought in FreeBSD’s stress2 stress testing suite. It’s an efficient way to crash your system. Look at the README to find out the fastest way there.
November 20th, 2010 is the date for BSD-Day, in Budapest. Gabor Pali has a note out inviting developer to attend and give talks. There’s more details on a FreeBSD wiki page.
BSDTalk has a very timely interview with Roman Divácký and Ed Schouten about the switch to clang/LLVM in FreeBSD. It’s 17 minutes, recorded at the recent BSDCan 2010.
Sascha Wildner has ported MultiMedia Card support from FreeBSD; SD, SDHC, and MMC cards should work in DragonFly now. Man, there’s been a lot of new additions recently.
Rui Paulo’s work porting the current set of FreeBSD network drivers over to DragonFly has been committed; there’s about a zillion commits (via Matthew Dillon) today to show for it.
Gergo Szakal mentioned some ideas he had about binary upgrades; among other parts of the conversation, Samuel J. Greear/Sascha Wildner reminded everyone that Matthias Schmidt had ported the FreeBSD binary upgrade system over in late 2007, and it’s still around to play with.
That was fast – there’s another BSDTalk already! BSDTalk 186 has Jeff Roberson, FreeBSD committer. He’s talking about schedulers and softupdates for a good half hour.
Matthew Dillon declared his intention to have REDO working for Hammer very soon. This will improve speed by lowering the number of fsync()s needed in a given period of time to flush data to disk.
He continues in a separate message talking at length about data flushing and how to implement it efficiently, with some comparisons to work in FreeBSD. The followups are worth reading, too.
It’s New Year’s Eve Eve, and so here are a bunch of links I’ve built up over the past few days.
I’ve been building this entry up for a while, so some of these entries are newer than others.
- From the howling void: OpenSolaris or FreeBSD. I’ll admit I haven’t tried OpenSolaris, but I’m also biased to BSD.
- cpdup, originally-on-DragonFly software, has had an update.
- This description of the Content Pyramid talks about web content and links, but it could be stretched to open source software. There’s always been an implicit value to being at the top of the pyramid – hence the prestige not always fairly attached to “the commit bit”.
- Old computer facts (storage sizes) presented in handy infographic form? Sign me up!
- vitunes, a curses-based playlist manager. OpenBSD-specific, but may work on DragonFly. I like the look. (via)
- Video4Linux support is being worked on for FreeBSD, as apparently the headers are available without having to accept the GPL. This makes it potentially available to all the BSDs, which is nice.
- FreeNAS is moving to Linux, which is a mistake bummer. Except iXsystems stepped in and now FreeNAS is continuing as a FreeBSD-based item. A story that seemed bad but came out well, thanks to iXsystems. (Quick, buy their hardware!)
- “If you know of surviving software on 1/2″ tape, paper tape, cards, DECtape, etc. from users groups or computer manufacturers, please contact us. Equipment is available to recover these bits, and in some cases can be brought on-site.” (via)
- 3 BSD-themed holiday gifts.
A number of recent changes will be important to you if you develop on DragonFly:
- Sascha Wildner has added a indent(1) profile that matches what is usually done in DragonFly.
- Also, there’s a dragonfly.el for emacs users.
- Now new, but worth mentioning again: there is an excellent development(7) man page.
- Alex Hornung has ported and modified FreeBSD’s minidumps, so crash dumps can now be kept smaller than your total physical memory size.
This has been around for a while, but I’m re-mentioning it because it’s not really linked anywhere: Simon ‘corecode’ Schubert has a version of the FreeBSD NVIDIA video driver that should work on DragonFly: http://gitweb.dragonflybsd.org/~corecode/nvidia.git. It should be possible to clone from that link, build the code, and use it. (Untested by me – if you’ve done it, some explicit instructions would be helpful to others.)
Alex Hornung has ported FreeBSD’s kbdmux, making it possible to run multiple keyboards. This can help if a system has a built-in virtual keyboard, as some newer HPs do.
Dear universe, including DragonFly people: stop doing so much stuff. It’s hard to keep up.
Alexander Polakov has ported the ae(4) network driver from FreeBSD to DragonFly; it’s committed now. This device is common in some (many?) Asus Eee devices.
Dru Lavigne is going to be doing blogging/tweeting for the FreeBSD Project and FreeBSD Foundation. This is a good thing – BSD in general is helped by more of a conversation about what’s going on. I daresay this Digest has established that there’s definitely enough events, just with DragonFly, for daily news.
Also, Dru’s published summaries of the articles in the upcoming July ‘Collaboration’ issue of the Open Source Business Resource.
Hasso Tepper has added the open source HAL code for ath(4) (old man page), as suggested by Alexander Polakov. I’m not sure if this is related to Dmitry Komissaroff’s work.
Sepherosa Ziehau’s bwi(4) driver for DragonFly is going into FreeBSD 8, as mentioned in this Warner Losh blog post.
The newest BSDTalk has a conversation from BSDCan 2009 with 5 different FreeBSD core team members, for 38 minutes.
Mashing together to make one post:
FreeBSD-SA-09:05.telnet and FreeBSD-SA-09:07.libc have been fixed in DragonFly.
These PC-BSD 7.1 vs. Kubuntu 9.04 Benchmarks are interesting but not that conclusive – different versions of gcc were used. (thanks J. Kanowitz) Here’s a different comparison of performance inside a VM from Ivan Voras.
This story popped up last year, focusing on Kip Macy’s legal issues. Kip is a BSD developer, contributing to FreeBSD and having worked on checkpoint support in DragonFly. Another side of his story has come to light. He and his wife could use the support, but there is (that I know of) no immediate way to help.
It would be nice if there was some common news source for BSD topics, instead of being an also-ran for Linux; this is an example of where an online community can support its own members, instead of that negative story that has been out for months.
Hasso Tepper has updated the DRM code (from FreeBSD) with some caveats.
There is, of course, DragonFly project ideas for Google’s Summer of Code. There are also idea pages up for FreeBSD and NetBSD, both also participating this year.