ZXJ

ZXJ

0个粉丝

9

问答

0

专栏

0

资料

ZXJ  发布于  2012-12-04 11:23:21
采纳率 0%
9个问答
2965

Linux2.6.x 内核配置详解

配置内核可以根据需要使用下面命令: #make menuconfig

1 Code maturity level options ---> 应该选择
  • Prompt for development and/or incomplete code/drivers

    默认情况下是选择的,这将会在设置界面中显示还在开发或者还没有完成的代码与驱动.你应该选择它,因为有许多设备可
    能必需选择这个选项才能进行配置,实际上它是安全的。

  • Select only drivers expected to compile cleanly应该选择
    选择这个选项你将不会看到一些已知的存在问题的驱动程序选项,默认的情况下也是选择的。如果你有设备没有找到驱动选
    项,你可以将这一项去掉,或许就可以找到相关驱动了,不过它可能是有BUG的。

  • Select only drivers that don't need compile-time external firmware应
    该选择
    如果你不需要在内核对一些外部设备的固件作map支持就选择它,这也是默认选项。
    2 General setup --->

  • Support for paging of anonymous memory (swap)应该选择
    这个选项将使你的内核支持虚拟内存,也就是让你的计算机好象拥有比实际内存更多多的内存空间用来执行很大的程序。
    默认是选择的。

  • System V IPC应该选择
    为进程提供通信机制,这将使系统中各进程间有交换信息与保持同步的能力。有些程序只有在选Y的情况下才能运行,所
    以不用考虑,这里一定要选。

  • POSIX Message Queues应该选择

  • BSD Process Accounting应该选择
    这里选择Y将会让内核为用户层的进程建立一个帐目(进程通过一个特殊的系统调用来通知内核),当程序退出时内核会将
    进程的相关信息记录到帐目文件中,主要包括进程的创建时间、创建者,内存占用等信息。如果你需要就Y吧:)

  • Sysctl support应该选择
    这将提供一个接口让你可以动态的更改一些核心参数与变量,而不需要重新启动系统。打开这个选项将会增加内核的体积至

    8KB。如果你的内核仅用制作安装与恢复系统系统盘那么可以不选,以减少对内存的占用。

  • Auditing support审核的,一般不用选择了

  • Enable system-call auditing support不用选择了

    (17) Kernel log buffer size (16 => 64KB, 17 => 128KB)不用选择了
  • Support for hot-pluggable devices支持热插拔的,最好选择
  • Kernel Userspace Events用户空间时间,可以不用选择
  • Kernel .config support不用选择
    这会把内核的配置信息与相关的文档说明编译进内核中,以后可以使用一些工具来提取它用来重新构建内核,一般不用选
    它。

  • Enable access to .config through /proc/config.gz不用选择
    这个和上面的那个一样把说明文档放在/proc中,所以可以不用选它

  • Configure standard kernel features (for small systems) ---> 为小系统设计的,不用选择了吧


    ---Configure standard kernel features (for small systems)不用选择

  • Load all symbols for debugging/kksymoops (NEW) 不用选择

  • Enable futex support (NEW)不用选择
    Futex(fast user space mutex)不用选择

  • Enable eventpoll support (NEW)不用选择

  • No-op I/O scheduler (NEW)不用选择

  • Anticipatory I/O scheduler (NEW)不用选择

  • Deadline I/O scheduler (NEW)不用选择

  • CFQ I/O scheduler (NEW)不用选择

  • Optimize for size内核尺寸最优化,一般不用选择吧(如果是为小系统设计的,就不用选择了)
    3 Loadable module support --->

  • Enable loadable module support应该选择
    这个选项可以让你的内核支持模块,模块是什么呢?模块是一小段代码,编译后可在系统内核运行时动态的加入内核,从
    而为内核增加一些特性或是对某种硬件进行支持。一般一些不常用到的驱动或特性可以编译为模块以减少内核的体积。在运
    行时可以使用modprobe命令来加载它到内核中去(在不需要时还可以移除它)。
      一些特性是否编译为模块的原则是,不常使用的,特别是在系统启动时不需要的驱动可以将其编译为模块,如果是一
    些在系统启动时就要用到的驱动比如说文件系统,系统总线的支持就不要编为模块了,否在无法启动系统。(当然还有一些
    变通的方法,我以后会提到)

  • Module unloading应该选择
    这个选项可以让你卸载不再使用的模块,如果不选的话你将不能卸载任何模块(有些模块一旦加载就不能卸载,不管是否选
    择了这个选项)。不选择这个选项会让你的内核体积减小一点


  • Forced module unloading这个有点危险,可能导致内核不能启动,不要选择了
  • Module versioning support (EXPERIMENTAL)不用选择

    这个选项将让你可以使用其它版本内核中编译的模块,不过并不可靠,所以一般我们不选择它
  • Source checksum for all modules可以选择
  • Automatic kernel module loading应该选择

    一般情况下,如果我们的内核在某些任务中要使用一些被编译为模块的驱动或特性时,我们要先使用modprobe命令来加
    载它,内核才能使用。不过,如果你选择了这个选项,在内核需要一些模块时它可以自动调用modprobe命令来加载需要
    的模块,这是个很棒的特性,当然要选Y喽:)

    4 Processor type and features --->

    Subarchitecture Type (PC-compatible) --->
    这是一个比较新的特性,主要的目的是使Linux可以支持多种PC标准,一般我们使用的PC机是遵循所谓
    IBM兼容结构
    (pc/at)。这个选项可以让你选择一些其它架构。我们一般选择PC-compatible就可以了。

    (X) PC-compatible
    ( ) AMD Elan
    ( ) Voyager (NCR)
    ( ) NUMAQ (IBM/Sequent)
    ( ) Summit/EXA (IBM x440)
    ( ) Support for other sub-arch SMP systems with more than 8 CPUs
    ( ) SGI 320/540 (Visual Workstation)
    ( ) Generic architecture (Summit, bigsmp, default)
    ( ) Support for Unisys ES7000 IA32 series
    Processor family (Pentium-Pro)
    --->这个就不用说了吧,你是什么cpu就选什么了
    ( ) 386
    ( ) 486
    ( ) 586/K5/5x86/6x86/6x86MX
    ( ) Pentium-Classic
    ( ) Pentium-MMX


    (X) Pentium-Pro
    ( ) Pentium-II/Celeron(pre-Coppermine)
    ( ) Pentium-III/Celeron(Coppermine)/Pentium-III Xeon
    ( ) Pentium M
    ( ) Pentium-4/Celeron(P4-based)/Pentium-4 M/Xeon
    ( ) K6/K6-II/K6-III
    ( ) Athlon/Duron/K7
    ( ) Opteron/Athlon64/Hammer/K8
    ( ) Crusoe
    ( ) Winchip-C6
    ( ) Winchip-2
    ( ) Winchip-2A/Winchip-3
    ( ) CyrixIII/VIA-C3
    ( ) VIA C3-2 (Nehemiah)
  • Generic x86 support不用选择
    这个选项提供了对X86系列
    CPU最大的兼容性,用来支持一些很少见的x86体系的CPU,它可能会降低一些系统性能。
    所以如果你的CPU能够在上面的列表中找到就不要选这个吧。

  • 4 GB kernel-space and 4 GB user-space virtual memory support应该选择

  • HPET Timer Support应该选择
    这也是一个新的特性,HPET是intel制定的新的用以代替传统的8254(PIT)中断定时器与
    RTC的定时器,全称叫作高
    精度事件定时器。如果你有一台较新的机器就选它吧,一般它是一个安全的选项,即使你的硬件不支持HPET也不会造成
    问题,因为它会自动用8254替换。

  • Symmetric multi-processing support不用选择
    这个也不用多讲了吧,如果你使用多处理器系统就选吧,如果你和我一样使用一个单
    CPU系统还是把它请出去吧。

    (8) Maximum number of CPUs (2-255) (NEW)不用选择
    这里用来配置让
    Linux最多支持几路
    CPU,根据你的需要选择。
  • Preemptible Kernel应该选择
    这可是个新特性,几乎所有介绍
    2.6的文章都会提到,这就是可抢先式内核。也就是说被一些优先级很高的程序
    可以先与一些低优先级的程序执行,即使这些程序是在核心态下执行(这实际上仍然不是真正的抢先式内核)。从而减少内核
    潜伏期,提高系统的响应。当然在一些特殊的点的内核是不可抢先的,比如内核中的调度程序自身在执行时就是不可被抢先
    的。这个特性可以提高桌面系统、实时系统的性能,所以还是选上吧。

  • Machine Check Exception应该选择
    如果你的系统出现一些问题比如CPU过热,内核将会在屏幕上打印相关信息来提醒你。这个功能是需要硬件支持的。你可
    以查看/proc/cpuinfo看看是否有mce标志,有的话就选吧。如果你十分十分的不幸,选了它之后出现问题,可以在启动
    时加nomce参数来关闭它。

    Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium应该选择
    打开这个选项将会检查你机器上可能存在的问题,如果有一个非致命错误出现将会自动的修复并且记录,这可以帮助
    你查出程序出现问题的原因,是一个不错的选项,当然它只能用在AMD Athlon/Duron / Intel Pentium 4这类
    CPU


    上。如果你正好在用它们中的一个你就选吧。

  • check for P4 thermal throttling interrupt.应该选择
    如果打开这个选项,在P4的CPU温度过高(也就是P4的温控装置起作用)时会在屏幕上显示出相关的信息,根据你的情
    况选择吧。

    Toshiba Laptop support
    这个选项是针对Toshiba笔记本的,可以用来访问Toshiba的系统管理模式,也就是可以直接设置BIOS。不过要注意它
    只在Toshiba自己的 BIOS中起作用。假如你有一台
    Toshiba笔记本,可惜它的BIOS是Phoenix的,那这个选项仍然
    无用
    Dell laptop support
    这个同上面的选项基本相同,自己看着办吧


    /dev/cpu/microcode -Intel IA32 CPU microcode support
    这个选项将让你可以更新Intel IA32系列处理器的微代码,当然你还必须在文件系统选项中选择devfs才能正常的使用它。
    如果你把它译为模块你还需要在modprobe.conf中加上这一行
    alias char-major-10-184 microcode
      内核本身并不带有微代码的二进制文件,你可以到这个网址去得到新的信息
    /dev/cpu/*/msr -Model-specific register support
    0这个选项桌面用户一般用不到,它主要用在Intel的嵌入式
    CPU中的,这个寄存器的作用也依赖与不同的CPU类型而
    有所不同,一般可以用来改变一些CPU原有物理结构的用途,但不同的CPU用途差别也很大。
    /dev/cpu/*/cpuid -CPU information support
    这会在/dev/cpu中建立一系列的设备文件,用以让过程去访问指定的CPU。一般不用选。
    Firmware Drivers --->

    BIOS Enhanced Disk Drive calls determine boot disk (EXPERIMENTAL)
    这将可以打开实模式下BIOS中的增强磁盘设备服务,以决定从哪个磁盘上启动。这一般是安全的,不过大多数
    BIOS提
    供商都没有实现这个特性。
    EFI Variable Support via sysfs这个不用选择
    High Memory Support (4GB)
    --->
    ( ) off


    (X) 4GB
    ( ) 64GB
    如果你有大容量的内存(超过4G)你要选它,以使内核可以使用这部分内存。偶是没这命啦这部分永远为OFF,如果你有你
    就ON吧。

  • Allocate 3rd-level pagetables from highmem为大内存设计的,可以不用选择
  • Math emulation


    在你的CPU上如果没有数学协处理器的话,打开这个选项可以让内核模拟一个,以提升浮点计算能力,不过慢的可以。如
    果你使用的不是古董
    CPU的话(486SX以前的)这一项你永远都不需要。

  • MTRR (Memory Type Range Register) support
    在Intel p6家族的处理器中(Ppro、 PII和更新的)有一个内存类型范围寄存器,可用来控制处理器访问的内存范围。打开
    它一般可以提升显卡的显示性能,所以我们当然要在这说Y

  • Boot from EFI support (EXPERIMENTAL)
    EFI规范基本上是一个让
    PC可以在开机前(preboot)进行扫毒及诊断的执行环境。英特尔已经利用EFI建立一个可以取
    代BIOS的开机前软件框架。这个框架名为“EFI平台创新开发框架”,其工程代码为Tiano,这个框架让电脑厂商可以
    撰写开机前软件的模组,这种模组很像
    Windows的驱动程序。

  • Enable kernel irq balancing (NEW)红外的,不用选择
  • Use register arguments (EXPERIMENTAL)这个可以不用选择了
    5 Power management options (ACPI, APM) --->
  • Power Management support
    如果你想让你的Linux支持高级电源管理(也就是平常我们说的软关机、系统休眠等)需要选择它

  • Software Suspend (EXPERIMENTAL)
    选择这个选项你可以挂起你的计算机(有点象XP中的休眠),打开这项功能后,你可以使用swsusp或者shutdown -z来
    挂起你的计算机。这样系统会将你当前正在进行的工作(也就是当前内存中的内容)作成一个镜象保存到你的交换分区中,在
    你下一次启动时使用启动参数
    “resume=/dev/你的交换分区”,内核就会将上一次的工作内核从镜象文件中恢复到内
    存,这可以大大提高系统的启动速度。当你不想恢复上次的工作时向内核传递参数“noresume"。不过系统启动后你的交换
    分区将不可以使用,你可以使用mkswap命令来重新格式化你的交换分区。这个功能不需要高级电源管理的支持。很不错
    的功能,我一直有用,大家也来试试吧:)

  • Suspend-to-Disk Support

    这个选项与上面的功能基本相同,不过更灵活一些,可以通过下面的子选项来指定一个专用的交换分区来保存内存镜象。

    () Default resume partition (NEW)
    与上面的选项配合,来指定保存镜象的分区如果上面那个有开启就要选择用來做
    suspend to disk用的partition

    ACPI (Advanced Configuration and Power Interface) Support --->不用选择
    从这里进入ACPI电源管理的配置界面,要注意ACPI与
    APM不能同时使用,如果你同时配置了这两者,那么在系统启
    动时如果发现一个可工作的ACPI设备那么APM将被关闭,ACPI会被加载:

  • ACPI Support
    这个选项应该不用我多说了,要想让你的系统使用ACPI来管理你的电源就要选上它,另外要想让它起作用,你还要在系
    统中安装
    acpid守护程序。

  • Sleep States (EXPERIMENTAL)

    选择这个选项可以使你的系统具有挂起的功能,也就是说你可以暂时中断你的工作,让你的系统处与一种低电能消耗的状


    态(sleep state),你此时的系统状态会保存在内存或者磁盘上(取决于挂起的深度),当你需要时再恢复到正常的工作状态。
    但由于各种系统之间的差别,目前这项功能并不完善。只有很少的设备可以完美的支持这个特性,所以不建议一般用户使用

    AC Adapter
    这是用来支持移动系统中的交流适配器的,以指示当前系统是不是在使用交流电,对于台式机不需要这个选项。

    Battery
    这个选项用于通过/proc/acpi/battery来向用户提供移动系统中的电池状态信息。同上面那个选项一样对台式机没有作用
    Button
    这个选项用于注册基于电源按钮的事件,比如power, sleep等,当你按下按钮时事件将发生,一个守护程序将读取/
    proc/acpi/event,并执行用户在这些事件上定义的动作比如让系统关机。
    <*> Fan
    这个选项提供对系统风扇的控制支持,可以通过用户层的程序来对系统风扇进行控制(比如打开,关闭,读取当前风扇的运
    行状态等,不过只有极少数的硬件支持它)。

    <*> Processor
    打开这个选项将让你的系统具有处理IDIE状态的能力,也就是说可以让你的处理器在空闲时节省电能。个人认为这个选项
    是一定要选的。

    <*> Thermal Zone
    当你的系统温度过高时,ACPI可以利用这个选项来控制你的系统,及时调整系统的工作状态以保护你的CPU,非常棒的
    一个特性一定要选呀,要不然也就不用使用ACPI了。(当然这需要硬件的支持)

    ASUS/Medion Laptop Extras
    这主要是为ASUS生产的笔记本电脑准备的,以提供对这些系统上那些额外的按钮们的支持,用户可以通过它们来打开或
    者关闭
    LCD的背光,调整亮度、定制
    LED的闪烁指示等功能。用户可以通过/proc/acpi/asus来改变这些设置。

    Toshiba Laptop Extras
    这个选项是对Toshiba笔记本提供特别支持的,它的作用同上面的选项基本相同,如果你有一台这样的本本的话就选它吧
  • Debug Statements
    如果选择它当
    ACPI出现错误时会打印出详细的信息,这将会增加内核的体积大约
    50k,如果没有必要还是不要选它吧。
  • Power Management Timer Support
    APM (Advanced Power Management) BIOS Support ---> 可以选择
    高级电源管理BIOS支持。这通常是用在笔记本电脑上的东西,如果您有APM的BIOS,支持省电的设备的(有电池的那
    种),那么您可以选上这项,一般人这一项是选n,以避免一些可能会发生的问题。后有8个选项。

    <*> APM (Advanced Power Management) BIOS support

  • Ignore USER SUSPEND忽略用户延迟可以选择
  • Enable PM at boot time在开机的时候允许
    PM这个不用选择
  • Make CPU Idle calls when idle当
    CPU空闲时使系统调用空闲的CPU可以选择
  • Enable console blanking using APM 用节电支持来允许控制台空白可以选择
  • RTC stores time in GMT 如果您的硬体时钟是使用世界标准时间,可以选择.如果是本地时则不选
  • Allow interrupts during APM BIOS calls当
    APM BIOS调用的时候允许中断可以选

  • Use real mode APM BIOS call to power off可以选择

    如果您的系统不能自己切断电源,就选这个吧。不过,对某些 BIOS而言,选了这个反而不能关机!这样的话,您自己试
    试看棉~~我这里没选啦,因为我用的是华硕的旧板
    P2L97。另外,我还发现如果您是单
    CPU的机器,前面却将 SMP
    选择起来的话,那也不能关机哦~~

    CPU Frequency scaling --->不用选择
    尽管电压缩放是一种潜在的、非常诱人的、降低功耗的方法,但在现实世界的应用中我们对其加以利用时应当小心。降低电压
    (进而降低
    CPU频率)将改变给定任务的执行时间,从而有可能导最后期限。即便新频率与最后期限兼容,但如果开关频
    率及电压的等待时间太长,还是会出现问题。
  • CPU Frequency scaling调节
    CPU的频率的,用来节电的,有必要就选择吧,我还是不要选择了

    /proc/cpufreq interface (deprecated)
    Default CPUFreq governor (userspace)
    --->
    ( ) performance

    (X) userspace
    <*> 'performance' governor 性能管理模式
    'powersave' governor节电管理模式
    ---'userspace' governor for userspace frequency scaling
  • /proc/sys/cpu/ interface (2.4. / OLD)这个就不用选择了
    <*> CPU frequency table helpers
    ---CPUFreq processor drivers
    ACPI Processor P-States driver ACPI高级配置与电源接口没见过的东西,不用选了
    [ ] /proc/acpi/processor/../performance interface (deprecated)
    AMD Mobile K6-2/K6-3 PowerNow!用于AMD移动处理器节电技术,如果你有就选上它
    <*> AMD Mobile Athlon/Duron PowerNow!用于AMD移动处理器节电技术,如果你有就选上它
    AMD Opteron/Athlon64 PowerNow!同上
    Cyrix MediaGX/NatSemi Geode Suspend Modulation 现在好像这样的CPU很少阿,如果你有,就选择

    <*> Intel Enhanced SpeedStep
    提升笔记本电脑性能的SpeedStep技术, SpeedStep技术是一项创新性的技术,它可以让处理器在2种工作模式之间随


    意地切换,即通电状态时的最高性能模式(Maximum Performance Mode)和电池状态时的电池优化模式
    Battery

    Optimized Mode
  • Use ACPI tables to decode valid frequency/voltage pairs (EXPERIME )
    <*> Intel Speedstep on ICH-M chipsets (ioport interface)

    Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface)
    Intel Pentium 4 clock modulation时钟频率调整,不用选择了
    [ ] Relaxed speedstep capability checks
    <*> Transmeta LongRun
    <*> VIA Cyrix III Longhaul崴盛的东西,不用选择了
    6 Bus options (PCI, PCMCIA, EISA, MCA, ISA) --->
  • PCI support PCI支持。如果使用了PCI的卡,当然必选
    PCI access mode (Any) --->
    PCI的存取方式,分三种,有透过BIOS或是直接存取跟任意,照预设值
    Any就好了

    ( ) BIOS
    ( ) MMConfig
    ( ) Direct

    (X) Any
  • Vector-based interrupt indexing (MSI)
    好像是一种新的中断方法,取代原本使用IRQ来做索引的中断方法如果系统上装有MSI(Message Signaled
    Interrupt)的patch的话系统似乎就会直接向內存送
    Memory Write的指令,取代了需要等
    IRQ讯号的方式(不知道是干嘛的,先关掉)
  • 我来回答
    回答0个
    时间排序
    认可量排序
    易百纳技术社区暂无数据
    或将文件直接拖到这里
    悬赏:
    E币
    网盘
    * 网盘链接:
    * 提取码:
    悬赏:
    E币

    Markdown 语法

    • 加粗**内容**
    • 斜体*内容*
    • 删除线~~内容~~
    • 引用> 引用内容
    • 代码`代码`
    • 代码块```编程语言↵代码```
    • 链接[链接标题](url)
    • 无序列表- 内容
    • 有序列表1. 内容
    • 缩进内容
    • 图片![alt](url)
    + 添加网盘链接/附件

    Markdown 语法

    • 加粗**内容**
    • 斜体*内容*
    • 删除线~~内容~~
    • 引用> 引用内容
    • 代码`代码`
    • 代码块```编程语言↵代码```
    • 链接[链接标题](url)
    • 无序列表- 内容
    • 有序列表1. 内容
    • 缩进内容
    • 图片![alt](url)
    举报反馈

    举报类型

    • 内容涉黄/赌/毒
    • 内容侵权/抄袭
    • 政治相关
    • 涉嫌广告
    • 侮辱谩骂
    • 其他

    详细说明

    易百纳技术社区