公告

Gentoo交流群:87709706 欢迎您的加入

#1 2024-02-07 16:10:20

batsom
管理团队
注册时间: 2022-08-03
帖子: 594
个人网站

Linux/x86 6.6.13 内核配置选项 -- General setup

[ ] Compile also drivers which will not load
翻译:编译同时不加载驱动程序
说明:用于调试驱动程序,通常不需要

   [ ] Compile the kernel with warnings as errors
翻译:编译内核时将警告作为错误
说明:编译器应该如何处理警告,有助于提高内核代码的质量和稳定性,需要

   ()  Local version - append to kernel release
翻译:本地版本-附加到内核版本
说明:开发人员可以给定一个特殊版本号或命名他们自定义的内核 ,通常不需要

   [ ] Automatically append version information to the version string
翻译:自动将版本信息附加到版本字符串
说明:自动增加版本信息到版本字符串,通常不需要

   ()  Build ID Salt
翻译:创建id名字
说明:待确定作用

       Kernel compression mode (Gzip)  --->
翻译:内核压缩模式
说明:内核压缩模式,默认Gzip

   ()  Default init path
翻译:默认初始化路径
说明:待确定作用

   ((none)) Default hostname
翻译:系统主机名
说明:自定义在用户根系统未加载之前的主机Hostname,除了网络启动一般不用

   -*- System V IPC
翻译:System V 进程通信消息列队
说明:SYSTEM V的接口使用时间比较久,应用广泛,很多旧的产品功能采用

   [] POSIX Message Queues
翻译:POSIX 进程通信消息列队
说明:POSIX的接口设计较好,学习使用都比较容易

附注:(详情请网络查询)
一、posix消息队列与system v消息队列的差别:
1、对posix消息队列的读总是返回最高优先级的最早消息,对system v消息队列的读则可以返回任意指定优先级的消息。
2、当往一个空队列放置一个消息时,posix消息队列允许产生一个信号或启动一个线程,system v消息队列则不提供类似机制。

二、队列中的每个消息具有如下属性:
1、一个无符号整数优先级(posix)或一个长整数类型(system v)
2、消息的数据部分长度(可以为0)
3、数据本身(如果长度大于0)

   [] General notification queue
翻译:内核的通用通知队列
说明:通用通知机制是建立在标准管道驱动之上的,它可以有效地将来自内核的通知消息拼接到用 户空间打开的管道中

   [] Enable process_vm_readv/writev syscalls
翻译:启用process_vm_readv/writev系统调用
说明:用于在多个进程的地址空间之间,高效传输大块数据
> 使能这两个系统调用,这些调用允许具有正确权限的进程直接读取或写入另一个进程的地址空间。
> 现在它们只用于openMPI快速进程通信,也可以用于调试程序,未来也许还会有其他用途。看情况勾选

   [ ] uselib syscall (for libc5 and earlier)
翻译:uselib系统调用(用于libc5及更早版本)
说明:启用老旧的uselib()系统接口支持,仅在你需要使用基于libc5的古董级程序时才需要,推荐不选择
       
   [] Auditing support
翻译:审计支持
说明: 安全选项,与18-Security options相关。
内核有用日志记录事件的能力,比如记录系统调用和文件访问,管理员可以评审这些日志,
确定可能存在的安全裂口,比如失败的登录尝试,用户对系统文件不成功的访问。
这种功能称为Linux审计系统

       IRQ subsystem  --->
翻译: IRQ子系统
说明:当计算机的某个硬件设备需要处理器去执行某些工作时,该硬件会发出一个硬件信号,通知处理器去处理这个请求。这个信号就是IRQ。当处理器正在执行其他工作时,如果它收到周边设备传来的中断信号,它会停下来,优先处理这个信号代表的工作,完成后再继续处理之前未完成的工作

       --->>
          Expose irq internals in debugfs not load
          翻译:在未加载的调试中暴露irq内部
          说明:
   
       Timers subsystem  --->
翻译:计时器子系统
说明:负责在某个时间点触发中断,就是我们所说的分时系统

       BPF subsystem  --->
