gpt4 book ai didi

linux - 系统调用如何在 Linux 中定位?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:32:18 24 4
gpt4 key购买 nike

我正在尝试在 Red Hat 8.0 中添加一个新的系统调用,但我对该机制的某些方面感到困惑。我一直在关注本指南:http://www.linuxjournal.com/article/3326其中详细介绍了在entry.Sunistd.h 中更新系统调用表的步骤。

但是,我似乎无法弄清楚编译器实际上是如何从这些信息中找到系统调用的实现位置的。显然有些东西涉及 #include,但我找不到任何包含的迹象,也找不到代码中的许多系统调用。我需要做什么才能找到我的系统调用?

最佳答案

C 库提供的函数恰好看起来像系统调用。实际发生的是 C 库函数被调用,然后它进行系统调用。

如果您添加一个新的系统调用,那么为了使其易于使用,您需要将它添加到 C 库并重新编译它。

或者您可以使用 C 库提供的系统调用函数和宏:syscall 和 _syscall。

尝试 man syscallman _syscall 查看详细信息。

关于linux - 系统调用如何在 Linux 中定位?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1662342/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com