随笔分类 -  linux

设备操作函数file_operations
摘要:file_operations是一个对设备进行操作的抽象结构体。linux内核为设备建立一个设备文件,这样就使得对设备文件的所有操作,就相当于对设备的操作。用户程序可以用访问普通文件的方法访问设备文件,进而访问设备。 对普通文件的访问,常常使用open(), write(), read(), clo 阅读全文
posted @ 2016-03-28 09:58 tragiccandidate 阅读(1528) 评论(0) 推荐(1)
FrameBuffer(LCD设备层编程)
摘要:大部分驱动程序都是内核自带的,主要是为了进行驱动移植。驱动模型分为驱动层和设备层。现在内核已经带有驱动层带代码,还缺少设备层代码。我们可以根据内核提供的LCD驱动程序,分析出设备层代码。 在“平台设备驱动之平台设备”中,可以知道设备层步骤: 1.设备占用的资源;2.设备的平台数据结构struct p 阅读全文
posted @ 2016-03-26 21:49 tragiccandidate 阅读(507) 评论(0) 推荐(0)
平台设备驱动之平台驱动
摘要:驱动层需要实现的结构体是struct platform_driver,它用来描述一个设备的驱动信息。 结构如下 (include\linux\platform_device.h) 其中probe和remove是必需实现的,跟在设备层提到的注册和注销函数有关。其他函数根据需要,自行实现。 struct 阅读全文
posted @ 2016-03-25 22:03 tragiccandidate 阅读(538) 评论(0) 推荐(0)
平台设备驱动之平台设备
摘要:平台设备驱动模型分为两个部分:平台设备(platform_device)和平台驱动(platform_driver) 设备层的核心数据结构struct platform_device (include\linux\platform_device.h) 其中struct device用来实现设备模型, 阅读全文
posted @ 2016-03-25 20:52 tragiccandidate 阅读(388) 评论(0) 推荐(0)
从虚拟机copy到u盘的东西,在主机上不能用
摘要:你复制完还要再等一会,主要是可能没来得及拷完, 阅读全文
posted @ 2016-03-22 15:37 tragiccandidate 阅读(205) 评论(0) 推荐(0)
用vi编辑,用yG复制全文粘贴至另一文件,却只能粘贴50行,如是不是vi的缓存太小?如何加大vi的缓存设置呢
摘要:在~/vimrc文件,加如下内容 set viminfo='1000,<800 最多允许800行,当然可以改为最多允许5000行等任意数字 阅读全文
posted @ 2016-03-22 15:16 tragiccandidate 阅读(1169) 评论(0) 推荐(0)
linux简单驱动hello world内核模块
摘要:hello.c Makefile1 注:Makefile1是基于x86平台的;其中uname -r是shell指令,可以在cmd窗口使用uname -r,便可以了解该指令的目的 Makefile1在make时,可能会出现报错 Makefile2 而Makefile2是下载了一个新的内核; KERNE 阅读全文
posted @ 2016-03-21 11:54 tragiccandidate 阅读(528) 评论(0) 推荐(0)