写一个模块测试proc文件的读写:

 1 #include linux/module.h
 2 #include linux/kernel.h
 3 #include linux/proc_fs.h
 4 #include linux/sched.h
 5 #include asm/uaccess.h
 6
 7 #define STRINGLEN 1024
 8
 9 char global_buffer[STRINGLEN];
10
11 struct proc_dir_entry *example_dir, *hello_file;
12
13 int proc_read_hello(char *page, char **start, off_t off, int count, int *eof,
14                 void *data) {
15         int len;
16         len = sprintf(page, global_buffer); //把global_buffer的内容显示给访问者
17         return len;
18 }
19
20 int proc_write_hello(struct file *file, const char *buffer, unsigned long count,
21                 void *data) {
22         int len;
23
24         if (count = STRINGLEN)
25                 len = STRINGLEN – 1;
26         else
27                 len = count;
28
29         copy_from_user(global_buffer, buffer, len);
30         global_buffer[len] = \0′;
31         return len;
32 }
33
34 static int __init proc_test_init(void) {
35         example_dir = proc_mkdir("proc_test", NULL);
36         hello_file = create_proc_entry("hello", S_IRUGO, example_dir);
37         strcpy(global_buffer, "hello");
38         hello_file->read_proc = proc_read_hello;
39         hello_file->write_proc = proc_write_hello;
40         return 0;
41 }
42
43 static void __exit proc_test_exit(void) {
44         remove_proc_entry("hello", example_dir);
45         remove_proc_entry(“proc_test”, NULL);
46 }
47
48 module_init(proc_test_init);
49 module_exit(proc_test_exit);  

写入proc文件

echo "Hello from kernel" /proc/proc_test/hello'

读取proc文件内容,将看到屏幕上显示了我们写入的字符串:Hello from kernel

cat /proc/proc_test/hello

proc文件(OLD)相关推荐

  1. linux的根文件系统中的proc文件夹详解

    什么是proc文件系统    |linux /proc目录介绍|proc中文手册 proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间.它以文件系统的方式为访问系统内核数据的操作提供接 ...

  2. proc文件的简单读写

    在开发模块功能时,需要用到一些调试或者传值给模块的方法,最简单的就是构造一个proc文件,然后配置传值或查看 . 如下提供了一个简单模板,需要时可以直接复制过去使用. /* Init a test p ...

  3. C语言循环遍历文件夹查找文件内容(搜素/proc文件夹下的内容获取进程pid)

    参考文章:通过搜素/proc文件夹下的内容获取进程pid

  4. 获取系统信息3——proc文件系统介绍和使用

    以下内容源于朱有鹏<物联网大讲堂>课程的学习整理,如有侵权,请告知删除. 一.proc文件系统介绍 1.操作系统级别的调试 简单程序,可以单步调试:(多线程不行,linux内核不行) 复杂 ...

  5. 服务器proc文件,特殊文件系统proc

    1. 对kern_mout()进行解析: (1) 调用函数get_unnamed_dev()为文件系统/proc文件系统分配一个设备号. (2) 调用函数read_super对应的函数proc_rea ...

  6. Linux 小知识翻译 - 「/proc 文件夹」

    这次聊聊 「/proc 文件夹」. /proc 文件夹用来保管系统状态相关的文件的特殊文件夹,这个文件夹中有的文件只是内存上的虚拟文件. /proc 文件夹下有些文件可以反映各个进程的运行状态.所以说 ...

  7. Linux内核开发:创建proc文件并与用户空间接口

    目录 Proc文件系统 创建一个新的Proc文件 实现读取处理程序 与用户空间交换数据 实现写处理程序 用户空间应用 在第一篇文章中,我们构建了一个具有初始化和退出功能的简单内核模块 ,并介绍了内核编 ...

  8. linux的/proc文件_Linux中“ / proc”文件系统指南

    linux的/proc文件 /proc, in short for "process", is a virtual file-system, that is created eve ...

  9. EMX,PROC文件与电感的简单仿真

    How To Write EMX PROC File 编写EMX工艺文件需要2方面的信息: GDSII layer number and type 映射到 layer name. 这个信息可以从lay ...

最新文章

  1. SEEK FREE |智能车竞赛计时器使用说明
  2. Exchange Server 2007客户端访问协议部署SSL
  3. [HTML]增加input标签的multiple属性上传的文件数
  4. ZOJ 3781 最短路(想法好题目)
  5. 使用PaddleFluid和TensorFlow训练RNN语言模型
  6. rxjs of操作符里subscribeToArray的实现原理示意图及分析
  7. 大数据杀熟!用苹果手机怪我咯?
  8. 拳王公社:从0-1只需掌握这3个重点​,网创再也不缺精准流量
  9. 伴鱼DQC数据质量平台实践
  10. qt5 传输 图片压缩_图片如何转换成pdf?免费教你几个宝藏方法,请低调使用!...
  11. SQL中CONVERT转化函数的用法(转)
  12. mysql编译方式查询_源码编译mysql及其各种查询总结
  13. 现代汉语常用汉字3500表
  14. 【洛谷P4568】飞行路线【分层图最短路】
  15. Chartboost大中华区开发者关系经理刘欣允:如何设计,以增加游戏内收入
  16. 关于企业工业控制系统的网络安全保护设计方案
  17. [转载]通过 call gate 访问目标 code segment
  18. 重启电脑后MySQL数据丢失_为什么当我重启电脑时会出现数据丢失?
  19. pyqt5练习小项目
  20. uniapp——轮播图(官方)、卡片轮播图

热门文章

  1. 2017.12.1T19_B2_2zuoye
  2. Kali Linux 下渗透测试 | 3389 批量爆破神器 | hydra | 内网渗透测试
  3. HTML5新特性-自定义属性(data-set)
  4. Spring LDAP
  5. HDU4055 - number string(DP)
  6. WPF入门教程系列十三——依赖属性(三)
  7. ssky-keygen + ssh-copy-id 无密码登陆远程LINUX主机
  8. 几个用于序列化的代码片段
  9. oracle linux6 u盘安装,Oracle Enterprise Linux/Redhat Linux 6.0 U盘安装方法
  10. Spring事务传播属性和隔离级别