改变Linux的内核

时间:2011-04-01 01:11:46

标签: linux linux-kernel

大家,我正在努力学习如何使用Linux Red Hat的内核,我试图从内核改变一些功能:

/*
 * sys_execve() executes a new program.
 */
asmlinkage int sys_execve(struct pt_regs regs)
{
    int error;
    char * filename;



    filename = getname((char *) regs.ebx);
    error = PTR_ERR(filename);
    if (IS_ERR(filename))
        goto out;

    printk("Hello World!"); // I added this function

    error = do_execve(filename, (char **) regs.ecx, (char **) regs.edx, &regs);
    if (error == 0)
        current->ptrace &= ~PT_DTRACE;
    putname(filename);
out:
    return error;
}

这个系统调用执行程序,我的问题为什么当我在终端并写一些函数例如'date'时我没有收到我的hello world,提前感谢任何帮助

1 个答案:

答案 0 :(得分:3)

printk()应该记录到/proc/kmsg,然后由syslog(8)读取并记录。{/ p>