Announcing NetBSD 9.0 (Feb 14, 2020)
The NetBSD Project is pleased to announce NetBSD 9.0, the seventeenth major release of the NetBSD operating system.
This release brings significant improvements in terms of hardware support, quality assurance, security, along with new features and hundreds of bug fixes. Here are some highlights of this new release.
Support for AArch64 (64-bit Armv8-A) machines.
- Support for "Arm ServerReady" compliant machines (SBBR+SBSA)
- Symmetric and asymmetrical multiprocessing support (aka big.LITTLE)
- Support for running 32-bit binaries via COMPAT_NETBSD32 on CPUs that support it
- Single GENERIC64 kernel supports ACPI and devicetree based booting
- Allwinner A64, H5, H6
- Amlogic S905, S805X, S905D, S905W, S905X
- Broadcom BCM2837
- NVIDIA Tegra X1 (T210)
- QEMU "virt" emulated machines
- Rockchip RK3328, RK3399
- SBSA/SBBR (server-class) hardware using ACPI. Successfully test on, for example: Amazon Graviton and Graviton2 (including bare metal instances), AMD Opteron A1100, Ampere eMAG 8180, Cavium ThunderX, Marvell ARMADA 8040, QEMU w/ Tianocore EDK2
- Support for up to 256 CPUs
Enhanced hardware support for Armv7-A.
- Symmetric and asymmetrical multiprocessing support (aka big.LITTLE)
- UEFI bootloader
- Single GENERIC kernel supports devicetree based booting
- Allwinner A10, A13, A20, A31, A80, A83T, GR8, H3, R8
- Amlogic S805
- Arm Versatile Express V2P-CA15
- Broadcom BCM2836, BCM2837
- Intel Cyclone V SoC FPGA
- NVIDIA Tegra K1 (T124)
- Samsung Exynos 5422
- TI AM335x, OMAP3
- Xilinx Zynq 7000
- Support for up to 8 CPUs
- Updated GPU drivers on x86, bringing support for many recent Intel cards, and improved support for nVidia and AMD cards. Our DRM/KMS kernel subsystem is now at Linux 4.4 state.
New GPU drivers for Arm, including:
- DRM/KMS modesetting drivers for Allwinner DE2, Rockchip VOP, TI AM335x LCDC
- Basic framebuffer driver for Arm PrimeCell PL111, TI OMAP3 DSS
- Simple framebuffer support for reusing linear FBs configured by the bootloader
- Support for hardware-accelerated virtualization, via NetBSD's new NVMM hypervisor. A virtualization API is provided via the new libnvmm library, which allows to effortlessly create and manage virtual machines via NVMM. A new Qemu package called qemu-nvmm allows to run advanced guest OSes with NVMM. Find out more on this blog post, and this page.
- Improvements for using NetBSD as a guest OS, with support for the QEMU firmware configuration device, Virtio MMIO and PCI support for Arm, and HyperV support for x86.
- Support for Performance Monitoring Counters, via tprof, available on Armv7, Armv8, and x86 AMD and Intel. It allows to analyze the performance of the kernel and user applications at execution time.
- Support for Kernel ASLR, on x86 64-bit, via the new GENERIC_KASLR kernel configuration file. This implementation is one of the most advanced available to date. The default GENERIC configuration is also shipped with a partial Kernel ASLR enabled by default. Find out more on this page.
- Support for KLEAK, a new feature able to detect kernel memory disclosures, with initial support for amd64. It allowed to find and fix more than 25 bugs in the kernel. Find out more in this paper.
- Support for Kernel Address Sanitizer (KASAN), on amd64 and aarch64. This feature allows the kernel to detect illegal memory accesses, such as buffer overflows, stack overflows and use-after-frees. KASAN plays an important role in assuring kernel code quality.
- Support for Kernel Undefined Behavior Sanitizer (KUBSAN), this feature allows the kernel to detect several classes of undefined behavior. KUBSAN also plays an important role in assuring kernel code quality.
- Support for Kernel Coverage (KCOV), on amd64. This drivers allows fuzzers to collect kernel coverage to improve fuzzing inputs.
- Support for userland sanitizers, with new configurations allowing to run the entire userland stack with sanitizers.
- Kernel Heap Hardening, making it harder to exploit several classes of memory bugs.
- Audited network stack, bringing more confidence in the networking components of the kernel. Find out more on this blog entry.
- Many bug fixes and enhancements for the ptrace(2) debugger framework.
- Removal of numerous old and unmaintained components. This results in a code base that is much cleaner, smaller, and easier to work on. The removed items include NETISDN and related drivers (daic, iavc, ifpci, ifritz, iwic, isic), NETNATM and the related midway driver, several compatibility layers (NDIS, SVR3, SVR4), the n8 driver, vm86, ipkdb, among others.
- Many improvements in NPF, including new features, bug fixes, better documentation, and increased performance with a new lookup algorithm (thmap). NPF is now enabled by default.
- Updated ZFS. This is the first release with ZFS usable for daily use, but there is no support for booting from ZFS nor using ZFS as root filesystem yet.
- New drivers, such as bwfm for Broadcom Full-MAC wireless devices, ena for Amazon Elastic Network Adapter, and mcx Mellanox ConnectX-4 Lx EN, ConnectX-4 EN, ConnectX-5 EN, and ConnectX-6 EN ethernet adapters. Various other drivers have been added, and support for more hardware variants added to existing drivers.
- Reworked SATA subsystem, now supporting multiple commands in transit (NCQ), and with better handling of errors reported by the drive.
- New usbnet framework, a common framework for USB Ethernet drivers. Find out more on this blog post.
- Several 3rd-party components were updated to new versions, such as: GCC 7.4, GDB 8.3, LLVM 7.0.0, OpenSSL 1.1.1d, OpenSSH 8.0, sqlite 3.26.0.
Complete source and binaries for NetBSD 9.0 are available for download at many sites around the world. You can download NetBSD 9.0 from our main CDN, or use a mirror site close to you. A list of hashes, signed by the NetBSD Security Officer's PGP key, is available for the NetBSD 9.0 distribution in this file.
NetBSD is free. All of the code is under non-restrictive licenses, and may be used without paying royalties to anyone. Free support services are available via our mailing lists and website. Commercial support is available from a variety of sources. More extensive information on NetBSD is available from our website:
The NetBSD 9.0 release provides supported binary distributions for the following systems:
|NetBSD/acorn32||Acorn RiscPC/A7000, VLSI RC7500|
|NetBSD/algor||Algorithmics, Ltd. MIPS evaluation boards|
|NetBSD/alpha||Digital/Compaq Alpha (64-bit)|
|NetBSD/amd64||AMD family processors like Opteron, Athlon64, and Intel CPUs with EM64T extension|
|NetBSD/amiga||Commodore Amiga and MacroSystem DraCo|
|NetBSD/amigappc||PowerPC-based Amiga boards.|
|NetBSD/arc||MIPS-based machines following the Advanced RISC Computing spec|
|NetBSD/atari||Atari TT030, Falcon, Hades|
|NetBSD/bebox||Be Inc's BeBox|
|NetBSD/cats||Chalice Technology's CATS and Intel's EBSA-285 evaluation boards|
|NetBSD/cesfic||CES FIC8234 VME processor board|
|NetBSD/cobalt||Cobalt Networks' MIPS-based Microservers|
|NetBSD/dreamcast||Sega Dreamcast game console|
|NetBSD/emips||The Extensible MIPS architecture from Microsoft Research|
|NetBSD/epoc32||Psion EPOC PDAs|
|NetBSD/evbarm||Various Arm-based evaluation boards and appliances|
|NetBSD/evbmips||Various MIPS-based evaluation boards and appliances|
|NetBSD/evbppc||Various PowerPC-based evaluation boards and appliances|
|NetBSD/evbsh3||Various Hitachi Super-H SH3 and SH4-based evaluation boards and appliances|
|NetBSD/ews4800mips||NEC's MIPS-based EWS4800 workstation|
|NetBSD/hp300||Hewlett-Packard 9000/300 and 400 series|
|NetBSD/hpcarm||StrongArm based Windows CE PDA machines|
|NetBSD/hpcmips||MIPS-based Windows CE PDA machines|
|NetBSD/hpcsh||Hitachi Super-H based Windows CE PDA machines|
|NetBSD/hppa||Hewlett-Packard 9000 Series 700 workstations|
|NetBSD/i386||IBM PCs and PC clones with i486-family processors and up|
|NetBSD/ibmnws||IBM Network Station 1000|
|NetBSD/iyonix||Castle Technology's Iyonix Arm based PCs|
|NetBSD/landisk||SH4 processor based NAS appliances|
|NetBSD/luna68k||OMRON Tateisi Electric's LUNA series|
|NetBSD/mac68k||Apple Macintosh with Motorola 68k CPU|
|NetBSD/macppc||Apple PowerPC-based Macintosh and clones|
|NetBSD/mipsco||MIPS Computer Systems Inc. family of workstations and servers|
|NetBSD/mmeye||Brains mmEye multimedia server|
|NetBSD/mvme68k||Motorola MVME 68k Single Board Computers|
|NetBSD/mvmeppc||Motorola PowerPC VME Single Board Computers|
|NetBSD/netwinder||StrongArm based NetWinder machines|
|NetBSD/news68k||Sony's 68k-based “NET WORK STATION” series|
|NetBSD/newsmips||Sony's MIPS-based “NET WORK STATION” series|
|NetBSD/next68k||NeXT 68k “black” hardware|
|NetBSD/ofppc||OpenFirmware PowerPC machines|
|NetBSD/pmax||Digital MIPS-based DECstations and DECsystems|
|NetBSD/prep||PReP (PowerPC Reference Platform) and CHRP machines|
|NetBSD/rs6000||IBM RS/6000 MCA-based PowerPC machines.|
|NetBSD/sandpoint||Motorola Sandpoint reference platform, including many PPC-based NAS boxes|
|NetBSD/sgimips||Silicon Graphics' MIPS-based workstations|
|NetBSD/shark||Digital DNARD (“shark”)|
|NetBSD/sparc||Sun SPARC (32-bit) and UltraSPARC (in 32-bit mode)|
|NetBSD/sparc64||Sun UltraSPARC (in native 64-bit mode)|
|NetBSD/sun2||Sun Microsystems Sun 2 machines with Motorola 68010 CPU|
|NetBSD/sun3||Motorola 68020 and 030 based Sun 3 and 3x machines|
|NetBSD/x68k||Sharp X680x0 series|
|NetBSD/xen||The Xen virtual machine monitor|
|NetBSD/zaurus||Sharp Arm PDAs|
Ports included in the release but not fully supported or functional:
|NetBSD/ia64||Itanium family of processors|
NetBSD 9.0 is dedicated to the memory of Matthias Drochner, who passed away in August 2018, and Eric Schnoebelen, who passed away in March 2019.
Matthias' technical contributions are too many to list here in full. He was a long term contributor and committed more than 3000 changes all over the source tree and lately was especially active in keeping some of our weirdest ancient VME architectures in shape.
Eric was a long term pkgsrc developer and well known community member.
Beyond their technical contributions, Eric and Matthias were always helpful and friendly. Their example encouraged users to contribute to the project and share their work with the community.
The NetBSD Foundation would like to thank all those who have contributed code, hardware, documentation, funds, colocation for our servers, web pages and other documentation, release engineering, and other resources over the years. More information on the people who make NetBSD happen is available at:
We would also like to thank the Tasty Lime and the Network Security Lab at Columbia University's Computer Science Department for current colocation services. Thanks to Fastly for providing the CDN services.
NetBSD is a free, fast, secure, and highly portable Unix-like Open Source operating system. It is available for a wide range of platforms, from large-scale servers and powerful desktop systems to handheld and embedded devices. Its clean design and advanced features make it excellent for use in both production and research environments, and the source code is freely available under a business-friendly license. NetBSD is developed and supported by a large and vibrant international community. Many applications are readily available through pkgsrc, the NetBSD Packages Collection.
The NetBSD Foundation was chartered in 1995, with the task of overseeing core NetBSD project services, promoting the project within industry and the open source community, and holding intellectual property rights on much of the NetBSD code base. Day-to-day operations of the project are handled by volunteers.
As a non-profit organization with no commercial backing, the NetBSD Foundation depends on donations from its users, and we would like to ask you to consider making a donation to the NetBSD Foundation in support of continuing production of our fine operating system. Your generous donation would be particularly welcome to help with ongoing upgrades and maintenance, as well as with operating expenses for the NetBSD Foundation.
Donations can be done via PayPal to
<paypal@NetBSD.org>, or via Google Checkout and are fully
tax-deductible in the US. See
www.NetBSD.org/donations/ for more information, or
Back to NetBSD 9.x formal releases