Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在删除.next后添加sched_类_C_Linux_Linux Kernel_Scheduler_Linker Scripts - Fatal编程技术网

在删除.next后添加sched_类

在删除.next后添加sched_类,c,linux,linux-kernel,scheduler,linker-scripts,C,Linux,Linux Kernel,Scheduler,Linker Scripts,我一直在尝试向Linux内核添加一个新的调度程序。我发现要添加sched_类,需要将其添加到vmlinux.lds.h中的sched_数据中。而不是编辑现在已删除的.next变量。 根据我在优先级列表中的顺序,它将在重启后的引导过程中使内核崩溃。任何提示都将不胜感激 目前这是可行的 #define SCHED_DATA \ STRUCT_ALIGN(); \ __begin_sched_classes = .; \

我一直在尝试向Linux内核添加一个新的调度程序。我发现要添加sched_类,需要将其添加到vmlinux.lds.h中的sched_数据中。而不是编辑现在已删除的.next变量。 根据我在优先级列表中的顺序,它将在重启后的引导过程中使内核崩溃。任何提示都将不胜感激

目前这是可行的


#define SCHED_DATA              \
    STRUCT_ALIGN();             \
    __begin_sched_classes = .;      \
    *(__idle_sched_class)           \
    *(__my_sched_class)         \
    *(__fair_sched_class)           \
    *(__rt_sched_class)         \
    *(__dl_sched_class)         \
    *(__stop_sched_class)           \
    __end_sched_classes = .; 
而这并不是

#define SCHED_DATA              \
    STRUCT_ALIGN();             \
    __begin_sched_classes = .;      \
    *(__idle_sched_class)           \
    *(__fair_sched_class)           \
    *(__my_sched_class)         \
    *(__rt_sched_class)         \
    *(__dl_sched_class)         \
    *(__stop_sched_class)           \
    __end_sched_classes = .;