Skip to content

组件 ​

本章节中将介绍所有组件, 若无特殊说明, 则文中提到的内核版本为主线版本.

下面是多个组件共同依赖的内核选项:

ini
# Enable loadable module support
CONFIG_MODULES=y

# Device Drivers
# -> Network device support
CONFIG_NETDEVICES=y

# Device Drivers
# -> Network device support
# -> Network core driver support
CONFIG_NET_CORE=y

# Kernel hacking
# -> Tracers
CONFIG_FTRACE=y

# Kernel hacking
# -> Tracers
# -> Trace syscalls
CONFIG_FTRACE_SYSCALLS=y

# General architecture-dependent options
# -> Kprobes
CONFIG_KPROBES=y

检查工具为:

bash
#!/bin/bash

source ./kernel_config_utils.sh

misc_check() {
    is_error=false
    if ! kernel_config_check CONFIG_MODULES; then
        is_error=true
    fi
    if ! kernel_config_check CONFIG_NETDEVICES; then
        is_error=true
    fi
    if ! kernel_config_check CONFIG_NET_CORE; then
        is_error=true
    fi
    if ! kernel_config_check CONFIG_FTRACE; then
        is_error=true
    fi
    if ! kernel_config_check CONFIG_FTRACE_SYSCALLS; then
        is_error=true
    fi
    if ! kernel_config_check CONFIG_KPROBES; then
        is_error=true
    fi
    if [ "$is_error" == "true" ]; then
        return 1
    fi

    return 0
}