1 of 33

NetBSD 10 –�30 Years, Still Going Strong!

Benny Siegert ‹bsiegert@NetBSD.org

FOSDEM 2024

2 of 33

Topics

  • 50 years of BSD?
  • 30 years of NetBSD
  • NetBSD 10

3 of 33

50 Years of BSD?

1BSD was released in 1978, but work started in 1974.

2BSD (for the PDP-11) is still maintained!

2.11BSD patch#481 came out in 2023.

You can run it in simh, or a PiDP-11.

4 of 33

3BSD and 4BSD were only for VAX.

4.3BSD-Tahoe brought multi-arch support.

Newsgroups: comp.sys.tahoe

From: bostic@OKEEFFE.BERKELEY.EDU (Keith Bostic)

Date: 15 Jun 88 23:56:31 GMT

Subject: 4.3BSD-tahoe release

[...]

The primary purpose of this release is to provide sup-

port for the ``tahoe'' processor, the CPU used by Computer

Consoles, Inc. (CCI Power 6/32, 6/32SX), and high end lines

of Harris (HCX-7 and HCX-9), Unisys (7000/40), and ICL (Clan

7).

5 of 33

30 years of NetBSD

From cgd@agate.berkeley.edu Wed Apr 21 21:11:32 1993

Newsgroups: comp.os.386bsd.announce,comp.unix.bsd,comp.os.386bsd.misc

Subject: So you say you want an interim release of 386bsd?

Keywords: 386BSD, NetBSD, free, BSD, sleep

Some of you have undoubtedly been wondering what i've been up

to lately... I've told some, i've randomly babbled to more,

and now everybody gets to know.

[...]

NetBSD is a new system, based heavily on 386BSD 0.1, with

many improvements over 386BSD 0.1, and with different goals

than those which are espoused by the principal developers

of 386BSD. NetBSD, as the name implies, is a creation of

the members of the network community and without the net,

it's likely that this release wouldn't have come about.

6 of 33

Some could look at NetBSD as simply an interim release of

386BSD. We look it as more, and therefore have named it

differently. The new name and version number reflect two

of our goals for NetBSD: an escape from the political wars

surrounding what we consider a wonderful operating system,

and the rapid development of a stable release which we

would consider of "production quality."

The Future of NetBSD:

--- ------ -- ------

[...]

We intend to integrate free, positive changes from

whatever sources will provide them, providing

that they are well thought-out and increase the

usability of the system.

[...]

Above all, we hope to create a stable and accessible system,

and to be responsive to the needs and desires of NetBSD

users, because it is for and because of them that NetBSD exists.

7 of 33

The Toaster

The year is 2005.

Technologic Systems Design�presents a toaster running NetBSD on arm.

“Of course it runs NetBSD!”

Photo Credit: Scott Beale

8 of 33

How relevant is this today?

A lot of the supported (Tier 2) architectures are kinda “retro”.

  • Dreamcast? Amiga? BeBox? SGI MIPS? VAX??

Real talk:�There is no modern hardware that runs NetBSD but not Linux.

9 of 33

Tier 1 Ports

10 of 33

Why use�NetBSD today?

11 of 33

A simple but powerful OS

A system that is understandable from top to bottom

  • NetBSD Guide is very complete
  • Manpages are complete and well written
  • Good learning opportunity
  • and no systemd :)

12 of 33

A simple but powerful OS

Good compromise between old-school Unix and modern features

  • boots with accelerated graphical console
  • ZFS, LVM, etc.
  • supporting lots of programming languages
  • Rock-solid server!
  • makes a surprisingly useful desktop OS

13 of 33

14 of 33

A welcoming community

Photo: pkgsrcCon 2019, Cambridge, UK

15 of 33

NetBSD 10

16 of 33

Release timeline

Jul 2019

NetBSD 9 branched

Feb 2020

NetBSD 9.0 released

HEAD

Dec 2022

NetBSD 10 branched

Jan 2024

NetBSD 10.0 RC3

17 of 33

What's New: Desktop

Big performance improvements in general

  • Scheduler aware of BIG/little cores

Graphics drivers now on par with Linux 5.6

  • Accelerated: Intel, NVidia, AMD

WireGuard support – wg(4)

Improved ZFS

18 of 33

What's New: Xen Improvements

Support for PVH (the highest performance mode).

Support for HVM with PV drivers (PVHVM).

19 of 33

What's New: ARM

  • Much better network and I/O throughput
  • Armv8-e security features
    • Pointer Authentication
    • Privileged Access Never
    • Branch Target Identification
  • Accelerated crypto
  • Many new supported systems

20 of 33

What's New: Caveats

  • SSL root certificates in base
    • SSL connections just work, mozilla-rootcerts not required
  • Improved entropy management
    • If you have no entropy source, stuff might hang
  • Extended attributes (POSIX.1e ACLs) in the file system
    • Requires new FFSv2ea file system (not the default)
    • Older versions cannot read this FS

21 of 33

What are you going to run it on?

22 of 33

Raspberry Pi

little or big-endian

RPi5 in -current only

23 of 33

Raspberry Pi 4

ODROID-N2+

Quartz64

ASUS Tinker Board

HummingBoard Pulse

Orange Pi 5

24 of 33

PineBook Pro

$199 ARM laptop

25 of 33

26 of 33

27 of 33

In the Cloud

  • Xen hypervisor (both guest and Dom0)
  • NVMM
  • HAXM hypervisor
  • Official images (“community AMIs”) for AWS
  • github.com/google/netbsd-gce
  • Vultr, Oracle Cloud, etc.

28 of 33

What are you going to run on it?

29 of 33

Packages: pkgsrc

NetBSD’s package collection (pkgsrc) is great!

  • 35,000+ packages, on 18+ OSes
  • Quarterly stable branches with binary packages
  • Stable branches get security updates through pull-ups
  • pkgin, the binary package manager

30 of 33

Packages: pkgsrc

No binary packages? No problem!

$ cd /usr/pkgsrc/www/firefox; make package-install

  • pkg_rolling-replace when a new branch comes out

31 of 33

Packages: pkgsrc

It's easy to create your own package.

pkgsrc-wip (“work in progress”)

  • Low barrier to entry, easy to get an account

32 of 33

Packages: pkgsrc

You can install a tree in an arbitrary directory,�without root privileges.

  • Similar to a Python virtualenv, �but for any kind of software

33 of 33

Thank you!

Questions?