46
BSD For Linux Users Dru Lavigne Community Manager, PC-BSD Project OCLUG, December 7, 2010

Oclug 2010

Embed Size (px)

DESCRIPTION

My presentation for December OCLUG meeting.

Citation preview

Page 1: Oclug 2010

BSD For Linux Users

Dru LavigneCommunity Manager, PC-BSD ProjectOCLUG, December 7, 2010

Page 2: Oclug 2010

This presentation will cover...

What exactly is BSD?

How is it different from Linux?

Does release engineering matter?

Any features unique to BSD?

Additional Resources

Page 3: Oclug 2010

What exactly is BSD?

Page 4: Oclug 2010

aka What exactly is Linux?

Page 5: Oclug 2010

kernel?

Page 6: Oclug 2010

distro?

Page 7: Oclug 2010

What is BSD?

Began as a series of patches and contributed applications for Unix from the University of Berkeley

Forked into several projects when Berkeley stopped working on BSD

Twenty Years of Berkeley Unix: From AT&T-Owned to Freely Redistributable

http://oreilly.com/catalog/opensources/

book/kirkmck.html

Page 8: Oclug 2010

What is BSD?

Projects originally differentiated by focus:

NetBSD: clean design and portability (57 supported platforms)

FreeBSD: production server stability and application support (22,431 apps)

OpenBSD: security and dependable release cycle

Dragonfly BSD: filesystem architecture

PC-BSD: anyone can install and use BSD

Page 9: Oclug 2010

How is BSD different from Linux?

Page 10: Oclug 2010
Page 11: Oclug 2010

Gnome on Ubuntu

Page 12: Oclug 2010

KDE on PC-BSD

Page 13: Oclug 2010

device names

Page 14: Oclug 2010

startup (no runlevels)

Page 15: Oclug 2010

one config file philosophy

Page 16: Oclug 2010

kernel configuration

Page 17: Oclug 2010

consistent layout (man hier)

Page 18: Oclug 2010

BSD vs GNU switches

Page 19: Oclug 2010

working examples

Page 20: Oclug 2010

Release Engineering?

Page 21: Oclug 2010

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 and features are built-in

High “bus factor”

Consistent separation between operating system and third party and between BSD and GPL'd code

Page 22: Oclug 2010

Release Engineering

● commit bit indicates write permission to code repository

● FreeBSD 446 commit bits● NetBSD 264 commit bits● OpenBSD 132 commit bits● plus thousands of contributors for

software, docs, translations, bug fixes, etc● Linux has 1 committer, 638 maintainers

Page 23: Oclug 2010

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

Page 24: Oclug 2010

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

Page 25: Oclug 2010

Features unique to BSD?

Page 26: Oclug 2010

securelevels

Page 27: Oclug 2010

FreeBSD jails

Page 28: Oclug 2010

NetBSD build.sh

Page 29: Oclug 2010

pkgsrc

Page 30: Oclug 2010

PC-BSD PBIs

Page 31: Oclug 2010

VuXML and portaudit

or pkg_admin audit

for pkgsrc systems

Page 32: Oclug 2010

NetBSD veriexec

Page 33: Oclug 2010

binary emulation

Page 34: Oclug 2010

FreeBSD netgraph

Page 35: Oclug 2010

ZFS support

Page 36: Oclug 2010

FreeBSD dtrace suport

Page 37: Oclug 2010

CARP

Page 38: Oclug 2010

FreeBSD superpages

Page 39: Oclug 2010

OpenBSM

Page 40: Oclug 2010

FreeBSD snapshots

Page 41: Oclug 2010

ALTQ

Page 42: Oclug 2010

DragonFly HAMMER

Page 43: Oclug 2010

Automated Testing Framework

Page 44: Oclug 2010

Non-GPLd Toolchain

Page 45: Oclug 2010

Additional Resources

How the FreeBSD Project Workshttp://2007.asiabsdcon.org/papers/P08-slides.pdf

FreeBSD Developmenthttp://www.freebsd.org/projects/index.html

The NetBSD Wayhttp://www.fosslc.org/drupal/content/netbsd-way-0

NetBSD Developmenthttp://www.netbsd.org/developers/

Page 46: Oclug 2010

Questions?

http://www.slideshare.net

/dlavigne/oclug-2010

[email protected]