31 строка
688 B
C
31 строка
688 B
C
#include <stdio.h>
|
|
#include <kernel-offsets.h>
|
|
|
|
void print_ptr(char *name, char *type, int offset)
|
|
{
|
|
printf("#define %s(task) ((%s *) &(((char *) (task))[%d]))\n", name, type,
|
|
offset);
|
|
}
|
|
|
|
void print(char *name, char *type, int offset)
|
|
{
|
|
printf("#define %s(task) *((%s *) &(((char *) (task))[%d]))\n", name, type,
|
|
offset);
|
|
}
|
|
|
|
int main(int argc, char **argv)
|
|
{
|
|
printf("/*\n");
|
|
printf(" * Generated by mk_task\n");
|
|
printf(" */\n");
|
|
printf("\n");
|
|
printf("#ifndef __TASK_H\n");
|
|
printf("#define __TASK_H\n");
|
|
printf("\n");
|
|
print_ptr("TASK_REGS", "union uml_pt_regs", TASK_REGS);
|
|
print("TASK_PID", "int", TASK_PID);
|
|
printf("\n");
|
|
printf("#endif\n");
|
|
return(0);
|
|
}
|