Chinaunix

标题: do_fork中打印父进程号 [打印本页]

作者: juruqiang    时间: 2012-11-14 11:50
标题: do_fork中打印父进程号

各位,我想了解下linux系统中进程创建的情况,于是我用ARM开发板做了个实验。

我在do_fork()最后面加上了两句打印,如下:

do_fork()
{
    。。。。。。
    printk(KERN_INFO"current->gtid: %u\n", currnet->gtid);
    printk(KERN_INFO"jiffies: %u\n", jiffies);

    return nr;
}

编译好内核后,并下载到开发板。
然后在用户空间,跑了一个隔2秒fork()一下的进程,但终端上看不到输出我加的打印,用dmesg也没有看到打印。


求大侠指点。多谢~~

作者: amarant    时间: 2012-11-14 19:45
本帖最后由 amarant 于 2012-11-14 19:45 编辑

建议在do_fork开始的地方打印
作者: juruqiang    时间: 2012-11-14 22:42
回复 2# amarant


    我在sys_arm.c文件里的sys_fork()中加了上述printk,也是没有任何的信息输出。
作者: amarant    时间: 2012-11-14 22:55
回复 3# juruqiang


    那你加一句
#error ""
试试吧
作者: bensenq    时间: 2012-11-14 22:56
本帖最后由 bensenq 于 2012-11-14 22:57 编辑

1. 打印级别相关,用KERN_ALERT替换检验一下
2. 确认运行的是修改过的内核
作者: janetliu9    时间: 2012-11-15 15:28
用户进程都运行完还没打印吗?
作者: yezj2004    时间: 2012-11-15 22:06
真的牛,双手赞成,谢谢了
作者: juruqiang    时间: 2012-11-18 11:21
多谢各位了,我也不知道是不是没有make clean的问题(按道理是不用的吧),我make clean一下后再编译就有了。
我之做了不clean的实验,也是有的。。。。




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2