- 博客(288)
- 资源 (3)
- 收藏
- 关注
原创 work queue, kthread和timer对比
kernel中有三种方式可以启动一个异步作业:work queue, kthread和timer。这几种方式有各自的使用场景。本文就这几种方式的用法和使用场景,进行了简单的总结。workqueue, kthread, timer使用方法与使用场景对比:1. queue_work2. kthread_create()3. add_timer1. work queue 参考链接: https://www.cnblogs.com/vedic/p/11069249.htm...
2020-09-07 19:52:47 2369
原创 Linux中断中不可睡眠的原因
Linux中断中不可睡眠的原因:1、在硬中断处理的过程中,部分时候是屏蔽中断的,如果此时睡眠,cpu被调度出去,导致系统无法响应所有中断。2、系统中是以进程为调度单位,中断不能作为调度单位,如果中断睡眠,被调度出去,将无法调度回来。 (这一条,应该是设计上的制限,设计时,就没考虑让中断睡眠)3、中断处理的,一般都是紧急的必须很快处理完成的事务。如果中断处理过程中睡眠了,被调度出去,会导致当前中断不能及时处理完成,会影响到系统的正常运行。 例如,如果rtc中断中被调度出去,导致系统时钟不...
2020-09-01 11:59:41 1845 2
原创 I2C总线相关学习
0、一个I2C总线上,可以连接多个master和slave,但同时只能有一个master工作,通过仲裁进行控制。1、物理上包含两根线,SDA, SCL。2、常用clock为400K。3、空闲状态下,SDA和SCL都由上拉电阻上拉,为高阻态。4、开始信号为SCL为高时,将SDA拉低;结束信号为在SCL为高时,将SDA拉高。5、常用的slave address为7位。6、协议中,有一位表示读写。7、写数据的时候,主机发送slave address,并发送数据。8、读数据的时候,主
2020-08-31 17:03:53 440
原创 ubuntu 12.04 给用户添加 sudo 权限
创建用户的时候, 将用户组指定为 root , 用户其实是没有 sudo 权限的。可以手动修改文件 /etc/sudoers ,在其中添加user ALL=(ALL)ALL但这样修改风险比较大, 文件如果改坏, 导致所有用户的 sudo 权限都没了。 比较好的方法是通过命令:sudo visudo在命令模式下添加行:user ALL=(ALL)ALL然后保存并退
2015-05-08 18:32:33 6514
转载 从"error:file not found \n grub rescue>"说起
问题一: 加电后出现:[plain] view plaincopyprint?error : file not found grub rescue> error : file not foundgrub rescue> 分析:出现这种情况是由于 grub 引导文件的破坏导致的。准确的说是 grub2 的配置文件损坏,由于分区调整或分区UUI
2015-05-08 18:22:03 3358
原创 win7 安装 ubuntu 12.04 不识别分区
电脑上原来有个win7, 由于要在 ubuntu 环境下开发, 所以要装个 ubuntu 。在 win7 下, 通过压缩卷, 腾出来了 150G 的空间。安装 ubuntu 的时候, 提示说我电脑上没有操作系统。选择分区的地方, 看到的只有整个硬盘设备, 看不到硬盘上的分区。 网上找了些资料, 通过命令:sudo parted /dev/sda进去后, 输入 print
2015-05-07 14:54:56 6164 1
原创 在 ubuntu 下编译 android 找不到头文件问题解决
在 ubuntu 下编译 android 找不到头文件问题解决在 ubuntu 下编译 android 的时候, 发现编译错误, 有些头文件找不到, 如:致命错误: alsa/asoundlib.h: 没有那个文件或目录网上搜索了一下, 原因是某些库没安装导致。可以使用 apt-file 查看该头文件在什么库中, 找到相应的库, 安装即可。安装 apt-file :sudo
2015-02-06 15:17:46 4919
转载 #pragma comment使用
转自:http://www.cnitblog.com/ictfly/archive/2011/06/27/74454.html 编程经常碰到,理解的总不是很透彻,在这里查阅资料总结一下! 在编写程序的时候,我们常用到#pragma指令来设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma once :这是一个比较常用的指令,只要在头文件的最开始加入这条指令就能
2015-01-28 19:34:31 9671
原创 ubuntu 12.04 下配置nvc以共享桌面到windows
最近在做个项目, 需要用到 android emulator , 平时用的PC是win7的, 还有一台电脑装的是ubuntu 12.04, 但是没显示器, 发现通过远程连接到ubuntu机器, emulator跑不起来, 报错, 找专家看了看, 应该是OpenGL不支持。再摆台显示器, 太占地方了, 想到了桌面共享,即使用nvc。nvc的配置也很简单。首先, 进入 gnome clas
2015-01-28 10:00:55 6986
转载 内核抢占
转自:http://hi.baidu.com/zengzhaonong/item/644b0b80f586cfeae496e02e 内核抢占--------------------------------------------------- 与其他大部分Unix变体和其他大部分的操作系统不同, Linux完整地支持内核抢占。 在不支持内核抢占的内核中,内核代码
2015-01-06 15:59:23 2316
转载 Flushing out pdflush
转自:http://lwn.net/Articles/326552/ The kernel page cache contains in-memory copies of data blocks belonging to files kept in persistent storage. Pages which are written to by a processor, but not
2015-01-06 14:42:59 2606
转载 CPU性能衡量参数-主频,MIPS,CPI,时钟周期,机器周期,指令周期
转自:http://blog.csdn.net/xiaojianpitt/article/details/7613489 CPU性能衡量参数-主频,MIPS,CPI,时钟周期,机器周期,指令周期1,主频主频 = 时钟频率,它是指CPU内部晶振的频率,常用单位为MHz,它反映了CPU的基本工作节拍;时钟频率又称主频,它是指CPU内部晶振的频率,常用单位为MHz,它反映了CPU的
2014-12-11 17:43:39 17276
转载 避免’sudo echo x >’ 时’Permission denied’
转自:http://blog.csdn.net/hejinjing_tom_com/article/details/7767127 避免’sudo echo x >’ 时’Permission denied’甲: 示例sudo echo a > 1.txt-bash: 1.txt: Permission denied乙: 分析:bash 拒绝这么做,说是权限不够.
2014-11-18 17:52:39 3123
原创 关于signal, kill, mutex, spinlock的一些总结
用户进程,在用户态可以被直接 kill 。用户进程陷入内核,在内核态进入死循环:1. 循环体中有 msleep_interruptible ,进程状态为S,即可中断的睡眠状态,kill 命令不能杀死进程。2. 循环体中有 msleep ,进程状态为D,即不可中断的睡眠状态,kill 命令不能杀死进程。3. 循环体中无 sleep ,进程状态为R,即可执行状态,kill 命令不能杀死
2014-11-11 14:31:24 5246
转载 SCHED_OTHER,SCHED_FIFO,SCHED_RR
转自:http://blog.chinaunix.net/uid-7187477-id-5593.html
2014-11-04 17:56:25 2727
原创 Linux ioremap 的实现
Linux ioremap 的实现linux, memory, ioremap在 linux kernel 的代码中,经常看到 ioremap 函数。其功能是将给定的物理地址映射为虚拟地址。注意,此处的物理地址并不是真正内存的物理地址,而是cpu上的io memory。可以参考芯片《Reference Manual》中断 memory map 章节。本文主要学习 iorem
2014-11-03 19:07:07 10488
转载 Linux内核4级页表的演进
转自:http://larmbr.me/2014/01/19/the-evolution-of-4-level-page-talbe-in-linux/
2014-11-03 18:06:52 3996
原创 Linux GPIO 的注册与申请
Linux GPIO 的注册与申请Linux Kernel, GPIO, ARM在Linux kernel代码中,经常会使用 GPIO 来作为一个特殊的信号,如作为芯片的片选信号等。GPIO 申请的函数,我们经常用到,如 gpio_request ,那么 GPIO 是何时,以及如何注册的,本文就来探索一下。基于的平台上 freesccale 的 i.MX6先从函数 gpio_r
2014-10-30 17:11:21 19203 3
原创 移植alsa-lib遇到的问题
移植alsa-lib遇到的问题linux audio alsa lib VERSIONED_SYMBOLS这两天移植alsa lib时遇到了一个问题,被困住了好久。做个记录,以后再被同样问题困住。问题背景是这样的,有个项目,客户要求使用新的alsa-lib库。到alsa官网上看了下,最新的是1.0.28。既然可以要用新的,咱们就彻底满足客户,用个最新的。接下
2014-10-28 19:15:26 5743 1
转载 .mod.c 是什么文件
转自:http://www.cnblogs.com/felixjia/archive/2011/09/15/2178126.html
2014-10-21 17:39:35 4745
转载 THIS_MODULE ?
转自:http://blog.csdn.net/lizhiguo0532/article/details/6346958
2014-10-21 17:04:08 2388
转载 Linux Module And Device Driver
转自:http://hi.baidu.com/yopklnqbrsampsr/item/0de01ac7ea05960fac092fcb
2014-10-21 16:58:16 3483
转载 Linux驱动中,probe函数何时被调用
转自:http://www.cnblogs.com/hoys/archive/2011/04/01/2002299.html
2014-10-21 14:04:40 2504
转载 各种initcall的执行先后顺序(module_init、postcore_initcall、arch_initcall、subsys_initcall、 fs_initcall)
转自:http://blog.csdn.net/fenzhikeji/article/details/6860143
2014-10-20 10:46:49 1364
转载 神秘的subsys_initcall
转自:http://blog.chinaunix.net/uid-12567959-id-161015.html
2014-10-11 16:27:24 1441
转载 Linux驱动修炼之道-SPI驱动框架源码分析(下)
转自:http://blog.csdn.net/lanmanck/article/details/6895324
2014-10-09 15:45:59 1073
转载 Linux驱动修炼之道-SPI驱动框架源码分析(中)
转自:http://blog.csdn.net/lanmanck/article/details/6895322
2014-10-09 15:43:47 975
转载 Linux驱动修炼之道-SPI驱动框架源码分析(上)
转自:http://blog.csdn.net/lanmanck/article/details/6895318
2014-10-09 15:42:04 877
转载 Linux信号机制分析
转自:http://blog.csdn.net/zhongguoren666/article/details/7012744
2014-09-24 15:26:37 758
原创 repo init - gpg: 无法检查签名:找不到公钥
今天在取android代码时,发现repo init提示以下错误:在网上搜索了一下,在下面这个帖子到帮助下,解决了问题:http://bbs.csdn.net/topics/390705429该帖子中提到的解决方法有:方法一:出现此问题是repo版本不对的问题,具体原因可网上搜索下,据说是google 代码传错导致。我更换过repo后,问题已经解决。curl h
2014-08-05 16:12:43 8246
原创 linux 终端计时方法
经常需要在linux终端中测试性能,例如flash的读写性能。这就需要对一个操作进行计时。以前一直用date命令,然后人工做减法操作来得到结果。简单测测还行,如果长时间测试,这个人工费就上去了。为了降低人工成本,今天查了些资料。 目的是得到一个操作花了多长时间,单位为秒。首先查date命令,看如果得到当前的秒值。参考了:http://www.2cto.com/os/
2014-07-31 15:38:29 3443
转载 scanf中的%[^]%*c格式
转自:http://blog.csdn.net/qingkong8832/article/details/6667701
2014-07-24 11:41:42 1495
转载 关于 C99, VLA, alloca的笔记
转自:http://blog.163.com/163_zhujingwei/blog/static/973305972011519114611170/
2014-07-23 19:38:17 1861 1
转载 linux中 likely与unlikely
转自:http://blog.csdn.net/tommy_wxie/article/details/7384641
2014-05-16 13:46:17 642
转载 printf()格式化输出详解
转自:http://hi.baidu.com/ejxzntbomebbcxq/item/21c521d1cc77dd3ae3108f83
2014-05-09 11:33:19 1243
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人