我对在2.6.24内核上配置的sysctl表进行了用户空间sysctl调用。我已将sysctl代码迁移到2.6.35内核。当我从用户空间进行sysctl()调用时,我看到警告msgs说'弃用了sysctl警告'。 2.6.24也是如此。有没有人对此有任何想法。此外,sysctl处理程序do_sysctl位于2.6.24的sysctl.c中,而2.6.35位于sysctl_binary.c中
答案 0 :(得分:1)
sysctl()
系统调用一直被认为已被弃用;实际上,手册页已经说了一段时间了:
或者更确切地说......不要打电话:长期以来一直使用这个系统调用 气馁,它是如此不受欢迎,很可能会消失在一个 未来的内核版本。立即将其从您的程序中删除;使用 而是
/proc/sys
界面。
正如它所说,你应该重写代码的用户空间部分以使用/proc/sys
接口。