-
-
caizhengsuo | 当前状态:在线
总积分:3196 2024年可用积分:0
注册时间: 2008-02-22
最后登录时间: 2015-10-16
-
linux驱动入门篇2字符设备驱动004
caizhengsuo 发表于 2008/10/14 9:17:59 625 查看 0 回复 [上一主题] [下一主题]
手机阅读
linux驱动入门篇2字符设备驱动
mknod /dev/globalvar c 254 0 |
创建设备节点,用户进程通过/dev/globalvar这个路径就可以访问到这个全局变量虚拟设备了。我们写一个用户态的程序globalvartest.c来验证上述设备:
#include <sys/types.h> #include <sys/stat.h> #include <stdio.h> #include <fcntl.h> main() { int fd, num; //打开"/dev/globalvar" fd = open("/dev/globalvar", O_RDWR, S_IRUSR | S_IWUSR); if (fd != -1 ) { //初次读globalvar read(fd, &num, sizeof(int)); printf("The globalvar is %d\n", num); //写globalvar printf("Please input the num written to globalvar\n"); scanf("%d", &num); write(fd, &num, sizeof(int)); //再次读globalvar read(fd, &num, sizeof(int)); printf("The globalvar is %d\n", num); //关闭"/dev/globalvar" close(fd); } else { printf("Device open failure\n"); } } |
编译上述文件:
gcc -o globalvartest.o globalvartest.c |
运行
./globalvartest.o |
可以发现"globalvar"设备可以正确的读写。