【发布时间】:2010-01-15 09:25:13
【问题描述】:
我正在移植为 Linux 2.4 编写的 linux 内核模块以与 Linux 2.6 一起使用。
代码中使用了一些通过syscallN() 宏声明并包装在set_fs() 调用中的系统调用。
如何在没有这些宏的 Linux 2.6 中仍然使用 sycall?
我知道从内核空间使用系统调用是一种不好的品味,并且syscallN() 宏在大多数平台上都被破坏了。任何合理的方法来替换内核空间中的getuid、geteuid、mknod、chown、unlink、sched_yield 系统调用都值得赞赏。
【问题讨论】: