NextBSD – FreeBSD ABI-compatible kernel with Mach built in and launchd

sunshine-o1 pts0 comments

NextBSD — the BSD of the 21st century

NextBSD

The BSD of the 21st century.

Download Preview →

Status

Kernel + Mach

Our own kernel, ABI-compatible with FreeBSD, with Mach built in — mach_msg, ports, port rights, bootstrap server. Kernel extensions provide drivers for GPU, Wi-Fi, and other hardware.

Done

launchd

Apple’s launchd-842.92.1 — the last open-source release — ported onto our Mach + libxpc stack. PID 1 capable.

Working

libxpc

Typed inter-process messaging on top of libdispatch + Mach. Forked from ravynOS; bootstrap server + connection lifecycle in flight.

Working

libdispatch

Grand Central Dispatch with a native Mach backend for our kernel — DISPATCH_SOURCE_TYPE_MACH_RECV on kqueue.

Working

CoreFoundation

Hybrid CF: GNUstep libs-corebase for value types; swift-corelibs CF for CFMachPort, CFRunLoop, CFBundle. Ships with Apple ICU.

Working

notifyd / ASL

Lightweight named-event bus and Apple System Logger — structured log records, BSD-text dual output, same C API.

Working

cfg

configd

One daemon owns network state, hostname, DNS. Apple’s configd ported as netconfigd with a Mach-RPC API.

Working

mdns

mDNSResponder

Apple’s Bonjour — multicast DNS and DNS-SD service discovery, ported as the system mDNS daemon with the same dns-sd API.

Working

io

IOKit registry

A replacement for devmatch/devd exposing an IOKit-shape IORegistry — IOServiceWaitQuiet, IORegistryEntryGetBusyState, and IOKitWaitQuiet.

Working

fs

DiskArbitration

DiskArbitration over libgeom + devctl(4).

In progress

bs

bootstrap_cmds

Darwin’s bootstrap_cmds — the Mach interface generator mig and friends. Core build tooling for the Mach RPC layer.

In progress

net

network_cmds

Darwin’s network_cmds — ifconfig, route, netstat and the networking userland.

In progress

fl

file_cmds

Darwin’s file_cmds — cp, mv, ls, chmod and the core file-manipulation utilities.

In progress

sh

shell_cmds

Darwin’s shell_cmds — shell-era basics: echo, test, kill, su, and their companions.

In progress

sys

system_cmds

Darwin’s system_cmds — ps, sysctl, login, and low-level system administration tools.

In progress

txt

text_cmds

Darwin’s text_cmds — text-processing utilities: sort, uniq, cut, cat, and friends.

In progress

adv

adv_cmds

Darwin’s adv_cmds — the advanced commands grab-bag: locale tooling, finger, last, and more.

In progress

pm

PowerManagement

Darwin’s PowerManagement — pmset and the power-management userland for sleep, wake, and battery policy.

In progress

img

IMG + ISO

A bootable disk image you can write to USB and boot today; an ISO follows later for CD/optical and virtual machine convenience.

In progress

ins

Installer

Lay down a fresh install — from tagged releases or rolling continuous builds alike.

Planned

upd

Updater

Move an existing system forward in place — tracking releases or the rolling continuous stream.

Planned

History

Where NextBSD came from.

A long lineage runs from Bell Labs UNIX, through Mach and NeXTSTEP, into<br>Darwin and the BSDs — and lands here. NextBSD Redux is the latest<br>pickup of work that has changed hands more than once.

1969

UNIX at Bell Labs.<br>AT&T&rsquo;s Bell Labs builds UNIX — the operating system every system on this timeline ultimately descends from.

1977

1BSD — the Berkeley line begins.<br>UC Berkeley releases the first Berkeley Software Distribution, a set of enhancements layered on AT&T UNIX.

1983

4.2BSD: FFS and TCP/IP.<br>Berkeley ships the Fast File System and TCP/IP networking — storage and networking groundwork that later BSDs, and macOS, would inherit.

mid-1980s

Mach is born at Carnegie Mellon.<br>CMU develops the Mach microkernel — a message-passing foundation that becomes the kernel core of NeXTSTEP and, later, Darwin.

1985

Steve Jobs founds NeXT.<br>After leaving Apple, Jobs starts NeXT to build a new generation of workstations and software.

1989

NeXTSTEP ships.<br>NeXT releases NeXTSTEP — the Mach kernel and BSD userland under an object-oriented application layer. The blueprint NextBSD follows.

1993

FreeBSD and NetBSD fork from 386BSD.<br>The open BSD distributions emerge and carry the Berkeley lineage forward. FreeBSD becomes the base NextBSD builds on.

1996

Apple acquires NeXT.<br>NeXTSTEP — Mach, BSD, and the Objective-C runtime — comes back to Apple and becomes the foundation of its next operating system.

2000

Mac OS X on Darwin.<br>Apple ships Mac OS X atop Darwin — the Mach kernel fused with BSD userland — the open-source core under every Apple OS since.

2006

OpenDarwin winds down.<br>The effort to ship Darwin as a standalone, installable operating system ends — leaving the system layer open but homeless.

2015

The original NextBSD.<br>A sponsored project sets out to bring the Darwin system layer — Mach IPC, launchd, libdispatch, notifyd — onto a FreeBSD base.

2016

NextBSD funding ends.

2021

ravynOS begins.<br>A new macOS-compatible effort starts on a FreeBSD base,...

mach darwin rsquo system apple progress

Related Articles