Axa Assurance Maroc - Insurer Innovation Award 2024
Scale 2010: BSD for Linux Users
1. BSD For Linux Users
Dru Lavigne
Chair, BSD Certification Group
SCALE 2010
2. This presentation will cover...
What is this BSD you speak of? (frame of
reference)
How is BSD different? (will I like it?)
Release engineering? (behind the scenes)
Any features unique to BSD? (am I missing
out on anything cool?)
Books (some recommended reading)
8. Back to BSD....
Since we only have 45 minutes.....
We'll start with an overview of the BSD
projects
Then concentrate on some of the
differences Linux users tend to notice on
BSD
9. Back to BSD....
Differentiated by focus:
NetBSD: clean design and portability (56
supported platforms)
FreeBSD: production server stability and
application support (21,250+ apps)
OpenBSD: security and dependable release
cycle
Dragonfly BSD: filesystem architecture
PC-BSD: anyone can install and use BSD
23. Release Engineering
Complete operating system, not kernel +
distro: one source for security advisories,
less likelihood of incompatible libraries
Integration of features not limited by
copyleft: e.g. drivers are built-in
High “bus factor”
Consistent separation between operating
system and third party and between BSD
and GPL'd code
24. Release Engineering
● While each BSD project has a separate
focus, the communities share ideas/code
● Mentorship process to earn commit bit
● FreeBSD 417 commit bits
● NetBSD 263 commit bits
● OpenBSD 127 commit bits
● plus thousands of contributors for
software, docs, translations, bug fixes, etc
● Linux has 1 committer, 196 maintainers
25. Release Engineering
Principles used by the BSD projects reflect
their academic roots:
● well defined process for earning a
“commit bit” includes a period of working
under a mentor
● code repository from Day 1 and can
trace original code back to CSRG days
● no “leader”, instead well defined release
engineering, security, and doc teams
26. Release Engineering
● development occurs on CURRENT which is
frozen in preparation for a RELEASE
● nightly builds (operating system and
apps) help ensure that upgrades and
installs don't result in library
incompatibilities (safe for production)
● documentation considered as important
as code