Revamp the synopsis, and flesh out the "Why build a custom kernel?" section.
This commit is contained in:
parent
43796b8868
commit
c3f5ae8e0b
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/head/; revision=10131
1 changed files with 57 additions and 6 deletions
|
@ -1,7 +1,7 @@
|
|||
<!--
|
||||
The FreeBSD Documentation Project
|
||||
|
||||
$FreeBSD: doc/en_US.ISO8859-1/books/handbook/kernelconfig/chapter.sgml,v 1.53 2001/07/20 21:44:45 chern Exp $
|
||||
$FreeBSD: doc/en_US.ISO8859-1/books/handbook/kernelconfig/chapter.sgml,v 1.54 2001/07/30 17:18:52 murray Exp $
|
||||
-->
|
||||
|
||||
<chapter id="kernelconfig">
|
||||
|
@ -18,16 +18,67 @@
|
|||
<secondary>building a custom kernel</secondary>
|
||||
</indexterm>
|
||||
|
||||
<para>The following chapter of the handbook covers everything you will
|
||||
need to know in order to build a custom kernel. If you are
|
||||
wondering what the benefits of a custom kernel are, or would like to
|
||||
know how to configure, compile, and install a custom kernel, this
|
||||
chapter is for you.</para>
|
||||
<para>The kernel is the core of the FreeBSD operating system. It is
|
||||
responsible for managing memory, enforcing security controls,
|
||||
networking, disk access, and much more. While more and more of FreeBSD
|
||||
becomes dynamically configurable it is still occasionally necessary to
|
||||
reconfigure and recompile your kernel.</para>
|
||||
|
||||
<para>After reading this chapter you will know:</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>Why you might need to build a custom kernel</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>How to write a kernel configuration file, or alter an existing
|
||||
configuration file</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>How to use the kernel configuration file to create and build a
|
||||
new kernel</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>How to install the new kernel</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>How to create any entries in <filename>/dev</filename> that may
|
||||
be required</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>How to troubleshoot if things go wrong</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</sect1>
|
||||
|
||||
<sect1>
|
||||
<title>Why Build a Custom Kernel?</title>
|
||||
|
||||
<para>Traditionally FreeBSD has had what is called a
|
||||
<quote>monolithic</quote> kernel. This means that the kernel was one
|
||||
large program, supported a fixed list of devices, and if you wanted to
|
||||
change the kernel's behaviour then you had to compile a new kernel, and
|
||||
then reboot your computer with the new kernel.</para>
|
||||
|
||||
<para>Today, FreeBSD is rapidly moving to a model where much of the
|
||||
kernel's functionality is contained in modules which can be dynamically
|
||||
loaded and unloaded from the kernel as necessary. This allows the
|
||||
kernel to adapt to new hardware suddenly becoming available (such as
|
||||
PCMCIA cards in a laptop), or for new functionality to be bought in to
|
||||
the kernel that was not necessary when the kernel was originally
|
||||
compiled. Colloquially these are called KLDs.</para>
|
||||
|
||||
<para>Despite this, it is still necessary to carry out some static kernel
|
||||
configuration. In some cases this is because the functionality is so
|
||||
tied to the kernel that it can not be made dynamically loadable. In
|
||||
others it may simply be because no one has yet taken the time to write a
|
||||
dynamic loadable kernel module for that functionality yet.</para>
|
||||
|
||||
<para>Building a custom kernel is one of the most important rites of
|
||||
passage nearly every Unix user must endure. This process, while
|
||||
time consuming, will provide many benefits to your FreeBSD system.
|
||||
|
|
Loading…
Reference in a new issue