随笔分类 - Linux驱动开发
摘要:1. 设备号主设备号:用来标识与设备文件相关的驱动程序,——反应设备类型次设备号:为内核所用,被驱动程序用来辨别操作那个设备文件——区分同类型的具体某个设备1.1 设备号的内部表达在内核中,保存设备号(包括主设备号和此设备好)使用类型dev_t ()这是一个unsigned int是一个32位的无符...
阅读全文
摘要:本文介绍Linux字符设备的静态注册方法,其中涉及到的模块加载,不了解的可以先参考构建和运行模块1. 还是线上源代码://memdev.h#ifndef _MEMDEV_H_#define _MEMDEV_H_#ifndef MEMDEV_MAJOR#define MEMDEV_MAJOR 200#...
阅读全文
摘要:Hello world模块本文介绍如何向内核中添加一个hello模块。该模块的功能是在模块加载时,向系统日志输出“hello world\n” 在模块卸载时输出“Good bye,cruel world!".一个模块源代码一般有含有一个init函数(加载时调用)和一个exit函数(卸载时调用)。这两...
阅读全文
摘要:在写Linux驱动是,sudo insmod ***.ko时出现错误:insmod: error inserting 'memdev.ko': -1 File exists原因可能是你以前同名的驱动没有卸载干净。解决方法:使用lsmod | grep *** 查看是否已经存在该模块,如果存在***,...
阅读全文

浙公网安备 33010602011771号