2.6.30.5 Linux内核中的struct task_struct定义在哪里?


9

在2.6.15版内核中,我知道可以重写task_struct文件(include / linux / sched.h),例如:

struct task_struct {  
    unsigned did_exec:1;  
    pid_t pid;  
    pid_t tgid;  
    ...
    char hide;
}  

但是,不幸的是,当我升级到2.6.30.5版本时,我浏览了同一个文件,只是找到的声明task_struct,例如:

struct task_struct;

而且我不知道为指定自己的文件应该参考哪个文件task_struct?有人能帮我吗?

Answers:



3

我正在使用Debian压缩。我在与当前内核相对应的标头中看到一个定义/usr/src/linux-headers-2.6.32-5-common-vserver/include/linux/sched.h。定义始于

struct task_struct {
        volatile long state;    /* -1 unrunnable, 0 runnable, >0 stopped */
        void *stack;
        atomic_t usage;
        unsigned int flags;     /* per process flags, defined below */
        unsigned int ptrace;

        int lock_depth;         /* BKL lock depth */

HTH。


因此,我使用的是不稳定版本吗?但是您不知道将
通货紧缩转向何处

@kaiwiiho:对不起,我不确定您的意思。
Faheem Mitha 2012年

我的意思是2.6.15版本是否不稳定。而且,我认为定义必须存在于要扩展sched.h的.c文件中。但是不幸的是,我还没有找到找到c文件的方法。你能给我一些提示吗?
kaiwii ho 2012年

@kaiwiiho:不确定您的意思是稳定的。2.6.15是内核版本。据我所知,该结构的定义在头文件中。你在找什么?
Faheem Mitha 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.