翻译:BPF 子系统
说明:BPF是一个工作在操作系统内核的数据包捕获机制,它先捕获链路层的数据包而后再过滤,最后将特定的过滤后的数据包提供给应用层

       Preemption Model (Voluntary Kernel Preemption (Desktop))  --->
翻译:抢占模型(自愿内核抢占(桌面))
说明:有三种
非强占式内核(服务器)
强占式内核(低延迟桌面)
voluntary kernel preemption(桌面)

   [] Preemption behaviour defined on boot
翻译:引导时定义的抢占行为
说明:允许在内核上定义抢占模型,待确定作用

   [ ] Core Scheduling for SMT
翻译:SMT的核心调度
说明:> 不选,SMP(Processor type and features -> Symmetric multi-processing support)相关项。
> 同步多线程(SMT,Simultaneous Multithreading)技术。
> SMT技术是通过提升CPU核心后端执行单元的利用率,来提升整体的并行性能。
> 确切不需要那么多多线程性能,关闭此项杜绝可能的性能开销,以求极致的单核性能。
> 超过4核心可以考虑关闭。

       CPU/Task time and stats accounting  --->
翻译:CPU/进程的时间及状态统计
说明:

   -*- CPU isolation
翻译:CPU隔离
说明:CPU隔离功能,确保运行关键任务是不被打断。

       RCU Subsystem  --->
翻译:RCU子系统
说明:kernel非对称锁机制,对数据没有强一致性要求,适用于读多写少环境

   <*> Kernel .config support
翻译:Kernel.config支持
说明:将.config配置信息保存在内核中,选上它及它的子项使得其它用户能从/proc中得到内核的配置
                       
   []   Enable access to .config through /proc/config.gz
翻译:Enable access to .config through /proc/config.gz
说明:允许通过 /proc/config.gz 文件访问内核的配置信息

   < > Enable kernel headers through /sys/kernel/kheaders.tar.xz
翻译:通过/sys/kernel/kheaders.tar.xz启用内核标头
说明:编译kernel headers为一个模块,供需要时调用,不选。

   (18) Kernel log buffer size (16 => 64KB, 17 => 128KB)
翻译:
说明:内核日志文件大小调整,保持默认

   (12) CPU kernel log buffer size contribution (13 => 8 KB, 17 => 128KB)
翻译:
说明:内核日志文件大小调整,保持默认

   [ ] Printk indexing debugfs interface
翻译:Printk索引调试接口
说明:内核debug调试打印接口,可不选。

       Scheduler features  --->
翻译:调度器功能
说明:基于task的内核进程调度,可不选。

   [] Memory placement aware NUMA scheduler
翻译:内存位置感知NUMA调度程序
说明:> 不选,服务选项。关闭根据NUMA系统的节点分布状况进行进程/内存均衡(就是简单的内存移动)。
> 这个选项对UMA系统无效;或嵌入式Linux不需要。

   []   Automatically enable NUMA aware memory/task placement
翻译:自动启用支持NUMA的内存/任务放置
说明:不选,上一项的附属选项。NUMA自动调整。

   -*- Control Group support  --->
翻译:控制组支持
说明:是一种进程管理机制,可以针对一组进程进行系统资源的分配和管理,可用于Cpusets,CFS(完全公平调度器),内存管理等子系统.此外,systemd与Docker/LXC等容器也依赖于它

   -*- Namespaces support  --->
翻译:命名空间支持
说明:主要用于支持基于容器的轻量级虚拟化技术(比如LXC和Linux-VServer以及Docker).

   [] Checkpoint/restore support
翻译:检查点/恢复支持
说明:在内核中添加"检查点/恢复"支持.也就是添加一些辅助的代码用于设置进程的 text, data, heap 段,并且在 /proc 文件系统中添加一些额外的条目.用于检测两个进程是否共享同一个内核资源的kcmp()系统调用依赖于它.使用systemd的建议开启此项

   [] Automatic process group scheduling
