c – 从哪里开始使用Linux内核模块?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c – 从哪里开始使用Linux内核模块?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1478字,纯文字阅读大概需要3分钟。
内容图文
![c – 从哪里开始使用Linux内核模块?](/upload/InfoBanner/zyjiaocheng/971/d6d5e0c542fb4b188b2a14949b41a9bd.jpg)
有点背景,我是一名CMPE学生,现在是一个操作系统课程.我有一些C编码的基本知识,但对C更熟悉(约需3个学期).除此之外,从未接受任何其他正式的编码培训.另外,我对linux环境有了基本的了解.
我正在开发一个项目,要求我和我的团队编写一个可以执行以下操作的Linux内核模块:
>通过将收到的数据打印到内核日志来回显从用户级进程传递的数据
>能够将数据从一个用户进程传递到另一个用户进程.
>必须可以将内核模块用作进程间通信抽象.模块应该提供发送方向其发布数据但没有接收方正在等待的情况.模块必须覆盖接收方要求数据但没有可用数据的情况.
>模块必须涵盖接收器要求数据但没有可用数据的情况.
>必须是模块中缓冲区容量的限制.
现在我不知道那些有编程背景的人看起来有多困难,但对于我这个职位的人来说,这似乎是一项不可思议的复杂任务.
这是我到目前为止所做的:
>成功编写,编译,插入和删除基本的“hello world”linux内核模块
>仔细阅读The Linux Kernel Module Programming Guide的前4或5章
>阅读一些stackoverflow帖子,其中没有一个似乎能够指引我到我需要去的地方.
所以最后这是我的问题:有人可以指点我需要的方向吗?我甚至不知道在哪里找到用于读取用户级过程数据的命令,我需要某个地方来启动我. TLPD非常适合洞察这个主题但是没有帮助我达到一个可行的项目可以上交的地步.在过去,我会学习阅读源代码和逆向工程,我能在任何地方学习找到类似的东西?任何和所有的帮助表示赞赏.
-将
解决方法:
我发现Linux内核模块编程指南是一个非常好的资源.从它的声音来看,像角色设备这样的东西可能最适合你的目的,但我不确定你是否有其他限制.
我可能会考虑的另一个方向(尽管这可能是一条糟糕的路径)是在Linux内核中查看具有类似功能的内核模块的示例.我没有一个很好的例子,但也许通过/ drivers / char /查看.
内容总结
以上是互联网集市为您收集整理的c – 从哪里开始使用Linux内核模块?全部内容,希望文章能够帮你解决c – 从哪里开始使用Linux内核模块?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。