gpt4 book ai didi

c - Linux 内核模式中的用户空间库 - 用于测试

转载 作者:太空狗 更新时间:2023-10-29 12:41:27 24 4
gpt4 key购买 nike

我知道你不应该这样做,这是不好的做法等等。但是是否可以在内核模块中包含一个 c 用户空间库?

我正在为我自己的目的编写模块来测试一些东西,它永远不会被其他人发布或使用。我只想快速破解,而不用担心好的做法。

(具体来说,我想使用 <stdint.h> 中包含的 gcc 提供的 __int128 数据类型)

谢谢

最佳答案

C 库首先是函数的集合,“用户空间”和“内核空间”之间没有真正的区别。然而,在内核空间中使用动态共享库是不可能的,因为没有合适的动态加载器。的确,加载kernel-module本身就是某种动态加载,但是模块本身不能依次加载另一个共享库。

但是,应该可以将代码从静态库 (.a) 链接到您的内核模块。然后这段代码成为内核模块本身不可分割的一部分,并且应该在内核空间和用户空间中工作,只要它不依赖于内核空间中不存在的外部符号(例如,尤其是 libc 的符号)。

关于c - Linux 内核模式中的用户空间库 - 用于测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42121881/

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