This document provides an introduction to customizing the FreeBSD 6 kernel through kernel module programming. It discusses topics such as the anatomy of a kernel module, including the use of DECLARE_MODULE and Makefiles. It also covers exporting configuration parameters through sysctl variables, and installing packet filters (PFIL) hooks. The document is intended to act as a primer for those new to FreeBSD kernel programming.