FreeBSD: The Foundation of the Internet

Technologies
c/c++, llvm, assembly, shell script, make
Topics
virtualization, security, embedded systems, cloud, kernel
FreeBSD: The Foundation of the Internet

FreeBSD is an advanced operating system for modern server, desktop, and embedded computer platforms. FreeBSD provides advanced networking, impressive security features, and world class performance, and is used by some of the world's busiest web sites and most pervasive embedded networking and storage devices. From providing the foundation to the PlayStation 4 operating system, to Juniper's routers making up the backbone of the Internet, to being at the core of Apple's OSX and powering the servers Netflix use to stream terabits of video every second, chances are you are using FreeBSD right now without even realising it.

The FreeBSD Project began 25 years ago in 1993, but is based on the work of Berkeley CSRG with a history going back to 1978. Over those years the code base has gone through continuous development, improvement, and optimization. The FreeBSD Project is a large, mature, and yet relatively tightly knit organization, developed and maintained by a large team of individuals.

There are currently over 300 developers with write access to the main revision control system, and hundreds more with access to our Subversion servers for experimental and third party development. This is also where our Summer of Code students have worked in previous years. We have an active mentoring program to bring all new developers into our community, not just those that we introduce to FreeBSD through the GSoC. There are hundreds of mailing lists, forums, blogs, IRC channels, and user groups all detailed on our main website. FreeBSD offers a complete operating system in which students can work, not just a kernel or specific userland stack. This allows for interesting work that spans the userland/kernel boundary.

In addition to producing an operating system, FreeBSD has incubated the development of key pieces of infrastructure which are used by other open source projects including bsnmp, jemalloc, libarchive, and OpenPAM.

2018 Program

Successful Projects

Contributor
Pratyush Yadav
Mentor
Edward Napierala, ghostrider
Organization
FreeBSD
Import the Xen grant-table bus_dma(9) handlers from OpenBSD
Xen uses the grant table interface to grant foreign domains access to page frames and to do ownership transfer. Each domain maintains its own grant...
Contributor
Yutaro Hayakawa
Mentor
Hiroki Sato, Ryan Stone
Organization
FreeBSD
eBPF Implementation for FreeBSD
This project proposes eBPF implementation for FreeBSD. It will have very basic functionality such as maps, interpreter, JIT compiler for x86-64 and...
Contributor
Lakhan Kamireddy
Mentor
Chuck Tuffli, Warner Losh
Organization
FreeBSD
Convert all PCI drivers attachments to be table driven and mark with PNP_INFO
This project is being undertaken under the mentorship of FreeBSD organization. The goal of the project is to convert all the PCI drivers attachments...
Contributor
Stefano Duo
Mentor
Giuseppe Lettieri, Vincenzo Maffione
Organization
FreeBSD
Extensions to the netmap framework
The project has 3 major goals: Extend VALE switches to support the IEEE 802.1Q standard Extend netmap to support buffer offsets Write a testing...
Contributor
Christian Krämer
Mentor
Chuck Tuffli, Luiz
Organization
FreeBSD
Implementation of a user space interface for GPIO interrupts
FreeBSD already has support for interrupts implemented in the GPIO controller drivers of several SoCs, but there are no interfaces to take advantage...
Contributor
Shubh Gupta
Mentor
Jonathan Anderson
Organization
FreeBSD
Oblivious Sandboxing with Capsicum
Security is of paramount importance. Capsicum sticks to it principles, but is finite, this project aims on making it more widely applicable....
Contributor
Mateus de Morais
Mentor
David Naylor, David Chisnall
Organization
FreeBSD
Porting Microsoft's CoreCLR, CoreFX, and PowerShell to FreeBSD
PowerShell is a widely used administration tool in Windows Server workloads. This project aims at porting it to FreeBSD in order to make it easier...
Contributor
Aniket Pandey
Mentor
gnn
Organization
FreeBSD
Regression Test Suite for Audit Framework
FreeBSD has an audit subsystem which is responsible for monitoring a variety of security-relevant system events, such as user-logins, configuration...