繁体   English   中英

Linux内核-读/写到文件

[英]Linux Kernel - Read/Write to a File

我正在研究一个LKM,该LKM需要检索并将某些信息写入文件。 我查找了执行此操作的常用方法,但是找不到适用于Linux 4.x的方法。 我还发现,可以从内存中检索系统调用并有效地调用它们。

如我目前所发现的,没有更好的方法了,如果能找到系统调用表并以这种方式调用openread / writeclose ,我会很感兴趣。

在大多数情况下,强烈建议不要这样做。

https://www.linuxjournal.com/article/8110对我来说真的是一本好书,我以为我也必须这样做。

但是,从Linux内核内部,禁止从文件中读取数据以获取配置信息。 这是由于开发人员尝试执行此操作可能会导致各种各样的问题。

确实,使用内核内部的系统调用可以做到这一点,但是通常也不建议从内核内部调用系统调用。 它们被设计为用户空间应用程序询问内核的接口,而不是让内核自行工作的接口。

您要在内核中处理哪种文件? 如果您要操作的文件类型是proc文件系统,sysfs文件系统或dev文件系统提供的,则可以在内核中修改文件的内容(因为内核将这些内容提供给用户空间本身)-不应使用文件操作调用来完成此操作。 如果它是普通的用户空间文件,则几乎永远不会希望内核能够对其进行修改。

如果您提供更多细节,我很想听听他们,但这通常是个坏主意。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM