把数据放在acquire 和release 之间,可以防止线程安全。当sleep足够趋近于0的时候,没有IOl阻碍,lock之前的执行后,执行locked ,当存在sleep时,取决于cpu的速度,(sleep(0,0001),output:okokokok99okok0kokokokokokok9 ...
分类:
其他好文 时间:
2019-04-18 18:49:35
阅读次数:
140
struct device { struct device *parent; struct device_private *p; struct kobject kobj; const char *init_name; /* initial name of the device */ const st ...
分类:
其他好文 时间:
2019-01-29 22:06:48
阅读次数:
219
title: hotplug/mdev机制 date: 2019/1/9 19:35:14 toc: true hotplug/mdev机制 [TOC] 框架 我们以前创建设备的时候,使用 来自动创建设备,是利用了 根据我们的提供的信息来创建设备节点 kobject_uevent_env 我们使用 ...
分类:
其他好文 时间:
2019-01-09 20:20:00
阅读次数:
213
Mock 是什么mock 测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法。这个虚拟的对象就是mock对象。mock对象就是真实对象在调试期间的代替品。 简单的看一张图 我们在测试类 A 时,类 A 需要调用类 B 和类 C,而类 B 和类 C ...
分类:
其他好文 时间:
2018-12-29 23:15:28
阅读次数:
236
Linux Device Model是一个复杂的数据结构,将系统中的电源管理、设备、和用户空间的交互联结在一起。 Kobjects, Ksets, and Subsystems struct kobject 是设备模型的基础数据结构,包含以下功能: 1. 对象的引用计数 2. sysfs中的每一个文 ...
分类:
系统相关 时间:
2018-12-05 18:37:07
阅读次数:
172
自定义博客园地址栏logo 一、首先自己需要下载一个logo图片,png、jpg格式的都可以 。挑选自己喜欢的图片就可以。 二、然后制作成icon图标 在线制作icon图标网站:http://www.bitbug.net/ 三、上传至博客园文件中 四、将以下代码复制到页脚Html中 <script ...
分类:
其他好文 时间:
2018-10-04 23:01:44
阅读次数:
256
1.什么是kobject kobject是内核中的通用对象模型,用来为内核中各部分的对象管理提供统一视图 kobject一般都不会单独使用,这样是没有意义的,它总是内嵌到其他结构体中 由于kobject是系统统一管理的,因此先找到kobject对象进而跟踪到其代表的具体对象是很常见的做法。当kobj ...
分类:
其他好文 时间:
2018-09-27 01:58:25
阅读次数:
151
sysfs - 用于导出内核对象的文件系统。 1.sysfs是一个基于ram的文件系统,最初基于ramfs。 它提供了一种方法,可以将内核数据结构,它们的属性以及它们之间的链接导出到用户空间。sysfs本质上与kobject基础结构相关联。有关kobject接口的更多信息,请阅读Documentat ...
分类:
其他好文 时间:
2018-09-09 00:44:10
阅读次数:
160
一、sysfs简介1.sysfs就是利用VFS的接口去读写kobject的层次结构,建立起来的文件系统。其更新与删除是那些xxx_register()/unregister()做的事 情。从sysfs中读写就相当于从kobject层提取数据。每当新增一个kobject结构时,就会在sysfs中增加一 ...
分类:
其他好文 时间:
2018-09-02 20:12:54
阅读次数:
267
今天在群里面讨论了驱动机制的学习,收获挺大的,在此总结一下与大家分享。错误之处请批评指正。 在驱动接触过程中,是以内存字符设备驱动作为敲门砖的,学习了驱动程序的基本框架,各种设备方法,可是内存设备毕竟只是内存虚拟出来的设备,还是要学习真正的设备驱动,那么最开始就是接触的硬件访问,怎么去访问硬件资源, ...
分类:
其他好文 时间:
2018-08-13 14:56:58
阅读次数:
146