0060-0062.html
来自「linux-unix130.linux.and.unix.ebooks130 l」· HTML 代码 · 共 286 行
HTML
286 行
<HTML>
<HEAD>
<TITLE>Developer.com - Online Reference Library - 0672311739:RED HAT LINUX 2ND EDITION:Configuring and Building Kernels</TITLE>
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
<SCRIPT>
<!--
function displayWindow(url, width, height) {
var Win = window.open(url,"displayWindow",'width=' + width +
',height=' + height + ',resizable=1,scrollbars=yes');
}
//-->
</SCRIPT>
</HEAD>
-->
<!-- ISBN=0672311739 //-->
<!-- TITLE=RED HAT LINUX 2ND EDITION //-->
<!-- AUTHOR=DAVID PITTS ET AL //-->
<!-- PUBLISHER=MACMILLAN //-->
<!-- IMPRINT=SAMS PUBLISHING //-->
<!-- PUBLICATION DATE=1998 //-->
<!-- CHAPTER=05 //-->
<!-- PAGES=0053-0074 //-->
<!-- UNASSIGNED1 //-->
<!-- UNASSIGNED2 //-->
<P><CENTER>
<a href="0057-0059.html">Previous</A> | <a href="../ewtoc.html">Table of Contents</A> | <a href="0063-0064.html">Next</A>
</CENTER></P>
<A NAME="PAGENUM-60"><P>Page 60</P></A>
<BR>
Figure 5.2.<BR>
The Code maturity<BR>
level options menu.<BR>
<a href="07rhu02.html"><img src="images/tn_07rhu02_jpg.jpg"></a><BR>
<P>At the top of the window is the title of the menu, and below the title is the list of options.
This menu has only one option, Prompt for development and/or incomplete code/drivers.
</P>
<P>To the left of this window are your choices for this particular option. The three choices
for each option are y for Yes, m for Module, and n for No. Selecting Yes means that the option
will be compiled into the kernel and always be loaded. If you choose Module, the kernel will
load that segment of code on demand. (For example, when you initiate a PPP connection, the
corresponding PPP code is loaded.) As you can imagine, choosing the No option excludes
this option from the kernel altogether.
</P>
<P>As you can see in the current window, the Module option is faded out (grayed or dimmed).
In this case, this particular option by itself doesn't add or remove anything from the kernel
but instead serves as a guide to the rest of the configuration options. Because the kernel you
are compiling is going for use in a server, you should not try any experimental code, so be sure
this option is set to No. Any experimental sections of the kernel will then be automatically
grayed, thus making them not available for use.
</P>
<P>As you go through the configuration, you'll likely come across options that you don't
know. As you upgrade kernels, you will find that these options are typically new ones that
someone has recently added but that are not well publicized. You can select a help option that is
located at the right of each option. Clicking the Help button opens another window describing
the option. Simply click the OK button to close the help window.
</P>
<P>After you finish working with this menu, you can take one of three actions. You can click
the Main Menu button to close the current window and return to the menu shown in Figure
5.1, you can click the Next button to go to the next configuration submenu, or you can click
the Prev button to go to the previous configuration submenu. Because Code maturity level
options is the first configuration submenu, the Prev button is faded out in this window, leaving
you access only to the Main Menu and Next buttons. Go ahead and click Next
now.
</P>
<H5><A NAME="ch05_ 9">Loadable Module Support
</A></H5>
<P>As I discussed earlier, loadable modules are chunks of the kernel that are loaded on
demand. This feature gives you the benefit of being able to support features not often used without
taking up additional memory during periods of non-use.
</P>
<P>The Loadable module support submenu in this particular kernel version consists of three
options, as you can see in Figure 5.3.
</P>
<A NAME="PAGENUM-61"><P>Page 61</P></A>
<BR>
Figure 5.3.<BR>
The Loadable module<BR>
support menu.<BR>
<a href="07rhu03.html"><img src="images/tn_07rhu03_jpg.jpg"></a><BR>
<P>You need to choose the first option, Enable loadable module support, if you want to be able
to make lesser-used features of the kernel loadable modules. Leave this option marked as Yes
unless you have a specific reason not to have moduleless kernel. Tagging it No dims the other
two options.
</P>
<P>The next option, Set version information on all symbols for modules, allows you to use
modules that were originally compiled for a different version of the kernel in the current kernel
if they are compatible. You should leave this option tagged Yes.
</P>
<P>The last option, Kernel daemon support, you'll definitely want to leave tagged Yes if you
are using modules. This way, the kerneld program can automatically load modules on
demand instead of forcing you to explicitly load and unload modules
by hand.
</P>
<H5><A NAME="ch05_ 10">
General Setup
</A></H5>
<P>On the General setup submenu, shown in Figure 5.4, you can configure several key
elements of the kernel. With these options, assume that they should be tagged Yes with the notable
exception of Limit memory to low 16MB, which should be tagged No.
</P>
<BR>
Figure 5.4.<BR>
The General setup<BR>
menu.<BR>
<a href="07rhu04.html"><img src="images/tn_07rhu04_jpg.jpg"></a><BR>
<P>You should turn on the first option, Kernel math emulation, only if you are compiling a
kernel on a CPU with no math coprocessor chip. This feature is applicable only to systems with
i386dx,
</P>
<A NAME="PAGENUM-62"><P>Page 62</P></A>
<P>
i386sx, or i486sx chips and no corresponding math coprocessors. All Pentium class
machines have math coprocessor support built into them. Selecting Yes for this option increases the
kernel size by 45 kilobytes. Kernel math support cannot be compiled as a module.
</P>
<P>If you plan to attach your machine to any kind of network, whether a LAN or via modem,
you need to select Yes for Networking support. Because Networking support determines
whether other options will be presented to you later and is not a feature in itself, you cannot select
the Module option for it.
</P>
<P>Some older motherboards had problems working with memory greater than 16MB. If
your system exhibits this behavior, you should set Limit memory to low 16MB to Yes.
Otherwise, leave it tagged No.
</P>
<CENTER>
<TABLE BGCOLOR="#FFFF99">
<TR><TD><B>
TIP
</B></TD></TR>
<TR><TD>
<BLOCKQUOTE>
If you have over 64MB of memory in your system, you need to pass this
information explicitly to the kernel. You do so by using the
mem=XXXM option at the boot: prompt, where XXX is the amount of RAM you have in megabytes. See Chapter 3, "LILO," on
configuring LILO to set this option as part of your default boot process.
</BLOCKQUOTE></TD></TR>
</TABLE></CENTER>
</P>
<P>Unless you know for sure that all the programs you plan to run on the system do not
require InterProcess Communication (IPC, a method by which two programs running
concurrently on one system can communicate with one another), you should set System V IPC to Yes.
Many programs do not work unless this option is turned on. Because of the tight integration that
is required between IPC and the kernel, this option cannot be compiled as a module.
</P>
<P>When Linux was first created, programs that it could run had to in
a.out format. (Programs are known as binaries in UNIX.) This format specifies how each program is structured
internally and how the kernel needs to process the program while loading it into memory. For
several reasons, the Linux development community decided to move to the ELF format. All <BR>
recent development has been using the ELF with
a.out quickly fading out of use. However, to ensure maximum compatibility with other programs, you should set both the Kernel
support for a.out binaries and Kernel support for ELF binaries to Yes.
</P>
<P>Because you opted not to use any experimental code in the Code maturity level options
submenu, the option for kernel support of Java binaries is dimmed here.
</P>
<P>The next-to-last option, Compile kernel as ELF - if your GCC is ELF-GCC, should be
tagged Yes. GCC, which is the GNU C compiler, has supported the generation for ELF binaries
for quite some time now. The version that ships with this book definitely has support.
</P>
<P>The last option on this window, Processor type, is a little different from the others. As you
can imagine, this option doesn't require a Yes/No answer but instead a list of processors for
which
</P>
<P><CENTER>
<a href="0057-0059.html">Previous</A> | <a href="../ewtoc.html">Table of Contents</A> | <a href="0063-0064.html">Next</A>
</CENTER></P>
</td>
</tr>
</table>
<!-- begin footer information -->
</body></html>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?