翻译:自动进程组调度
说明:每个TTY动态地创建任务分组(cgroup),这样就可以降低高负载情况下的桌面延迟.也就是传说中的桌面"鸡血补丁",桌面用户建议开启.但服务器建议关闭.

   -*- Kernel->user space relay support (formerly relayfs)
翻译:内核->用户空间中继支持(以前为relayfs)
说明:内核空间向用户空间传递大量数据的接口,保持默认状态

   -*- Initial RAM filesystem and RAM disk (initramfs/initrd) support
翻译:初始RAM文件系统和RAM磁盘(initramfs/initrd)支持
说明:初始内存文件系统(initramfs,2.6以上内核的新机制,使用cpio格式,占据的内存随数据的增减自动增减)与初始内存盘(initrd,2.4以前内核遗留的老机制,使用loop设备,占据一块固定的内存,需要额外开启CONFIG_BLK_DEV_RAM选项才生效)支持,一般通过lilo/grub的initrd指令加载

   ()    Initramfs source file(s)
翻译:Initramfs源文件
说明:initramfs是编到内核中的一种根文件系统,使用的是cpio格式,处理流程和我们之前介绍的initrd机制的cpio格式的流程几乎一样,
只不过这个是编译到内核里的,需要用到时内核会自行解压使用

   []   Support initial ramdisk/ramfs compressed using gzip
翻译:支持使用gzip压缩初始化内存/ ramfs
说明:

   []   Support initial ramdisk/ramfs compressed using bzip2
翻译:略
说明:

   []   Support initial ramdisk/ramfs compressed using LZMA
翻译:略
说明:

   []   Support initial ramdisk/ramfs compressed using XZ
翻译:略
说明:

   []   Support initial ramdisk/ramfs compressed using LZO
翻译:略
说明:

   []   Support initial ramdisk/ramfs compressed using LZ4
翻译:略
说明:

   []   Support initial ramdisk/ramfs compressed using ZSTD
翻译:略
说明:

   -*- Boot config support
翻译:Boot配置支持
说明:编辑引导文件,必须

   [ ]   Force unconditional bootconfig processing
翻译:强制进行无条件的bootconfig处理
说明:辑引导文件

   [ ]   Embed bootconfig file in the kernel
翻译:在内核中嵌入bootconfig文件
说明:在嵌入式系统中,通常需要配置内核引导参数。这些参数可以通过一个名为bootconfig的文件来设置,该文件包含了内核引导时需要的配置信息。
要在Linux内核中嵌入bootconfig文件,你需要在内核的配置过程中指定bootconfig文件的位置。这通常是通过内核的配置系统完成的

   [] Preserve cpio archive mtimes in initramfs
翻译:在initramfs中保留cpio存档mtimes
说明:initramfs 根文件系统归档

       Compiler optimization level (Optimize for performance (-O2))  --->
翻译:编译器优化级别(针对性能进行优化(-O2))
说明:内核压缩级别,-0s可能会产生错误代码

   [ ] Configure standard kernel features (expert users)  --->
翻译:配置标准内核功能(专家用户)
说明:专家级别的调整内核配置,不选。

       Kernel Performance Events And Counters  --->
翻译:内核性能事件和计数器
说明:性能相关的事件和计数器支持(既有硬件的支持也有软件的支持).大多数现代CPU都会通过性能计数寄存器对特定类型的硬件事件(指令执行,缓存未命中,分支
预测失败)进行计数,同时又丝毫不会减慢内核和应用程序的运行速度.这些寄存器还会在某些事件计数到达特定的阈值时触发中断,从而可以对代码进行性能分
析. Linux Performance Event 子系统对上述特性进行了抽象,提供了针对每个进程和每个CPU的计数器,并可以被
tools/perf/ 目录中的"perf"工具使用

   [] Profiling support
翻译:分析支持
说明:必选,扩展性能支持

       Kexec and crash features  --->
翻译:Kexec和崩溃功能
说明:

离线

页脚

Powered by FluxBB

本站由XREA提供空间支持