| 发表于:2007-08-03 14:21:59 楼主 |
用asm( "sidt %0 " : "=m "(idtr));方法(就是网上总说的)我已经找到系统调用表sys_call_table然后替换了sys_mkdir函数。 地址都正确我已经验证过。 当我把自己写的函数替换上去后,发现参数传进来的不对。 long sys_mkdir(const char * path, int mode); 这个path指针传进来总是不对,printk打印出是null指针。 在linux 2.6.8上没有问题。但是在2.6.20上使用就打印出空指针。有哪位高人知道怎么回事!!!?或者你截获过系统调用那么现在,用在linux 2.6.20上试试截获sys_mkdir就会出现这问题!! |
|
|
|
|