当前位置:早雪网网络学院编程文档数据库技术Access → FreeBSD连载(60):缺省内核配置选项

FreeBSD连载(60):缺省内核配置选项

减小字体 增大字体 作者:不详  来源:supcode.com收集整理  发布时间:2005-7-23 15:06:26

缺省内核配置选项

  通用内核的设置文件中包含了很多比较重要的设置选项,这里的设置选项也是最常用的配置选项,为了编译出适合自己计算机的设置,就需要了解这个文件中的设置选项。

#
# GENERIC -- Generic machine with WD/AHx/NCR/BTx family disks
#
# For more information read the handbook part System Administration -> 
# Configuring the FreeBSD Kernel -> The Configuration File. 
# The handbook is available in /usr/share/doc/handbook or online as
# latest version from the FreeBSD World Wide Web server 
# <URL:http://www.FreeBSD.ORG/>
#
# An exhaustive list of options and more detailed explanations of the 
# device lines is present in the ./LINT configuration file. If you are 
# in doubt as to the purpose or necessity of a line, check first in LINT.
#
#	$Id: GENERIC,v 1.143.2.2 1999/02/15 02:50:07 des Exp $

machine		"i386"
cpu		"I386_CPU"
cpu		"I486_CPU"
cpu		"I586_CPU"
cpu		"I686_CPU"
ident		GENERIC
maxusers	32

  machine行定义了系统所使用的计算机体系结构,对于运行在个人计算机平台上的FreeBSD,此参数值只能是i386,运行在其他平台上的BSD系统将使用其他相应设置。注意由于这个配置参数中混用了字母和数字,因此需要用引号将其括起来。这种情况在配置文件中经常会碰到,如果不使用双引号括起来,配置程序就不能区分它是用于标识字符串还是用于数值设置,造成语法错误。

  可以多个cpu参数描述了处理器类型,可以使用 ”I386_CPU” 、 “I486_CPU” 、 “I586_CPU” 、 “I686_CPU” 四种类型。 “I386_CPU” 是最低配置,缺省的GENERIC配置文件中将这些类型全部列出,这使得这个通用内核在任何个人计算机系统下都能正常运行,但最好根据处理器类型进行针对配置。由于处理器是向下兼容的,但不能向上兼容,因此如果配置的参数高于计算机实际处理器类型,内核就不能正常启动和工作。

  对于586以上的处理器,各个兼容厂商的标记方法各不相同,因此必须小心选择正确的处理器类型,以避免选择错误。可以使用系统启动时的检测信息来判断处理器的类型:

# dmesg | grep ^CPU

  ident用于标识内核,每个内核都应该具有自己的标识,GENERIC内核的标识为GENERIC,而自己定制的内核可以在这一行中定义自己的标识。由于系统中可能存在有多个内核,因此使用这个标识来帮助区分不同的内核。这个标识在系统启动时将显示在启动屏幕上。

  maxusers这个值并不直接限制FreeBSD的用户数目,而是定义了内核中的一些非常重要的系统表格大小,这些表格会随系统中进程的增加和资源的被占用会逐渐被填满,而系统中的用户和进程数量有一定的关系,因此这个值大概等于系统同时允许的用户数目。但是当用户使用X Winodw或其他产生了大量进程和应用程序时,即使只有很少的用户,系统表格也很容易被填满。因此这个值不能设置的太小。尤其是要将FreeBSD 用作服务器的时候,服务器会启动大量的进程,往往要增大这个值以提升系统对高负载的支持能力。

  系统的进程表的大小为:20+16*maxusers,去除系统启动时自动启动的一些守护进程数目,因此可以大致估计出系统中空余的进程表项。进而估计出系统中还可以容纳的进程数目,因此就可以根据需求改变这个值的设置。

options		MATH_EMULATE		#Support for x87 emulation
options		INET			#InterNETworking
options		FFS			#Berkeley Fast Filesystem
options		FFS_ROOT		#FFS usable as root device [keep this!]
options		MFS			#Memory Filesystem
options		MFS_ROOT		#MFS usable as root device, "MFS" req'ed
options		NFS			#Network Filesystem
options		NFS_ROOT		#NFS usable as root device, "NFS" req'ed
options		MSDOSFS			#MSDOS Filesystem
options		"CD9660"		#ISO 9660 Filesystem
options		"CD9660_ROOT"		#CD-ROM usable as root. "CD9660" req'ed
options		PROCFS			#Process filesystem
options		"COMPAT_43"		#Compatible with BSD 4.3 [KEEP THIS!]
options		SCSI_DELAY=15000	#Be pessimistic about Joe SCSI device
options		UCONSOLE		#Allow users to grab the console
options		FAILSAFE		#Be conservative
options		USERCONFIG		#boot -c editor
options		VISUAL_USERCONFIG	#visual boot -c editor

config		kernel	root on wd0

  MATH_EMULATE选项是一个x87浮点运算模拟器,当计算机中没有x87协处理器时才需要使用。当前586级以上处理器的处理器内部均已集成了浮点运算器件,因此除非使用386芯片或部分低档486芯片,内核配置并不需要这种模拟功能。此外,另一个具有相同功能的选项为GPL_MATH_EMULATE,这个选项性能更好,只是它使用GNU的数学函数代码,而GNU公用许可比BSD许可要求更严格。因为这个版权的原因,缺省使用 MATH_EMULATE,这保证FreeBSD可以只以二进制形式向外发布,而不违反GNU许可。由于两个选项功能相同,只能任选一种,不能同时使用这两个选项。

  INET选项定义了基本的TCP/IP支持,由于FreeBSD是网络操作系统,因此这是最基本的选项。

  FFS为BSD快速文件系统,即UFS文件系统,这是FreeBSD使用的基本文件系统。FFS_ROOT用于在UFS系统上启动系统, 允许将UFS文件系统用作根文件系统。由于UFS是FreeBSD使用的最基本的文件系统,因此应该设置FFS_ROOT,以使系统能够从磁盘上正常启动。

  NFS为Sun公司开发的网络文件系统,它是Unix之间共享文件系统一种事实标准。NFS文件系统也可以用作根文件系统,这通过NFS_ROOT选项进行定义,使得可以配置FreeBSD无盘工作站,无盘的FreeBSD系统可以用于专用X终端等特殊场合。

  "CD9660"为ISO 9660 格式的CD-Rom文件系统,使用它访问CD-Rom上的文件系统。"CD9660_ROOT"使得可以用光盘作根文件系统

  MFS为内存映射文件系统,可以将内存映射为文件系统,改善文件系统的性能,当然这只适合有大量物理内存和交换空间的系统。也可以使用mfs类型来将交换分区安装到某个目录上,保存一些临时文件。例如,系

[1] [2] [3] [4] [5]  下一页

[数据载入中...] [返回上一页] [打 印]