📄 kernelconfig-config.html
字号:
<p>MII总线支持对于一些PCI 10/100 Ethernet NIC来说是必需的。</p><pre class="PROGRAMLISTING">device dc # DEC/Intel 21143 and various workalikesdevice rl # RealTek 8129/8139device sf # Adaptec AIC-6915 (``Starfire'')device sis # Silicon Integrated Systems SiS 900/SiS 7016device ste # Sundance ST201 (D-Link DFE-550TX)device tl # Texas Instruments ThunderLANdevice vr # VIA Rhine, Rhine IIdevice wb # Winbond W89C840Fdevice xl # 3Com 3c90x (``Boomerang'', ``Cyclone'')</pre><p>使用MII总线控制器代码的驱动器。</p><pre class="PROGRAMLISTING"># ISA Ethernet NICs.device ed0 at isa? port 0x280 irq 10 iomem 0xd8000device exdevice ep# WaveLAN/IEEE 802.11 wireless NICs. Note: the WaveLAN/IEEE really# exists only as a PCMCIA device, so there is no ISA attachment needed# and resources will always be dynamically assigned by the pccard code.device wi# Aironet 4500/4800 802.11 wireless NICs. Note: the declaration below will# work for PCMCIA and PCI cards, as well as ISA cards set to ISA PnP# mode (the factory default). If you set the switches on your ISA# card for a manually chosen I/O address and IRQ, you must specify# those parameters here.device an# The probe order of these is presently determined by i386/isa/isa_compat.c.device ie0 at isa? port 0x300 irq 10 iomem 0xd0000device fe0 at isa? port 0x300device le0 at isa? port 0x300 irq 5 iomem 0xd0000device lnc0 at isa? port 0x280 irq 10 drq 0device cs0 at isa? port 0x300device sn0 at isa? port 0x300 irq 10# requires PCCARD (PCMCIA) support to be activated#device xe0 at isa?</pre><p>ISA以太网驱动器。看看<ttclass="FILENAME">/usr/src/sys/i386/conf/LINT</tt>了解一下哪个卡被哪个驱动器支持。</p><pre class="PROGRAMLISTING">device ether # Ethernet support</pre><p><var class="LITERAL">ether</var> 只有在使用以太网卡时才需要。它包含了通用的以太网协议代码。在 FreeBSD 4.X 中应写作 <varclass="LITERAL">pseudo-device ether</var>.</p><pre class="PROGRAMLISTING">device sl 1 # Kernel SLIP</pre><p><var class="LITERAL">sl</var> 用于提供 SLIP 支持。 它已经几乎完全被 PPP取代,因为后者更容易配置,更适合调制解调器之间的连接,而且功能更加强大。 <varclass="LITERAL">sl</var> 后面的 <var class="REPLACEABLE">数字</var>用于指定支持同时开启多少个 SLIP 会话。 在 FreeBSD 4.X 中,应写作 <varclass="LITERAL">pseudo-device sl</var>.</p><pre class="PROGRAMLISTING">device ppp 1 # Kernel PPP</pre><p>这一选项提供用于拨号的内核模式 PPP 支持。 另外,也有以用户模式运行的 PPP 实现,使用<var class="LITERAL">tun</var>, 它更加灵活,而且提供了更多的功能,如按需拨号等等。 <varclass="LITERAL">ppp</var> 后面的 <var class="REPLACEABLE">数字</var>用于指定支持同时开启多少个 PPP 会话。 在 FreeBSD 4.X 中,应写作 <varclass="LITERAL">pseudo-device ppp</var>.</p><pre class="PROGRAMLISTING">device tun # Packet tunnel.</pre><p>这一选项会被用户模式的 PPP 软件用到。 <var class="LITERAL">tun</var> 后面的 <varclass="REPLACEABLE">数目</var> 用于指定允许的最大 PPP 连接数目。 具体细节, 请参考本书的<a href="userppp.html">PPP</a> 一节。 在 FreeBSD 4.X 上,请使用 <varclass="LITERAL">pseudo-device tun</var>。</p><pre class="PROGRAMLISTING"><a id="KERNELCONFIG-PTYS" name="KERNELCONFIG-PTYS"></a>device pty # Pseudo-ttys (telnet etc)</pre><p>这是 ``伪终端'' 或仿真的登入端口。 它会被进入的 <tt class="COMMAND">telnet</tt> 以及<tt class="COMMAND">rlogin</tt> 会话, <bclass="APPLICATION">xterm</b>,还有某些其它应用程序, 如 <b class="APPLICATION">Emacs</b>用刀。在 FreeBSD 4.X 中, 则应使用 <var class="LITERAL">pseudo-device pty <varclass="REPLACEABLE">数字</var></var>。 <var class="LITERAL">pty</var> 后面的 <varclass="REPLACEABLE">数字</var> 用于指定要创建的 <var class="LITERAL">pty</var> 数量。如果需要比默认值16更多的 <b class="APPLICATION">xterm</b> 窗口会话, 以及远程登录,请务必相应提高这个值, 其上限是 256。</p><pre class="PROGRAMLISTING">device md # Memory ``disks''</pre><p>Memory disk pseudo-devices. With FreeBSD 4.X use the line <varclass="LITERAL">pseudo-device md</var>.</p><pre class="PROGRAMLISTING">device gif # IPv6 and IPv4 tunneling</pre><p>这个设备实现了 IPv4 上的 IPv6 隧道、 IPv6 上的 IPv4 隧道、 IPv4 上的 IPv4 隧道,以及IPv6 上的 IPv6隧道。 从 FreeBSD 4.4 开始, <var class="LITERAL">gif</var>设备拥有了 ``自动克隆'' 的功能, 因此只需使用 <var class="LITERAL">pseudo-devicegif</var>。 而更早的 FreeBSD 4.X 版本则需要手工指定一个数字,例如 <varclass="LITERAL">pseudo-device gif 4</var>。</p><pre class="PROGRAMLISTING">device faith # IPv6-to-IPv4 relaying (translation)</pre><p>这个伪设备能捕捉发给它的数据包,并把它们转发给 IPv4/IPv6 翻译服务程序。在FreeBSD 4.X 中,应写作 <var class="LITERAL">pseudo-device faith 1</var>。</p><pre class="PROGRAMLISTING"># The `bpf' device enables the Berkeley Packet Filter.# Be aware of the administrative consequences of enabling this!device bpf # Berkeley packet filter</pre><p>这是 Berkeley 包过滤器。这个伪设备允许网络接口被置于混杂模式, 从而,截获广播网(例如,以太网) 上的每一个数据包。 截获的数据报可以保存到磁盘上,也可以使用 <spanclass="CITEREFENTRY"><span class="REFENTRYTITLE">tcpdump</span>(1)</span> 程序来分析。 在FreeBSD 4.X 中,应写作 <var class="LITERAL">pseudo-device bpf</var>。</p><div class="NOTE"><blockquote class="NOTE"><p><b>注:</b> <span class="CITEREFENTRY"><span class="REFENTRYTITLE">bpf</span>(4)</span>设备也被用于 <span class="CITEREFENTRY"><spanclass="REFENTRYTITLE">dhclient</span>(8)</span> 来获取默认路由器(网关)的 IP地址。如果使用DHCP,就不要注释掉这行。</p></blockquote></div><pre class="PROGRAMLISTING"># USB support#device uhci # UHCI PCI->USB interface#device ohci # OHCI PCI->USB interface#device usb # USB Bus (required)#device ugen # Generic#device uhid # ``Human Interface Devices''#device ukbd # Keyboard#device ulpt # Printer#device umass # Disks/Mass storage - Requires scbus and da#device ums # Mouse# USB Ethernet, requires mii#device aue # ADMtek USB ethernet#device cue # CATC USB ethernet#device kue # Kawasaki LSI USB ethernet</pre><p>支持多种USB设备.</p><p>更多有关FreeBSD支持的设备请参考<ttclass="FILENAME">/usr/src/sys/i386/conf/LINT</tt>.</p><div class="SECT2"><h2 class="SECT2"><a id="AEN9996" name="AEN9996">8.4.1. 大内存支持(<acronymclass="ACRONYM">PAE</acronym>)</a></h2><p>大内存配置的机器需要超过4GB的虚拟地址。 因为4GB的限制,Intel在<spanclass="TRADEMARK">Pentium</span>及后续的CPUs上增加了36位物理地址的支持。</p><p><span class="TRADEMARK">Intel</span>® <span class="TRADEMARK">Pentium</span>Pro和后续的CPUs允许内存地址扩展到64GB.(<acronym class="ACRONYM">PAE</acronym>)FreeBSD通过<var class="OPTION">PAE</var>选项来支持这个能力。 在FreeBSD4.X系列里面,4.9-RELEASE开始支持,FreeBSD 5.X系列里面,从5.1-RELEASE开始支持。 in the 4.Xseries of FreeBSD beginning with 4.9-RELEASE and in the 5.X series of FreeBSD beginningwith 5.1-RELEASE。因为Intel架构的限制,高于或低于4GB都没有什么区别,内存分配到大于4GB仅仅是增加了可利用的内存池。</p><p>为了让内核支持<acronymclass="ACRONYM">PAE</acronym>,只要增加下面这一行到配置文件:</p><pre class="PROGRAMLISTING">options PAE</pre><div class="NOTE"><blockquote class="NOTE"><p><b>注:</b> <acronym class="ACRONYM">PAE</acronym>在FreeBSD里面现在只能支持 <spanclass="TRADEMARK">Intel</span> IA-32处理器。 同时,还应该注意,FreeBSD的<acronymclass="ACRONYM">PAE</acronym>支持没有经过广泛的测试,和其他稳定的特性相比只能当作是beta版。</p></blockquote></div><p><acronym class="ACRONYM">PAE</acronym>在FreeBSD下有如下的一些限制:</p><ul><li><p>进程不能接触大于4GB的VM空间。</p></li><li><p><acronym class="ACRONYM">KLD</acronym> 模块不能加载到一个打开了<acronymclass="ACRONYM">PAE</acronym>支持的内核里面,这是因为内核模块和内核的建立框架不一样。</p></li><li><p>没有使用<span class="CITEREFENTRY"><spanclass="REFENTRYTITLE">bus_dma</span>(9)</span>界面的设备驱动程序在打开了<acronymclass="ACRONYM">PAE</acronym>支持的内核里面会导致数据腐化(corruption)。因为这个原因,FreeBSD 5.X的<ttclass="FILENAME">PAE</tt>内核配置文件 把所有在打开了<acronymclass="ACRONYM">PAE</acronym>的内核上不能工作的驱动程序排除在外。</p></li><li><p>一些系统打开了探测系统内存资源使用能力的功能,因为打开了 <acronymclass="ACRONYM">PAE</acronym>支持,这些功能可能会被覆盖掉。 其中一个例子就是内核参数<varclass="OPTION">kern.maxvnodes</var>,它是控制内核能使用的最大vnodes数目的,建议重新调整它及其他类似参数到合适的值。</p></li><li><p>为了避免<acronym class="ACRONYM">KVA</acronym>的消耗,很有必要增加系统的内核虚拟地址,或者减少很耗系统资源的内核选项的总量(看上面)。<var class="OPTION">KVA_PAGES</var>选项可以用来增加<acronym class="ACRONYM">KVA</acronym>空间。</p></li></ul><p>为了稳定和高性能,建议查看<span class="CITEREFENTRY"><spanclass="REFENTRYTITLE">tuning</span>(7)</span>手册页。<span class="CITEREFENTRY"><spanclass="REFENTRYTITLE">pae</span>(4)</span>手册页包含 FreeBSD's<acronymclass="ACRONYM">PAE</acronym>支持的最新信息。</p></div></div><h3 class="FOOTNOTES">注</h3><table border="0" class="FOOTNOTES" width="100%"><tr><td align="LEFT" valign="TOP" width="5%"><a id="FTN.AEN9577" name="FTN.AEN9577"href="kernelconfig-config.html#AEN9577"><span class="footnote">[1]</span></a></td><td align="LEFT" valign="TOP" width="95%"><p>自动赋值算法是设置<varclass="LITERAL">maxusers</var>等于系统的内存总量,最小到32,最大到384。</p></td></tr></table><div class="NAVFOOTER"><hr align="LEFT" width="100%" /><table summary="Footer navigation table" width="100%" border="0" cellpadding="0"cellspacing="0"><tr><td width="33%" align="left" valign="top"><a href="kernelconfig-building.html"accesskey="P">后退</a></td><td width="34%" align="center" valign="top"><a href="index.html"accesskey="H">起点</a></td><td width="33%" align="right" valign="top"><a href="kernelconfig-nodes.html"accesskey="N">前进</a></td></tr><tr><td width="33%" align="left" valign="top">建立并安装一个定制的内核</td><td width="34%" align="center" valign="top"><a href="kernelconfig.html"accesskey="U">上一级</a></td><td width="33%" align="right" valign="top">创建设备节点</td></tr></table></div></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -