根据此处的文档:https://developer.ibm.com/tutorials/control-ibm-aix-kernel-extensions/ 我们已经实现了定义和使用新系统调用的内核扩展和加载程序。
在加载器中的用法如下:
static size_t dtGetNumInterceptions() {
void *libHandle = NULL;
size_t (*ke_syscall)(void)=NULL;
libHandle = dlopen( loadedExtension, RTLD_NOW|RTLD_MEMBER|RTLD_GLOBAL );
if( libHandle ) {
ke_syscall = dlsym(libHandle, "dtGetNumInterceptions");
if( ke_syscall ) {
return ke_syscall();
}
}
return (size_t)-1;
}
与使用导出和导入文件实现的另一个测试应用程序相比,此功能返回了不好的结果。
错误在哪里?
预先感谢
马丁