Skip to main content.

Episode 147: Release all the things!


Direct Download:

Video | HD Video | MP3 Audio | OGG Audio | Torrent

This episode was brought to you by

iXsystems - Enterprise Servers and 
Storage for Open SourceDigitalOcean - Simple Cloud Hosting, Built for DevelopersTarsnap - Online Backups for the Truly Paranoid


2016 FreeBSD Community Survey

  • We often get comments from our listeners, “I’m not a developer, how can I help out”?
  • Well today is your chance to do something. The FreeBSD Foundation has its 2016 Community Survey online, where they are asking for feedback from you!
  • I just did the survey, it’ll take you about 5 minutes, but gives you a chance to provide valuable feedback to the foundation about things that are important to you.
  • Be sure to answer in as much detail as possible and the foundation will review and use this feedback for its operations going forward.

ART, OpenBSDs new routing table, single thread performances

  • OpenBSD has changed the way routes are looked up in the kernel as part of their path to an SMP networking stack
  • The “Allotment Routing Table” (ART) is a performance tradeoff, where more memory is used to store the routing table, in exchange for faster lookups
  • With this new arrangement, a full BGP routing table will grow from 130MB to 180MB of memory
  • “ART is a free multibit trie based routing table. To keep it simple, it can be seen as using more memory for fewer CPU cycles. In other words, we get a faster lookup by wasting memory. The original paper presents some performance comparisons between two ART configurations and the BSD Radix. But how does this apply to OpenBSD?”
  • “I asked Hrvoje Popovski to run his packet forwarding test on his Xeon box (E5-2620 v2 @ 2.10GHz, 2400.34 MHz) with ix(4) (82599) interfaces. The test setup consist of three machines with the OpenBSD box in the middle”
  • “The simulations have been performed with an OpenBSD -current from June 9th. The machine is configured with pf(4) disabled in order to force a single route lookup for every IPv4 packet. Based on the result of the lookup the kernel decide if it should forward, deliver or drop the packet”

BSDCan 2016 Playlist

  • The complete set of videos from BSDCan is online and ready to be consumed
  • Remember the good-ole days where we would wait months (or years) to get videos posted from conferences?
  • Well, who are we kidding, some conferences STILL do that, but we can’t count BSDCan among them.
  • Only two weeks out from this years exciting BSDCan, and all the videos have now landed on YouTube.
  • Granted, this is no substitute for actually being at the conference, but even if you attended you probably missed quite a few of the talks.
  • There are no videos of the hallway track, which is the best part of the conference
  • Except the dinner discussion of course.
  • and don’t forget the hacker lounge

Should you be scared of Unix signals?

  • Do you know much about UNIX Signals?
  • Are you afraid of their complexity?
  • Do you know there are signals other than SIGKILL?
  • This article talks about the practical implications of signals from a programming perspective
  • The things you need to consider when dealing with signals
  • Basically, you register a “signal handler”, the function that will be run when a signal arrives
  • As you program is running, if a signal arrives, your program will be interrupted. Its current state will be saved and any system calls in progress will return EINTR (Error, Interrupted), then your signal handler will be run.
  • Once the signal handler is complete, the state of your application will be restored, and execution will resume
  • As long as your program properly handles this interruption, and errors that might result from it (getting EINTR from a read() call, instead of the data you expected), then everything should be fine.
  • Of course, you need to be careful what you do inside your signal handler, as if you modify any variables or state in your application, it might be very confused when it resumes.

Interview - Glen and Peter-

News Roundup

Unik - The Unikernel Compilation and Deployment Platform (uses NetBSD's Rump)

  • We’ve talked a bit about NetBSD’s RUMP (unikernel) in the past, including articles on how to deploy services using it.
  • Now we have an interesting project which makes the process super-easy, and dare-we-say almost “Docker-Like?”
  • The Unik project has a fairly complete walkthrough right on their GitHub project page, including details on installation and creating your own unikernel containers.
  • In addition, it provides instructions on boot-strapping your own Go/Node.js/Python/Java applications, and supports out of Box VCenter / AWS / Qemu / VirtualBox providers.

PkgSrc 50th Release Highlights

Migrating to FreeBSD from Solaris 11

How to chroot www/firefox on NetBSD

  • Looking for a jail-like method of running FireFox on NetBSD? (Or possibly other BSDs?)
  • We have a github repo with details on how to setup and run FireFox using a chroot using a “webuser” account for safety.
  • Think of this as a jail alternative, may be useful on systems with no jail support.
  • Of interest is the method used to do X forwarding. It uses Xorg TCP listen option (which is often off by default for security reasons). Perhaps SSH X forwarding would be a better alternative. (Or nullfs mounts of /tmp)

Beastie Bits


  • Send questions, comments, show ideas/topics, or stories you want mentioned on the show to

Latest News

New announcement


We understand that Michael Dexter, Brad Davis, and George Rosamond think there should be more real news....

Two Year Anniversary


We're quickly approaching our two-year anniversary, which will be on episode 105. To celebrate, we've created a unique t-shirt design, available for purchase until the end of August. Shirts will be shipped out around September 1st. Most of the proceeds will support the show, and specifically allow us to buy...

New discussion segment


We're thinking about adding a new segment to the show where we discuss a topic that the listeners suggest. It's meant to be informative like a tutorial, but more of a "free discussion" format. If you have any subjects you want us to explore, or even just a good name...

How did you get into BSD?


We've got a fun idea for the holidays this year: just like we ask during the interviews, we want to hear how all the viewers and listeners first got into BSD. Email us your story, either written or a video version, and we'll read and play some of them for...

Episode 276: ho, ho, ho - 12.0


Direct Download:MP3 AudioVideo Headlines FreeBSD 12.0 is available After a long release cycle, the wait is over: FreeBSD 12.0 is now officially available. We’ve picked a few interesting things to cover in the show, make sure to read the full Release Notes > Userland: > Group permissions on /dev/acpi have been changed to allow users in...

Episode 275: OpenBSD in stereo


Direct Download:MP3 AudioVideo Headlines DragonflyBSD 5.4 released DragonFly version 5.4 brings a new system compiler in GCC 8, improved NUMA support, a large of number network and virtual machine driver updates, and updates to video support. This release is 64-bit only, as with previous releases. The details of all commits...

Episode 274: Language: Assembly


Direct Download:MP3 AudioVideo Headlines Assembly language on OpenBSD amd64+arm64 This is a short introduction to assembly language programming on OpenBSD/amd64+arm64. Because of security features in the kernel, I have had to rethink a series of tutorials covering Aarch64 assembly language on OpenBSD, and therefore this will serve as a placeholder-cum-reminder....

Episode 273: A thoughtful episode


Direct Download:MP3 AudioVideo Headlines Some thoughts on NetBSD 8.0 NetBSD is a highly portable operating system which can be run on dozens of different hardware architectures. The operating system's clean and minimal design allow it to be run in all sorts of environments, ranging from embedded devices, to servers, to workstations....